diff --git a/Italiano/1_introduction/1-DataScience.ipynb b/Italiano/1_introduction/1-DataScience.ipynb index 4bdf2fd..d5349c2 100644 --- a/Italiano/1_introduction/1-DataScience.ipynb +++ b/Italiano/1_introduction/1-DataScience.ipynb @@ -641,7 +641,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python [default]", "language": "python", "name": "python3" }, @@ -655,7 +655,20 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.6.9" + "version": "3.5.6" + }, + "toc": { + "base_numbering": 1, + "nav_menu": {}, + "number_sections": true, + "sideBar": true, + "skip_h1_title": false, + "title_cell": "Table of Contents", + "title_sidebar": "Contents", + "toc_cell": false, + "toc_position": {}, + "toc_section_display": true, + "toc_window_display": false }, "varInspector": { "cols": { diff --git a/Italiano/1_introduction/4-OOP Programming.ipynb b/Italiano/1_introduction/4-OOP Programming.ipynb index 884758a..fc4610a 100644 --- a/Italiano/1_introduction/4-OOP Programming.ipynb +++ b/Italiano/1_introduction/4-OOP Programming.ipynb @@ -440,7 +440,7 @@ "Un concetto simile all'incapsulamento è anche chiamato: occultamento dell'informazione, o meglio: Information Hiding. \n", "L’information hiding, come l’incapsulamento fornisce lo stesso vantaggio: la flessibilità.\n", "\n", - "### Astrazione\n", + "### Ereditarietà\n", "L’ereditarietà costituisce il secondo principio fondamentale della programmazione ad oggetti. In generale, essa rappresenta un meccanismo che consente di creare nuovi oggetti che siano basati su altri già definiti. \n", "\n", "Si definisce oggetto figlio (child object) quello che eredita tutte o parte delle proprietà e dei metodi definiti nell’oggetto padre (parent object). \n", @@ -510,13 +510,14 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "['__class__',\n", + "['_Incapsulamento__x',\n", + " '__class__',\n", " '__delattr__',\n", " '__dict__',\n", " '__dir__',\n", @@ -541,23 +542,22 @@ " '__sizeof__',\n", " '__str__',\n", " '__subclasshook__',\n", - " '__weakref__',\n", - " '_incapsulamento__x']" + " '__weakref__']" ] }, - "execution_count": 12, + "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "class incapsulamento():\n", + "class Incapsulamento():\n", " \n", " def __init__(self):\n", " self.__x = 0\n", "\n", - "myclass = incapsulamento()\n", - "dir(myclass)\n" + "myclass = Incapsulamento()\n", + "dir(myclass)" ] }, { @@ -569,10 +569,8 @@ }, { "cell_type": "code", - "execution_count": 13, - "metadata": { - "collapsed": true - }, + "execution_count": 6, + "metadata": {}, "outputs": [], "source": [ "from math import pi\n", @@ -585,10 +583,12 @@ " self.blue = blue\n", " \n", "class FiguraGeometrica():\n", + " \n", " def __init__(self, x, y, colore):\n", " self.x = x\n", " self.y = y\n", " self.colore = colore\n", + " \n", " def disegna(self):\n", " raise \"Metodo Astratto!\"\n", " \n", @@ -609,11 +609,11 @@ " pass # Esegue il disegno della figura\n", " \n", " def getArea(self):\n", - " return int(pi * self.raggio)\n", + " return int(pi * self.raggio ** 2)\n", " \n", "class Rettangolo(FiguraGeometrica):\n", " def __init__(self, x, y, base, altezza, colore):\n", - " Shape.__init__(self, x, y, colore)\n", + " FiguraGeometrica.__init__(self, x, y, colore)\n", " self.base = base\n", " self.altezza = altezza\n", " \n", @@ -626,15 +626,15 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "<__main__.Cerchio object at 0x0000026FA21D67B8>\n", - "Area Cerchio: 94\n" + "<__main__.Cerchio object at 0x000002181F600F28>\n", + "Area Cerchio: 2827\n" ] } ], @@ -654,10 +654,8 @@ }, { "cell_type": "code", - "execution_count": 15, - "metadata": { - "collapsed": true - }, + "execution_count": 8, + "metadata": {}, "outputs": [], "source": [ "class Impiegato:\n", @@ -676,6 +674,7 @@ " def visualizza(self):\n", " Impiegato.visualizza(self)\n", " print(f'Salario:{self.salario}')\n", + " \n", "class Stagista(Impiegato):\n", " '''Classe che rappresenta uno Stagista della azienda.'''\n", " def __init__(self, nome, anni, tesi):\n", @@ -718,12 +717,24 @@ "#### Esempio di Polimorfismo" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Il polimorfismo permette al programma di fare uso di oggetti che espongono una stessa interfaccia, ma implementazioni diverse. \n", + "Infatti, l'interfaccia del tipo base definisce un contratto generale che sottoclassi diverse possono soddisfare in modi diversi - ma tutti conformi alla specifica comune stabilita dal tipo base. \n", + "\n", + "Di conseguenza, la parte del programma che fruisce di questa interfaccia - chiamata in gergo client - tratta in modo omogeneo tutti gli oggetti che forniscono un dato insieme di servizi, a prescindere dalle loro implementazioni interne (presumibilmente diverse tra loro) definite dalle rispettive classi. In virtù di questa possibilità, si può utilizzare lo stesso codice personalizzandone o modificandone anche radicalmente il comportamento, senza doverlo riscrivere, ma semplicemente fornendogli in input una differente implementazione del tipo base o dei tipi base.\n", + "Se usato bene, il polimorfismo permette di avere una struttura ad oggetti\n", + "\n", + "- estensibile, in quanto si può indurre il client ad invocare nuovi metodi personalizzati includendoli in una classe apposita;\n", + "- resistente, perché eventuali esigenze future nel programma o nella scrittura del codice potranno essere implementate fornendo ad un client già scritto una nuova classe scritta ad hoc." + ] + }, { "cell_type": "code", - "execution_count": 17, - "metadata": { - "collapsed": true - }, + "execution_count": 9, + "metadata": {}, "outputs": [], "source": [ "class Animale:\n", @@ -741,7 +752,7 @@ }, { "cell_type": "code", - "execution_count": 18, + "execution_count": 10, "metadata": {}, "outputs": [ { @@ -813,7 +824,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python [default]", + "display_name": "Python 3", "language": "python", "name": "python3" }, @@ -827,7 +838,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.5.6" + "version": "3.7.1" }, "latex_envs": { "LaTeX_envs_menu_present": true, diff --git a/Italiano/1_introduction/5-Itertools.ipynb b/Italiano/1_introduction/5-Itertools.ipynb index 95fe457..a7f7dac 100644 --- a/Italiano/1_introduction/5-Itertools.ipynb +++ b/Italiano/1_introduction/5-Itertools.ipynb @@ -11,27 +11,6115 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Gli itertools sono fondamentali\n", + "Prima di approfondire il modulo `itertools`, che implementa una serie di funzioni / \"building blocks\" per gestire in modo succinto ed efficace gli iteratori, ovvero tipi di dati che possono essere usati in un ciclo for, conviene approfondire ancora meglio il concetto di **iterator**.\n", "\n", + "L'iterator più comune (ma ce ne sono molti altri) in Python è la lista `list`, sulla quale è possibile appunto iterare." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "red\n", + "orange\n", + "yellow\n", + "green\n" + ] + } + ], + "source": [ + "colors = ['red', 'orange', 'yellow', 'green']\n", + "for each in colors:\n", + " print(each)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Iteratori\n", + "\n", + "E' possibile creare i propri oggetti `iterable`, da usarsi nei *loops* e per le *list comprehensions*.\n", + "\n", + "Basta implementare i metodi *magici* necessari:\n", + "\n", + "- `__iter__` che ritorna l'oggetto iterable, di solito self \n", + "- `__next__` che definisce i valori dell'iteratore\n", + "\n", + "Per esempio, vogliamo un iteratore che ritorni i numeri in ordine ad eccezione dei multipli dei numeri passati al costrutture.\n", + "\n", + "Per essere sicuri di farlo terminare comunque, rilanceremo l'eccezione `StopIteration` dopo aver raggiunto i 200.\n", + "\n", + "*Questo è un ottimo esempio di un'eccezione piuttosto comune in Python: gestire un evento che non sia inaspettato ma che richieda una fine; for loops e list comprehensions attendono `StopIteration` exception come segnale di stop.*" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "class NonFattoreIterable(object):\n", + " def __init__(self, *args):\n", + " # List of number for whic avoid multiples\n", + " self.evita_multipli_di = args \n", + " self.x = 0\n", + " \n", + " def __next__(self):\n", + " self.x += 1 \n", + " while True: \n", + " if self.x > 200: \n", + " raise StopIteration \n", + " for y in self.evita_multipli_di: \n", + " if self.x % y == 0: \n", + " self.x += 1 \n", + " break \n", + " else: \n", + " return self.x \n", + " \n", + " def __iter__(self): \n", + " return self" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "es = NonFattoreIterable(3, 5)" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[1,\n", + " 2,\n", + " 4,\n", + " 7,\n", + " 8,\n", + " 11,\n", + " 13,\n", + " 14,\n", + " 16,\n", + " 17,\n", + " 19,\n", + " 22,\n", + " 23,\n", + " 26,\n", + " 28,\n", + " 29,\n", + " 31,\n", + " 32,\n", + " 34,\n", + " 37,\n", + " 38,\n", + " 41,\n", + " 43,\n", + " 44,\n", + " 46,\n", + " 47,\n", + " 49,\n", + " 52,\n", + " 53,\n", + " 56,\n", + " 58,\n", + " 59,\n", + " 61,\n", + " 62,\n", + " 64,\n", + " 67,\n", + " 68,\n", + " 71,\n", + " 73,\n", + " 74,\n", + " 76,\n", + " 77,\n", + " 79,\n", + " 82,\n", + " 83,\n", + " 86,\n", + " 88,\n", + " 89,\n", + " 91,\n", + " 92,\n", + " 94,\n", + " 97,\n", + " 98,\n", + " 101,\n", + " 103,\n", + " 104,\n", + " 106,\n", + " 107,\n", + " 109,\n", + " 112,\n", + " 113,\n", + " 116,\n", + " 118,\n", + " 119,\n", + " 121,\n", + " 122,\n", + " 124,\n", + " 127,\n", + " 128,\n", + " 131,\n", + " 133,\n", + " 134,\n", + " 136,\n", + " 137,\n", + " 139,\n", + " 142,\n", + " 143,\n", + " 146,\n", + " 148,\n", + " 149,\n", + " 151,\n", + " 152,\n", + " 154,\n", + " 157,\n", + " 158,\n", + " 161,\n", + " 163,\n", + " 164,\n", + " 166,\n", + " 167,\n", + " 169,\n", + " 172,\n", + " 173,\n", + " 176,\n", + " 178,\n", + " 179,\n", + " 181,\n", + " 182,\n", + " 184,\n", + " 187,\n", + " 188,\n", + " 191,\n", + " 193,\n", + " 194,\n", + " 196,\n", + " 197,\n", + " 199]" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "[x for x in es]" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "quasi_primi = NonFattoreIterable(2, 3, 5, 7, 11, 13, 17, 19) " + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[1,\n", + " 23,\n", + " 29,\n", + " 31,\n", + " 37,\n", + " 41,\n", + " 43,\n", + " 47,\n", + " 53,\n", + " 59,\n", + " 61,\n", + " 67,\n", + " 71,\n", + " 73,\n", + " 79,\n", + " 83,\n", + " 89,\n", + " 97,\n", + " 101,\n", + " 103,\n", + " 107,\n", + " 109,\n", + " 113,\n", + " 127,\n", + " 131,\n", + " 137,\n", + " 139,\n", + " 149,\n", + " 151,\n", + " 157,\n", + " 163,\n", + " 167,\n", + " 173,\n", + " 179,\n", + " 181,\n", + " 191,\n", + " 193,\n", + " 197,\n", + " 199]" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "[x for x in quasi_primi]" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "somma_parziale = 0\n", + "for x in quasi_primi: \n", + " print(x)\n", + " somma_parziale += x\n", + "somma_parziale # E' zero perchè l'iterabile è già stato \"consumato\" (da verificare!)" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "4151\n" + ] + } + ], + "source": [ + "quasi_primi = NonFattoreIterable(2, 3, 5, 7, 11, 13, 17, 19) \n", + "print(sum(quasi_primi))" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "199\n" + ] + } + ], + "source": [ + "quasi_primi = NonFattoreIterable(2, 3, 5, 7, 11, 13, 17, 19)\n", + "print(max(quasi_primi))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Sembra inutile la presenza del metodo `__iter__`, ma ci sono casi in cui l'iterator di un oggetto non è lo stesso oggetto (occuparsi di questi casi ci farebbe però andare fuori tema).\n", + "\n", + "### getItem\n", + "\n", + "C'è un altro metodo che si può implementare un iterator personalizzato: il metodo `__getitem__`.\n", + "Questo permette la notazione parentesi quadra [] per ottenere il dato fuori dall'oggetto.\n", + "\n", + "Comunque dobbiamo ricordarci di rilanciare `StopIteration` per farlo funzionare bene nei for e nelle list comprehensions." + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "class Quadrati(object): \n", + " def __init__(self, limite=200): \n", + " self.limite = limite \n", + " self.x = 0 \n", + "\n", + " def __next__(self): \n", + " self.x += 1 \n", + " if self.x > self.limite: \n", + " raise StopIteration \n", + " return (self.x-1)**2 \n", + "\n", + " def __getitem__(self, idx): \n", + " # initialize counter to 0 \n", + " self.x = 0 \n", + " if not isinstance(idx, int): \n", + " raise Exception(\"Solo indici integer sono accettati!\") \n", + " while self.x < idx: \n", + " self.__next__() \n", + " return self.x**2\n", + " \n", + " def __iter__(self): \n", + " return self" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[0,\n", + " 1,\n", + " 4,\n", + " 9,\n", + " 16,\n", + " 25,\n", + " 36,\n", + " 49,\n", + " 64,\n", + " 81,\n", + " 100,\n", + " 121,\n", + " 144,\n", + " 169,\n", + " 196,\n", + " 225,\n", + " 256,\n", + " 289,\n", + " 324,\n", + " 361]" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "miei_quadrati = Quadrati(limite=20) \n", + "[x for x in miei_quadrati]" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "25" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "miei_quadrati[5]" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "ename": "StopIteration", + "evalue": "", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mStopIteration\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[1;32m----> 1\u001b[1;33m \u001b[0mmiei_quadrati\u001b[0m\u001b[1;33m[\u001b[0m\u001b[1;36m25\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[1;32m\u001b[0m in \u001b[0;36m__getitem__\u001b[1;34m(self, idx)\u001b[0m\n\u001b[0;32m 16\u001b[0m \u001b[1;32mraise\u001b[0m \u001b[0mException\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"Solo indici integer sono accettati!\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 17\u001b[0m \u001b[1;32mwhile\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mx\u001b[0m \u001b[1;33m<\u001b[0m \u001b[0midx\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 18\u001b[1;33m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m__next__\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 19\u001b[0m \u001b[1;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m**\u001b[0m\u001b[1;36m2\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 20\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n", + "\u001b[1;32m\u001b[0m in \u001b[0;36m__next__\u001b[1;34m(self)\u001b[0m\n\u001b[0;32m 7\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mx\u001b[0m \u001b[1;33m+=\u001b[0m \u001b[1;36m1\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 8\u001b[0m \u001b[1;32mif\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mx\u001b[0m \u001b[1;33m>\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mlimite\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 9\u001b[1;33m \u001b[1;32mraise\u001b[0m \u001b[0mStopIteration\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 10\u001b[0m \u001b[1;32mreturn\u001b[0m \u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m-\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m**\u001b[0m\u001b[1;36m2\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 11\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n", + "\u001b[1;31mStopIteration\u001b[0m: " + ] + } + ], + "source": [ + "miei_quadrati[25]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "Nell'esempio precedente abbiamo creato un iterator che ritorna quadrati di numeri. \n", + "\n", + "Nel metodo `__next__` si itera il nostro contatore ( `self.x` ) ritornando il suo quadrato finchè il contatore non supera il limte predefinito ( `self.limit`). \n", + "\n", + "Il while dell'esempio precedente (NonFattoreIterable) era specifico per quel caso d'uso.\n", + "\n", + "Nel metodo `__next__` non è solitamente necessario implementare loop perchè normalmente viene richiamato all'interno di un loop sull'iterator.\n", + "\n", + "Nell'esempio che segue implementiamo il metodo `__getitem__`, che ci permette di reperire un valore dell'iteratore ad una certa posizione di indice. \n", + "\n", + "Questo semplicemente chiama l'iteratore usando `self.__next__` finchè non arriva all'indice desiderato e restituisce il valore." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Vantaggi degli iterator personalizzati\n", + "\n", + "Perchè usare *iterator* personalizzati?\n", + "\n", + "- Codice pulito\n", + "- Possibilità di lavorare con sequenze infinite\n", + "- Possibilità di usare funzioni built-in (come sum) che lavorano con iterable\n", + "- Possibilità di salvare memoria (es. range )" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Built-ins \"itertools\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Uno dei tools sugli iterabili, fornito di base (built-in) è \n", + "\n", + "### zip()\n", + "\n", + "che prende un numero qualsiasi di iterabili e ritorna un'iteratore di tuple con gli elementi corrispondenti:" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[(1, 'a'), (2, 'b'), (3, 'c')]" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "list(zip([1, 2, 3], ['a', 'b', 'c']))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Un'altro operatore built-in sugli iteratori è\n", + "\n", + "### map() \n", + "\n", + "che, nella sua forma più semplice, applica una funzione per ciascun elemento di un iterabile." + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[3, 2, 4]" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "list(map(len, ['abc', 'de', 'fghi']))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Il modulo itertools\n", + "\n", + "Una collezione di *funzioni*" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "import itertools\n", + "import operator #Utile per alcuni degli esempi" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### accumulate()\n", + "\n", + "`itertools.accumulate(iterable[, func])`\n", + "\n", + "Questa funziona crea un iteratore che ritorna il risultato di una funzione (passata come argomento) applicata su un iterabile e restituisce il risultato \"accumulato\".\n", + "\n", + "I risultati sono contenuti essi stessi in un iterable.\n", + "\n", + "Gli esempi possono aiutare la comprensione:" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1\n", + "2\n", + "6\n", + "24\n", + "120\n" + ] + } + ], + "source": [ + "data = [1, 2, 3, 4, 5]\n", + "result = itertools.accumulate(data, operator.mul)\n", + "for each in result:\n", + " print(each)" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "2" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "operator.mul(1, 2) # Prende due numeri e li moltiplica" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "5\n", + "5\n", + "6\n", + "6\n", + "6\n", + "9\n", + "9\n" + ] + } + ], + "source": [ + "data = [5, 2, 6, 4, 5, 9, 1]\n", + "result = itertools.accumulate(data, max)\n", + "for each in result:\n", + " print(each)" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "5" + ] + }, + "execution_count": 20, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "max(5, 2) # Restituisce il massimo tra i due" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Il passaggio di una funzione è opzionale, per default viene usata la somma." + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "5\n", + "7\n", + "13\n", + "17\n", + "22\n", + "31\n", + "32\n" + ] + } + ], + "source": [ + "data = [5, 2, 6, 4, 5, 9, 1]\n", + "result = itertools.accumulate(data)\n", + "for each in result:\n", + " print(each)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### combinations()\n", + "\n", + "`itertools.combinations(iterable, r)`\n", + "\n", + "Dato un iterable e un intero, crea tutte le combinazioni con r membri." + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "('circle', 'triangle')\n", + "('circle', 'square')\n", + "('triangle', 'square')\n" + ] + } + ], + "source": [ + "shapes = ['circle', 'triangle', 'square',]\n", + "result = itertools.combinations(shapes, 2)\n", + "for each in result:\n", + " print(each)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### combinations_with_replacement()\n", + "\n", + "`itertools.combinations_with_replacement(iterable, r)`\n", + "\n", + "Come **combinations()**, ma ammette ripetizioni.\n" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "('circle', 'circle')\n", + "('circle', 'triangle')\n", + "('circle', 'square')\n", + "('triangle', 'triangle')\n", + "('triangle', 'square')\n", + "('square', 'square')\n" + ] + } + ], + "source": [ + "shapes = ['circle', 'triangle', 'square',]\n", + "result = itertools.combinations_with_replacement(shapes, 2)\n", + "for each in result:\n", + " print(each)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### count()\n", + "\n", + "`itertools.count(start=0, step=1)`\n", + "\n", + "Crea iterator che ritorna valori partendo dal valore start, applicando lo step desiderato." + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "10\n", + "13\n", + "16\n", + "19\n", + "22\n" + ] + } + ], + "source": [ + "for i in itertools.count(10,3):\n", + " print(i)\n", + " if i > 20:\n", + " break" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### cycle()\n", "\n", - "https://medium.com/@jasonrigden/a-guide-to-python-itertools-82e5a306cdf8\n", + "`itertools.cycle(iterable)`\n", "\n", - "https://realpython.com/python-itertools/" + "Cicla sull'iteratore all'infinito." + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "violet\n", + "red\n", + "orange\n", + "yellow\n" + ] + }, + { + "ename": "KeyboardInterrupt", + "evalue": "", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mKeyboardInterrupt\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[0mcolors\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;33m[\u001b[0m\u001b[1;34m'red'\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;34m'orange'\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;34m'yellow'\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;34m'green'\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;34m'blue'\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;34m'violet'\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2\u001b[0m \u001b[1;32mfor\u001b[0m \u001b[0mcolor\u001b[0m \u001b[1;32min\u001b[0m \u001b[0mitertools\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mcycle\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mcolors\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 3\u001b[1;33m \u001b[0mprint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mcolor\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[1;32mC:\\Anaconda3\\envs\\django\\lib\\site-packages\\ipykernel\\iostream.py\u001b[0m in \u001b[0;36mwrite\u001b[1;34m(self, string)\u001b[0m\n\u001b[0;32m 350\u001b[0m \u001b[0mis_child\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;33m(\u001b[0m\u001b[1;32mnot\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_is_master_process\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 351\u001b[0m \u001b[1;31m# only touch the buffer in the IO thread to avoid races\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 352\u001b[1;33m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mpub_thread\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mschedule\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;32mlambda\u001b[0m \u001b[1;33m:\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_buffer\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mwrite\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mstring\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 353\u001b[0m \u001b[1;32mif\u001b[0m \u001b[0mis_child\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 354\u001b[0m \u001b[1;31m# newlines imply flush in subprocesses\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", + "\u001b[1;32mC:\\Anaconda3\\envs\\django\\lib\\site-packages\\ipykernel\\iostream.py\u001b[0m in \u001b[0;36mschedule\u001b[1;34m(self, f)\u001b[0m\n\u001b[0;32m 188\u001b[0m \u001b[0mevent_id\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mos\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0murandom\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;36m16\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 189\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_events\u001b[0m\u001b[1;33m[\u001b[0m\u001b[0mevent_id\u001b[0m\u001b[1;33m]\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mf\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 190\u001b[1;33m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_event_pipe\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0msend\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mevent_id\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 191\u001b[0m \u001b[1;32melse\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 192\u001b[0m \u001b[0mf\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", + "\u001b[1;32mzmq/backend/cython/socket.pyx\u001b[0m in \u001b[0;36mzmq.backend.cython.socket.Socket.send (zmq\\backend\\cython\\socket.c:7305)\u001b[1;34m()\u001b[0m\n", + "\u001b[1;32mzmq/backend/cython/socket.pyx\u001b[0m in \u001b[0;36mzmq.backend.cython.socket.Socket.send (zmq\\backend\\cython\\socket.c:7048)\u001b[1;34m()\u001b[0m\n", + "\u001b[1;32mzmq/backend/cython/socket.pyx\u001b[0m in \u001b[0;36mzmq.backend.cython.socket._send_copy (zmq\\backend\\cython\\socket.c:2920)\u001b[1;34m()\u001b[0m\n", + "\u001b[1;32mC:\\Anaconda3\\envs\\django\\lib\\site-packages\\zmq\\backend\\cython\\checkrc.pxd\u001b[0m in \u001b[0;36mzmq.backend.cython.checkrc._check_rc (zmq\\backend\\cython\\socket.c:9621)\u001b[1;34m()\u001b[0m\n", + "\u001b[1;31mKeyboardInterrupt\u001b[0m: " + ] + } + ], + "source": [ + "colors = ['red', 'orange', 'yellow', 'green', 'blue', 'violet']\n", + "for color in itertools.cycle(colors):\n", + " print(color)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### chain()\n", + "\n", + "`itertools.chain(*iterables)`\n", + "\n", + "Prende una serie di iterable e ritorna come unico." + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "circle\n", + "triangle\n", + "square\n", + "pentagon\n" + ] + } + ], + "source": [ + "colors = ['red', 'orange', 'yellow', 'green', 'blue']\n", + "shapes = ['circle', 'triangle', 'square', 'pentagon']\n", + "result = itertools.chain(colors, shapes)\n", + "for each in result:\n", + " print(each)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### compress()\n", + "\n", + "`itertools.compress(data, selectors)`\n", + "\n", + "Filtra un iterable con un altro" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "circle\n", + "square\n" + ] + } + ], + "source": [ + "shapes = ['circle', 'triangle', 'square', 'pentagon']\n", + "selections = [True, False, True, False]\n", + "result = itertools.compress(shapes, selections)\n", + "for each in result:\n", + " print(each)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### dropwhile()\n", + "\n", + "`itertools.dropwhile(predicate, iterable)`\n", + "\n", + "Crea un iterator che elimina elementi da iterable finchè il predicato è True, dopodichè ritorna tutto il restante" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "5\n", + "6\n", + "7\n", + "8\n", + "9\n", + "10\n", + "1\n" + ] + } + ], + "source": [ + "data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 1]\n", + "result = itertools.dropwhile(lambda x: x<5, data)\n", + "for each in result:\n", + " print(each)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### filterfalse()\n", + "\n", + "`itertools.filterfalse(predicate, iterable)`\n", + "\n", + "Crea un iterator che filtra elementi da iterable restituendo solo quelli per i quali il predicato è False." + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "5\n", + "6\n", + "7\n", + "8\n", + "9\n", + "10\n" + ] + } + ], + "source": [ + "data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]\n", + "result = itertools.filterfalse(lambda x: x<5, data)\n", + "for each in result:\n", + " print(each)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### groupby()\n", + "\n", + "`itertools.groupby(iterable, key=None)`\n", + "\n", + "Semplicemente raggruppa, ma non è così semplice da spiegare..." + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "autobot\n", + "[{'name': 'blaster', 'faction': 'autobot'}]\n", + "decepticon\n", + "[{'name': 'galvatron', 'faction': 'decepticon'}]\n", + "autobot\n", + "[{'name': 'jazz', 'faction': 'autobot'}, {'name': 'metroplex', 'faction': 'autobot'}]\n", + "decepticon\n", + "[{'name': 'megatron', 'faction': 'decepticon'}, {'name': 'starcream', 'faction': 'decepticon'}]\n" + ] + } + ], + "source": [ + "robots = [{\n", + " 'name': 'blaster',\n", + " 'faction': 'autobot'\n", + "}, {\n", + " 'name': 'galvatron',\n", + " 'faction': 'decepticon'\n", + "}, {\n", + " 'name': 'jazz',\n", + " 'faction': 'autobot'\n", + "}, {\n", + " 'name': 'metroplex',\n", + " 'faction': 'autobot'\n", + "}, {\n", + " 'name': 'megatron',\n", + " 'faction': 'decepticon'\n", + "}, {\n", + " 'name': 'starcream',\n", + " 'faction': 'decepticon'\n", + "}]\n", + "for key, group in itertools.groupby(robots, key=lambda x: x['faction']):\n", + " print(key)\n", + " print(list(group))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### islice()\n", + "\n", + "`itertools.islice(iterable, start, stop[, step])`\n", + "\n", + "Molto simile a **slices**, permette di tagliare una fetta di un iterable." + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "red\n", + "orange\n" + ] + } + ], + "source": [ + "colors = ['red', 'orange', 'yellow', 'green', 'blue',]\n", + "few_colors = itertools.islice(colors, 2)\n", + "for each in few_colors:\n", + " print(each)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### permutations()\n", + "\n", + "`itertools.permutations(iterable, r=None)`\n", + "\n", + "Restituisce un iterabile con tutte le tuple combinazione" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "('a', 'b', 'c')\n", + "('a', 'c', 'b')\n", + "('b', 'a', 'c')\n", + "('b', 'c', 'a')\n", + "('c', 'a', 'b')\n", + "('c', 'b', 'a')\n" + ] + } + ], + "source": [ + "alpha_data = ['a', 'b', 'c']\n", + "result = itertools.permutations(alpha_data)\n", + "for each in result:\n", + " print(each)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### product()\n", + "\n", + "`itertools.product(iterable1, iterable2, ...)`\n", + "\n", + "Crea un iterable di tuple prodotto cartesiano da una serie di iterabili" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "(1, 'a')\n", + "(1, 'b')\n", + "(1, 'c')\n", + "(2, 'a')\n", + "(2, 'b')\n", + "(2, 'c')\n", + "(3, 'a')\n", + "(3, 'b')\n", + "(3, 'c')\n" + ] + } + ], + "source": [ + "num_data = [1, 2, 3]\n", + "alpha_data = ['a', 'b', 'c']\n", + "result = itertools.product(num_data, alpha_data)\n", + "for each in result:\n", + " print(each)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### repeat()\n", + "\n", + "`itertools.repeat(object[, times])`\n", + "\n", + "Ripete un oggetto all'infinito a meno che venga specificato quante (times) volte" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "spam\n", + "spam\n", + "spam\n", + "spam\n", + "spam\n", + "spam\n", + "spam\n", + "spam\n", + "spam\n", + "spam\n" + ] + } + ], + "source": [ + "for i in itertools.repeat(\"spam\",10):\n", + " print(i)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### starmap()\n", + "\n", + "`itertools.starmap(function, iterable)`\n", + "\n", + "Crea un iterator che esegue la funzione usando gli argomenti ottenuti da iterable" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "12\n", + "32\n", + "21\n" + ] + } + ], + "source": [ + "data = [(2, 6), (8, 4), (7, 3)]\n", + "result = itertools.starmap(operator.mul, data)\n", + "for each in result:\n", + " print(each)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### takewhile()\n", + "\n", + "`itertools.takewhile(predicate, iterable)`\n", + "\n", + "Opposto di `dropwhile()`, crea un iterator e restutisce elementi da iterable finchè il predicato è True." + ] + }, + { + "cell_type": "code", + "execution_count": 36, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1\n", + "2\n", + "3\n", + "4\n" + ] + } + ], + "source": [ + "data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 1]\n", + "result = itertools.takewhile(lambda x: x<5, data)\n", + "for each in result:\n", + " print(each)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### tee()\n", + "\n", + "`itertools.tee(iterable, n=2)`\n", + "\n", + "Restituisce n iterators indipendenti da un singolo iterable; default è 2." + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n", + "..\n", + "red\n", + "orange\n", + "yellow\n", + "green\n", + "blue\n" + ] + } + ], + "source": [ + "colors = ['red', 'orange', 'yellow', 'green', 'blue']\n", + "alpha_colors, beta_colors = itertools.tee(colors)\n", + "for each in alpha_colors:\n", + " print(each)\n", + "print('..')\n", + "for each in beta_colors:\n", + " print(each)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### zip_longest()\n", + "\n", + "`itertools.zip_longest(*iterables, fillvalue=None)`\n", + "\n", + "Crea un iterator che aggrega elementi per ciascun iterable. \n", + "Se hanno lunghezza differente, i valori mancanti sono riempiti con fillvalue fino all'iterabile più lungo." + ] + }, + { + "cell_type": "code", + "execution_count": 38, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "('red', 1)\n", + "('orange', 2)\n", + "('yellow', 3)\n", + "('green', 4)\n", + "('blue', 5)\n", + "(None, 6)\n", + "(None, 7)\n", + "(None, 8)\n", + "(None, 9)\n", + "(None, 10)\n" + ] + } + ], + "source": [ + "colors = ['red', 'orange', 'yellow', 'green', 'blue',]\n", + "data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10,]\n", + "for each in itertools.zip_longest(colors, data, fillvalue=None):\n", + " print(each)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Esempi\n", + "\n", + "### Es. 1\n", + "\n", + "Avete tre biglietti da 20 EUR, cinque da 10 EUR, due da 5 EUR e cinque monete da 1 EUR.\n", + "\n", + "In quanti modi potete comporre 100 EUR ?" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "soldi = [20, 20, 20, 10, 10, 10, 10, 10, 5, 5, 1, 1, 1, 1, 1]\n", + "\n", + "# Usiamo le combinazioni\n", + "fai_100 = []\n", + "for n in range(1, len(soldi) + 1):\n", + " for comb in itertools.combinations(soldi, n):\n", + " if sum(comb) == 100:\n", + " fai_100.append(comb)" + ] + }, + { + "cell_type": "code", + "execution_count": 40, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[(20, 20, 20, 10, 10, 10, 10),\n", + " (20, 20, 20, 10, 10, 10, 10),\n", + " (20, 20, 20, 10, 10, 10, 10),\n", + " (20, 20, 20, 10, 10, 10, 10),\n", + " (20, 20, 20, 10, 10, 10, 10),\n", + " (20, 20, 20, 10, 10, 10, 5, 5),\n", + " (20, 20, 20, 10, 10, 10, 5, 5),\n", + " (20, 20, 20, 10, 10, 10, 5, 5),\n", + " (20, 20, 20, 10, 10, 10, 5, 5),\n", + " (20, 20, 20, 10, 10, 10, 5, 5),\n", + " (20, 20, 20, 10, 10, 10, 5, 5),\n", + " (20, 20, 20, 10, 10, 10, 5, 5),\n", + " (20, 20, 20, 10, 10, 10, 5, 5),\n", + " (20, 20, 20, 10, 10, 10, 5, 5),\n", + " (20, 20, 20, 10, 10, 10, 5, 5),\n", + " (20, 20, 10, 10, 10, 10, 10, 5, 5),\n", + " (20, 20, 10, 10, 10, 10, 10, 5, 5),\n", + " (20, 20, 10, 10, 10, 10, 10, 5, 5),\n", + " (20, 20, 20, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 20, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 20, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 20, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 20, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 20, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 20, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 20, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 20, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 20, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 20, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 20, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 20, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 20, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 20, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 20, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 20, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 20, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 20, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 20, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 10, 10, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 10, 10, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 10, 10, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 10, 10, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 10, 10, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 10, 10, 10, 10, 10, 5, 1, 1, 1, 1, 1)]" + ] + }, + "execution_count": 40, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "fai_100" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Meglio rimuovere i duplicati" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 41, "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{(20, 20, 10, 10, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 10, 10, 10, 10, 10, 5, 5),\n", + " (20, 20, 20, 10, 10, 10, 5, 1, 1, 1, 1, 1),\n", + " (20, 20, 20, 10, 10, 10, 5, 5),\n", + " (20, 20, 20, 10, 10, 10, 10)}" + ] + }, + "execution_count": 41, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "set(fai_100)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Es. 2 - Variazione di 1\n", + "\n", + "In quanti modi si possono comporre 100 EUR usando un numero qualsiasi di pezzi da 50, 20, 10, 5, e 1 EUR?" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "metadata": { + "collapsed": true + }, "outputs": [], - "source": [] + "source": [ + "# Ci metterà un po' di tempo! 96560645 combinazioni\n", + "pezzi = [50, 20, 10, 5, 1]\n", + "fa_100 = []\n", + "for n in range(1, 101):\n", + " for comb in itertools.combinations_with_replacement(pezzi, n):\n", + " if sum(comb) == 100:\n", + " fa_100.append(comb)" + ] + }, + { + "cell_type": "code", + "execution_count": 43, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "343" + ] + }, + "execution_count": 43, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(fa_100)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Bibliografia\n", + "\n", + "https://medium.com/@jasonrigden/a-guide-to-python-itertools-82e5a306cdf8\n", + "\n", + "https://realpython.com/python-itertools/" + ] } ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python [conda env:django]", "language": "python", - "name": "python3" + "name": "conda-env-django-py" }, "language_info": { "codemirror_mode": { @@ -43,7 +6131,20 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.6.9" + "version": "3.6.2" + }, + "toc": { + "base_numbering": 1, + "nav_menu": {}, + "number_sections": true, + "sideBar": true, + "skip_h1_title": false, + "title_cell": "Table of Contents", + "title_sidebar": "Contents", + "toc_cell": false, + "toc_position": {}, + "toc_section_display": true, + "toc_window_display": false } }, "nbformat": 4, diff --git a/Italiano/1_introduction/6-Errors and Exceptions.ipynb b/Italiano/1_introduction/6-Errors and Exceptions.ipynb index e22963b..1750511 100644 --- a/Italiano/1_introduction/6-Errors and Exceptions.ipynb +++ b/Italiano/1_introduction/6-Errors and Exceptions.ipynb @@ -69,7 +69,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": 2, "metadata": { "slideshow": { "slide_type": "fragment" @@ -78,10 +78,10 @@ "outputs": [ { "ename": "SyntaxError", - "evalue": "Missing parentheses in call to 'print' (, line 1)", + "evalue": "Missing parentheses in call to 'print'. Did you mean print(\"ciao mondo\")? (, line 1)", "output_type": "error", "traceback": [ - "\u001b[0;36m File \u001b[0;32m\"\"\u001b[0;36m, line \u001b[0;32m1\u001b[0m\n\u001b[0;31m print \"ciao mondo\"\u001b[0m\n\u001b[0m ^\u001b[0m\n\u001b[0;31mSyntaxError\u001b[0m\u001b[0;31m:\u001b[0m Missing parentheses in call to 'print'\n" + "\u001b[1;36m File \u001b[1;32m\"\"\u001b[1;36m, line \u001b[1;32m1\u001b[0m\n\u001b[1;33m print \"ciao mondo\"\u001b[0m\n\u001b[1;37m ^\u001b[0m\n\u001b[1;31mSyntaxError\u001b[0m\u001b[1;31m:\u001b[0m Missing parentheses in call to 'print'. Did you mean print(\"ciao mondo\")?\n" ] } ], @@ -91,28 +91,50 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 3, "metadata": { - "collapsed": true, "slideshow": { "slide_type": "fragment" } }, - "outputs": [], + "outputs": [ + { + "ename": "ZeroDivisionError", + "evalue": "division by zero", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mZeroDivisionError\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[1;32m----> 1\u001b[1;33m \u001b[0mx\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;36m5\u001b[0m \u001b[1;33m/\u001b[0m \u001b[1;36m0\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[1;31mZeroDivisionError\u001b[0m: division by zero" + ] + } + ], "source": [ "x = 5 / 0" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 4, "metadata": { - "collapsed": true, "slideshow": { "slide_type": "fragment" } }, - "outputs": [], + "outputs": [ + { + "ename": "IndexError", + "evalue": "list index out of range", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mIndexError\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[0mlst\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;33m[\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;36m2\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;36m3\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 2\u001b[1;33m \u001b[0mprint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mlst\u001b[0m\u001b[1;33m[\u001b[0m\u001b[1;36m3\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[1;31mIndexError\u001b[0m: list index out of range" + ] + } + ], "source": [ "lst = [1,2,3]\n", "print(lst[3])" @@ -120,42 +142,75 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 5, "metadata": { - "collapsed": true, "slideshow": { "slide_type": "fragment" } }, - "outputs": [], + "outputs": [ + { + "ename": "TypeError", + "evalue": "can only concatenate list (not \"int\") to list", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mTypeError\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[1;32m----> 1\u001b[1;33m \u001b[0mlst\u001b[0m \u001b[1;33m+\u001b[0m \u001b[1;36m2\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[1;31mTypeError\u001b[0m: can only concatenate list (not \"int\") to list" + ] + } + ], "source": [ "lst + 2" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 6, "metadata": { - "collapsed": true, "slideshow": { "slide_type": "fragment" } }, - "outputs": [], + "outputs": [ + { + "ename": "AttributeError", + "evalue": "'list' object has no attribute 'add'", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mAttributeError\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[1;32m----> 1\u001b[1;33m \u001b[0mlst\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0madd\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[1;31mAttributeError\u001b[0m: 'list' object has no attribute 'add'" + ] + } + ], "source": [ "lst.add" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 7, "metadata": { - "collapsed": true, "slideshow": { "slide_type": "fragment" } }, - "outputs": [], + "outputs": [ + { + "ename": "KeyError", + "evalue": "'b'", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mKeyError\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[0md\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;33m{\u001b[0m\u001b[1;34m'a'\u001b[0m\u001b[1;33m:\u001b[0m \u001b[1;34m'hello'\u001b[0m\u001b[1;33m}\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 2\u001b[1;33m \u001b[0md\u001b[0m\u001b[1;33m[\u001b[0m\u001b[1;34m'b'\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[1;31mKeyError\u001b[0m: 'b'" + ] + } + ], "source": [ "d = {'a': 'hello'}\n", "d['b']" @@ -163,14 +218,25 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 8, "metadata": { - "collapsed": true, "slideshow": { "slide_type": "subslide" } }, - "outputs": [], + "outputs": [ + { + "ename": "NameError", + "evalue": "name 'questa_non_e_una_variabile' is not defined", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mNameError\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[1;32m----> 1\u001b[1;33m \u001b[0mprint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mquesta_non_e_una_variabile\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[1;31mNameError\u001b[0m: name 'questa_non_e_una_variabile' is not defined" + ] + } + ], "source": [ "print(questa_non_e_una_variabile)\n" ] @@ -187,13 +253,13 @@ "source": [ "## Errori e eccezioni\n", "\n", - "Avrete notato che le precedenti eccezioni finiscono con Error.\n", + "Avrete notato che le precedenti eccezioni finiscono con `Error`.\n", "\n", - "Error e Exception sono quasi intercambiabili.\n", + "`Error` e `Exception` sono quasi intercambiabili.\n", "\n", - "Error è semanticamente un po’ più grave ma il loro comportamente è identico\n", + "`Error` è semanticamente un po’ più grave ma il loro comportamente è identico\n", "\n", - "Exception (che estende BaseException) è la loro classe padre (superclass)" + "`Exception` (che estende `BaseException`) è la loro classe padre (superclass)" ] }, { @@ -216,7 +282,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 9, "metadata": { "collapsed": true, "slideshow": { @@ -243,41 +309,65 @@ } }, "source": [ - "La classe estende list (oggetto predefinito in Python) e ridefinisce (override) append.\n", + "La classe estende `list` (oggetto predefinito in Python) e ridefinisce (override) `append`.\n", "\n", "Il nuovo metodo append verifica due condizioni:\n", "- che l'input sia un integer, altrimenti rilancia TypeError\n", "- che l'input sia pari, altrimenti rilancia ValueError\n", "\n", - "La parola chiave \"raise\" è semplicemente seguita dall'oggetto che viene rilanciato come exception. \n", + "La parola chiave `raise` è semplicemente seguita dall'oggetto che viene rilanciato come exception. \n", "\n", - "I due oggetti sono \"costruiti\" dalle classi built-in TypeError e ValueError ma potevano essere una eccezione creata \"ad-hoc\" (dopo vedremo come farlo)" + "I due oggetti sono \"costruiti\" dalle classi built-in `TypeError` e `ValueError` ma potevano essere una eccezione creata \"ad-hoc\" (dopo vedremo come farlo)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 10, "metadata": { - "collapsed": true, "slideshow": { "slide_type": "fragment" } }, - "outputs": [], + "outputs": [ + { + "ename": "ValueError", + "evalue": "Possono essere sommati solo numeri pari", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mValueError\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[1;32m----> 1\u001b[1;33m \u001b[0me\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mappend\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;36m3\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[1;32m\u001b[0m in \u001b[0;36mappend\u001b[1;34m(self, integer)\u001b[0m\n\u001b[0;32m 4\u001b[0m \u001b[1;32mraise\u001b[0m \u001b[0mTypeError\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"Possono essere sommati solo numeri interi\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[1;32mif\u001b[0m \u001b[0minteger\u001b[0m \u001b[1;33m%\u001b[0m \u001b[1;36m2\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 6\u001b[1;33m \u001b[1;32mraise\u001b[0m \u001b[0mValueError\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"Possono essere sommati solo numeri pari\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 7\u001b[0m \u001b[0msuper\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mappend\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0minteger\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 8\u001b[0m \u001b[0me\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mSoloNumeriPariInteri\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", + "\u001b[1;31mValueError\u001b[0m: Possono essere sommati solo numeri pari" + ] + } + ], "source": [ "e.append(3)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 11, "metadata": { - "collapsed": true, "slideshow": { "slide_type": "fragment" } }, - "outputs": [], + "outputs": [ + { + "ename": "TypeError", + "evalue": "Possono essere sommati solo numeri interi", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mTypeError\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[1;32m----> 1\u001b[1;33m \u001b[0me\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mappend\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;36m3.4\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[1;32m\u001b[0m in \u001b[0;36mappend\u001b[1;34m(self, integer)\u001b[0m\n\u001b[0;32m 2\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mappend\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0minteger\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 3\u001b[0m \u001b[1;32mif\u001b[0m \u001b[1;32mnot\u001b[0m \u001b[0misinstance\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0minteger\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mint\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 4\u001b[1;33m \u001b[1;32mraise\u001b[0m \u001b[0mTypeError\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"Possono essere sommati solo numeri interi\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 5\u001b[0m \u001b[1;32mif\u001b[0m \u001b[0minteger\u001b[0m \u001b[1;33m%\u001b[0m \u001b[1;36m2\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 6\u001b[0m \u001b[1;32mraise\u001b[0m \u001b[0mValueError\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"Possono essere sommati solo numeri pari\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", + "\u001b[1;31mTypeError\u001b[0m: Possono essere sommati solo numeri interi" + ] + } + ], "source": [ "e.append(3.4)" ] @@ -304,14 +394,21 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 12, "metadata": { - "collapsed": true, "slideshow": { "slide_type": "fragment" } }, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[1]\n" + ] + } + ], "source": [ "e.append(2)\n", "e[0] = 1\n", @@ -335,14 +432,33 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 13, "metadata": { - "collapsed": true, "slideshow": { "slide_type": "fragment" } }, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Sto per rilanciare un’eccezione\n" + ] + }, + { + "ename": "Exception", + "evalue": "Questo è sempre rilanciato", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mException\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[1;32mreturn\u001b[0m \u001b[1;34m\"Non sarò restituito\"\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 6\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 7\u001b[1;33m \u001b[0mnessun_ritorno\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[1;32m\u001b[0m in \u001b[0;36mnessun_ritorno\u001b[1;34m()\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mnessun_ritorno\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2\u001b[0m \u001b[0mprint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"Sto per rilanciare un’eccezione\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 3\u001b[1;33m \u001b[1;32mraise\u001b[0m \u001b[0mException\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"Questo è sempre rilanciato\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 4\u001b[0m \u001b[0mprint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"Questa linea non sarà mai eseguita\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[1;32mreturn\u001b[0m \u001b[1;34m\"Non sarò restituito\"\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", + "\u001b[1;31mException\u001b[0m: Questo è sempre rilanciato" + ] + } + ], "source": [ "def nessun_ritorno():\n", " print(\"Sto per rilanciare un’eccezione\")\n", @@ -369,14 +485,35 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 14, "metadata": { - "collapsed": true, "slideshow": { "slide_type": "fragment" } }, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "chiama_eccessore inizia qui...\n", + "Sto per rilanciare un’eccezione\n" + ] + }, + { + "ename": "Exception", + "evalue": "Questo è sempre rilanciato", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mException\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[0mprint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"...quindi queste linee non sono eseguite\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 6\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 7\u001b[1;33m \u001b[0mchiama_eccessore\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[1;32m\u001b[0m in \u001b[0;36mchiama_eccessore\u001b[1;34m()\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mchiama_eccessore\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2\u001b[0m \u001b[0mprint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"chiama_eccessore inizia qui...\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 3\u001b[1;33m \u001b[0mnessun_ritorno\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 4\u001b[0m \u001b[0mprint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"eccezione rilanciata...\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[0mprint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"...quindi queste linee non sono eseguite\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", + "\u001b[1;32m\u001b[0m in \u001b[0;36mnessun_ritorno\u001b[1;34m()\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mnessun_ritorno\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2\u001b[0m \u001b[0mprint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"Sto per rilanciare un’eccezione\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 3\u001b[1;33m \u001b[1;32mraise\u001b[0m \u001b[0mException\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"Questo è sempre rilanciato\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 4\u001b[0m \u001b[0mprint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"Questa linea non sarà mai eseguita\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[1;32mreturn\u001b[0m \u001b[1;34m\"Non sarò restituito\"\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", + "\u001b[1;31mException\u001b[0m: Questo è sempre rilanciato" + ] + } + ], "source": [ "def chiama_eccessore():\n", " print(\"chiama_eccessore inizia qui...\")\n", @@ -412,19 +549,28 @@ "source": [ "# Gestire le eccezioni\n", "\n", - "Si gestiscono racchiudendo la porzione di codice che potrebbe rilanciarle tra try e catch" + "Si gestiscono racchiudendo la porzione di codice che potrebbe rilanciarle tra `try` e `catch`" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 15, "metadata": { - "collapsed": true, "slideshow": { "slide_type": "fragment" } }, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Sto per rilanciare un’eccezione\n", + "Ho catturato un'eccezione\n", + "Eseguito dopo l'eccezione\n" + ] + } + ], "source": [ "try:\n", " nessun_ritorno()\n", @@ -441,25 +587,32 @@ } }, "source": [ - "Sapevamo che nessun_ritorno() rilanciava un'eccezione e noi l'abbiamo catturata, continuando poi con l'esecuzione...\n", + "Sapevamo che `nessun_ritorno()` rilanciava un'eccezione e noi l'abbiamo catturata, continuando poi con l'esecuzione...\n", "\n", - "Notare l'indentazione del codice tra try e except\n", + "Notare l'indentazione del codice tra `try` e `except`\n", "\n", "Il difetto del codice precedente è che cattura qualsiasi eccezione...\n", "\n", - "Cosa fare se volessimo trattare diversamente ad esempio TypeError rispetto a ZeroDivisionError?" + "Cosa fare se volessimo trattare diversamente ad esempio `TypeError` rispetto a `ZeroDivisionError` ?" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 16, "metadata": { - "collapsed": true, "slideshow": { "slide_type": "fragment" } }, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Dividere per zero non è una buona idea!\n" + ] + } + ], "source": [ "def cento_diviso(divisore):\n", " try:\n", @@ -467,8 +620,45 @@ " except ZeroDivisionError:\n", " return \"Dividere per zero non è una buona idea!\"\n", "\n", - "print(cento_diviso(0))\n", - "print(cento_diviso(50.0))\n", + "print(cento_diviso(0))" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2.0\n" + ] + } + ], + "source": [ + "print(cento_diviso(50.0))" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "ename": "TypeError", + "evalue": "unsupported operand type(s) for /: 'int' and 'str'", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mTypeError\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[1;32m----> 1\u001b[1;33m \u001b[0mprint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mcento_diviso\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"hello\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[1;32m\u001b[0m in \u001b[0;36mcento_diviso\u001b[1;34m(divisore)\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mcento_diviso\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mdivisore\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2\u001b[0m \u001b[1;32mtry\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 3\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[1;36m100\u001b[0m \u001b[1;33m/\u001b[0m \u001b[0mdivisore\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 4\u001b[0m \u001b[1;32mexcept\u001b[0m \u001b[0mZeroDivisionError\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[1;32mreturn\u001b[0m \u001b[1;34m\"Dividere per zero non è una buona idea!\"\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", + "\u001b[1;31mTypeError\u001b[0m: unsupported operand type(s) for /: 'int' and 'str'" + ] + } + ], + "source": [ "print(cento_diviso(\"hello\"))" ] }, @@ -485,14 +675,36 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 19, "metadata": { - "collapsed": true, "slideshow": { "slide_type": "fragment" } }, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Testiamo con 0: Inserire un numero, diverso da zero\n", + "Testiamo con ciao: Inserire un numero, diverso da zero\n", + "Testiamo con 50.0: 2.0\n", + "Testiamo con 17: " + ] + }, + { + "ename": "ValueError", + "evalue": "17 è un numero sfortunato", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mValueError\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[0;32m 10\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 11\u001b[0m \u001b[0mprint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"Testiamo con {}:\"\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mformat\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mval\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m,\u001b[0m\u001b[0mend\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;34m\" \"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 12\u001b[1;33m \u001b[0mprint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mcento_diviso_v2\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mval\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[1;32m\u001b[0m in \u001b[0;36mcento_diviso_v2\u001b[1;34m(divisore)\u001b[0m\n\u001b[0;32m 2\u001b[0m \u001b[1;32mtry\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 3\u001b[0m \u001b[1;32mif\u001b[0m \u001b[0mdivisore\u001b[0m \u001b[1;33m==\u001b[0m \u001b[1;36m17\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 4\u001b[1;33m \u001b[1;32mraise\u001b[0m \u001b[0mValueError\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"17 è un numero sfortunato\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 5\u001b[0m \u001b[1;32mreturn\u001b[0m \u001b[1;36m100\u001b[0m \u001b[1;33m/\u001b[0m \u001b[0mdivisore\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 6\u001b[0m \u001b[1;32mexcept\u001b[0m \u001b[1;33m(\u001b[0m\u001b[0mZeroDivisionError\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mTypeError\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", + "\u001b[1;31mValueError\u001b[0m: 17 è un numero sfortunato" + ] + } + ], "source": [ "def cento_diviso_v2(divisore):\n", " try:\n", @@ -519,21 +731,43 @@ "source": [ "L'eccezione derivata dal numero 17 non è lista tra le gestite, quindi non viene gestita.\n", "\n", - "Quindi se vogliamo gestire e fare cose diverse? (vedi distinzione tra ZeroDivisionError e TypeError sotto)\n", + "Quindi se vogliamo gestire e fare cose diverse? (vedi distinzione tra `ZeroDivisionError` e `TypeError` sotto)\n", "\n", - "O se vogliamo fare in modo di fare qualcosa e poi rilanciarla al chiamante? (vedi ValueError sotto)" + "O se vogliamo fare in modo di fare qualcosa e poi rilanciarla al chiamante? (vedi `ValueError` sotto)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 20, "metadata": { - "collapsed": true, "slideshow": { "slide_type": "fragment" } }, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Testiamo con 0: Inserire un numero diverso da zero\n", + "Testiamo con ciao: Inserire un numero\n", + "Testiamo con 50.0: 2.0\n", + "Testiamo con 17: No, no, per favore non 17!\n" + ] + }, + { + "ename": "ValueError", + "evalue": "17 è un numero sfortunato", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mValueError\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[0;32m 15\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 16\u001b[0m \u001b[0mprint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"Testiamo con {}:\"\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mformat\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mval\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m,\u001b[0m\u001b[0mend\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;34m\" \"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 17\u001b[1;33m \u001b[0mprint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mcento_diviso_v3\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mval\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[1;32m\u001b[0m in \u001b[0;36mcento_diviso_v3\u001b[1;34m(divisore)\u001b[0m\n\u001b[0;32m 2\u001b[0m \u001b[1;32mtry\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 3\u001b[0m \u001b[1;32mif\u001b[0m \u001b[0mdivisore\u001b[0m \u001b[1;33m==\u001b[0m \u001b[1;36m17\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 4\u001b[1;33m \u001b[1;32mraise\u001b[0m \u001b[0mValueError\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"17 è un numero sfortunato\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 5\u001b[0m \u001b[1;32mreturn\u001b[0m \u001b[1;36m100\u001b[0m \u001b[1;33m/\u001b[0m \u001b[0mdivisore\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 6\u001b[0m \u001b[1;32mexcept\u001b[0m \u001b[0mZeroDivisionError\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", + "\u001b[1;31mValueError\u001b[0m: 17 è un numero sfortunato" + ] + } + ], "source": [ "def cento_diviso_v3(divisore):\n", " try:\n", @@ -565,8 +799,8 @@ "Mettendo in fila le eccezioni come nell'esempio precedente, solo la prima \"associazione\" viene eseguita, anche nel caso ce ne fossero di più. \n", "\n", "Ma qual è il caso di più associazioni?\n", - "Le eccezioni sono oggetti con una loro gerarchia, la maggior parte deriva da Exception (che a sua volta deriva da BaseException). \n", - "Se nel codice gestiamo Exception prima di TypeError, verrà gestita solo Exception perchè TypeError è anche Exception per ereditarietà.\n", + "Le eccezioni sono oggetti con una loro gerarchia, la maggior parte deriva da `Exception` (che a sua volta deriva da `BaseException`). \n", + "Se nel codice gestiamo `Exception` prima di `TypeError`, verrà gestita solo `Exception` perchè `TypeError` è anche `Exception` per ereditarietà.\n", "\n", "Questi ragionamenti sono utili quando vogliamo gestire delle eccezioni in modo particolare ma poi proteggerci in modo più generale da quelle rimanenti / generiche.\n", "\n", @@ -591,11 +825,17 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": { - "collapsed": true - }, - "outputs": [], + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Gli argomenti dell'eccezione sono ('Questo è un argomento',)\n" + ] + } + ], "source": [ "try:\n", " raise ValueError(\"Questo è un argomento\")\n", @@ -613,19 +853,29 @@ "source": [ "## finally and else\n", "\n", - "Ora vediamo come eseguire del codice indipendentemente dall'evento eccezione con le parole chiave finally e else" + "Ora vediamo come eseguire del codice indipendentemente dall'evento eccezione con le parole chiave `finally` e `else`" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 22, "metadata": { - "collapsed": true, "slideshow": { "slide_type": "fragment" } }, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Rilancio... \n", + "Gestita eccezione di cui posso sapere il nome: IndexError\n", + "... e il messaggio di errore Un errore\n", + "Questo codice è eseguito sempre, per pulizia finale\n" + ] + } + ], "source": [ "import random\n", "\n", @@ -643,7 +893,8 @@ "except TypeError:\n", " print(\"Gestita TypeError\")\n", "except Exception as e:\n", - " print(\"Gestita eccezione di cui posso sapere il nome: %s\" %(e.__class__.__name__)) \n", + " print(\"Gestita eccezione di cui posso sapere il nome: %s\" %(e.__class__.__name__)) \n", + " print(f\"... e il messaggio di errore {e}\")\n", "else:\n", " print(\"Questo codice è eseguito in assenza di eccezioni\")\n", "finally:\n", @@ -659,15 +910,16 @@ } }, "source": [ - "La parte di finally è eseguita in qualsiasi caso ed è da utilizzare per i task da effettuare alla fine dell'esecuzione, qualsiasi cosa accada (es. chisura file, chiusura connessione DB o di rete).\n", + "La parte di `finally` è eseguita in qualsiasi caso ed è da utilizzare per i task da effettuare alla fine dell'esecuzione, qualsiasi cosa accada (es. chisura file, chiusura connessione DB o di rete).\n", + "\n", + "E' importante anche nelle funzioni che hanno un return nella parte `try`. Il codice nella parte `finally` verrà comunque eseguito prima del ritorno.\n", "\n", - "E' importante anche nelle funzioni che hanno un return nella parte try. Il codice nella parte finally verrà comunque eseguito prima del ritorno.\n", + "Se non ci sono eccezioni sono eseguite sia `else` che `finally`\n", "\n", - "Se non ci sono eccezioni sono eseguite sia else che finally\n", + "`except`, `else`, e `finally` possono essere omessi (anche se else da solo non va bene).\n", + "Se si mettono: `except` prima, poi `else` e `finally` alla fine.\n", "\n", - "except, else, e finally possono essere omessi (anche se else da solo non va bene).\n", - "Se si mettono: except prima, poi else e finally alla fine.clause at the end. \n", - "L'ordine degli except va dall'eccezione più specifica alla più generica." + "L'ordine degli `except` va dall'eccezione più specifica alla più generica." ] }, { @@ -681,11 +933,11 @@ "source": [ "# La gerarchia delle eccezioni\n", "\n", - "La maggior parte delle eccezioni derivano da Exception (che però non è la base); eredita infatti da BaseException, come le due speciali SystemExit e KeyboardInterrupt.\n", + "La maggior parte delle eccezioni derivano da `Exception` (che però non è la base); eredita infatti da `BaseException`, come le due speciali `SystemExit` e `KeyboardInterrupt`.\n", "\n", - "SystemExit è rilanciata naturalmente alla fine del programma o dalla funzione sys.exit\n", + "`SystemExit` è rilanciata naturalmente alla fine del programma o dalla funzione `sys.exit`\n", "\n", - "KeyboardInterrupt è rilanciata a terminale dalla sequenza Ctrl+C\n", + "`KeyboardInterrupt` è rilanciata a terminale dalla sequenza Ctrl+C\n", "\n", "![Gerarchia delle eccezioni](./resources/eccezioni.png)" ] @@ -699,13 +951,13 @@ } }, "source": [ - "Quando si usa except: senza specificare il tipo di exception, si catturano tutte le sottoclassi di BaseException (comprese le due speciali).\n", + "Quando si usa `except`: senza specificare il tipo di exception, si catturano tutte le sottoclassi di `BaseException` (comprese le due speciali).\n", "\n", - "Poichè normalmente vogliamo escluderle nel loro trattamento speciale meglio usare except con argomenti.\n", - "Se vogliamo catturare tutte le exceptions tranne SystemExit e KeyboardInterrupt, esplictamente scriviamo catch Exception.\n", + "Poichè normalmente vogliamo escluderle nel loro trattamento speciale meglio usare `except` con argomenti.\n", + "Se vogliamo catturare tutte le exceptions tranne `SystemExit` e `KeyboardInterrupt`, esplicitamente scriviamo catch `Exception`.\n", "\n", - "Se invece vogliamo catturare anche le speciali, per chiarezza sempre consigliato except BaseException: \n", - "così da far capire esplicitamente l'intento" + "Se invece vogliamo catturare anche le speciali, per chiarezza sempre consigliato `except BaseException:` \n", + "così da far capire esplicitamente l'intento." ] }, { @@ -719,19 +971,30 @@ "source": [ "# Definire le proprie eccezioni\n", "\n", - "E' molto semplice, basta estendere Exception e non è neppure necessario specificare altre informazioni" + "E' molto semplice, basta estendere `Exception` e non è neppure necessario specificare altre informazioni" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 23, "metadata": { - "collapsed": true, "slideshow": { "slide_type": "fragment" } }, - "outputs": [], + "outputs": [ + { + "ename": "PrelievoNonValido", + "evalue": "Non hai abbastanza soldi sul conto", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mPrelievoNonValido\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[0;32m 2\u001b[0m \u001b[1;32mpass\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 3\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 4\u001b[1;33m \u001b[1;32mraise\u001b[0m \u001b[0mPrelievoNonValido\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"Non hai abbastanza soldi sul conto\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[1;31mPrelievoNonValido\u001b[0m: Non hai abbastanza soldi sul conto" + ] + } + ], "source": [ "class PrelievoNonValido(Exception):\n", " pass\n", @@ -749,20 +1012,34 @@ "source": [ "Ovviemente la classe eccezione può essere più complessa e articolata.\n", "\n", - "Il metodo di inizializzazione Exception.__init__ method è progettato per accettare qualsiasi argomento e memorizzarlo in una tupla di nome args. \n", - "Questo rende semplice la definizione senza la necessità di sovrescrivere (override) __init__" + "Il metodo di inizializzazione `Exception`:\n", + "\n", + "`__init__` method è progettato per accettare qualsiasi argomento e memorizzarlo in una tupla di nome args. \n", + "\n", + "Questo rende semplice la definizione senza la necessità di sovrescrivere (override) `__init__`" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 24, "metadata": { - "collapsed": true, "slideshow": { "slide_type": "fragment" } }, - "outputs": [], + "outputs": [ + { + "ename": "PrelievoNonValido", + "evalue": "Il conto non ha EUR 60", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mPrelievoNonValido\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[0;32m 7\u001b[0m \u001b[1;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mimporto\u001b[0m \u001b[1;33m-\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0msaldo\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 8\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 9\u001b[1;33m \u001b[1;32mraise\u001b[0m \u001b[0mPrelievoNonValido\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;36m25\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;36m60\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[1;31mPrelievoNonValido\u001b[0m: Il conto non ha EUR 60" + ] + } + ], "source": [ "class PrelievoNonValido(Exception):\n", " def __init__(self, saldo, importo):\n", @@ -777,14 +1054,21 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 25, "metadata": { - "collapsed": true, "slideshow": { "slide_type": "fragment" } }, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Banca Python: ci dispiace ma la sua richiesa è superiore al saldo di EUR 35\n" + ] + } + ], "source": [ "try:\n", " raise PrelievoNonValido(25, 60)\n", @@ -803,10 +1087,10 @@ } }, "source": [ - "Avete visto come è stata gestita l'eccezione PrelievoNonValido.\n", + "Avete visto come è stata gestita l'eccezione `PrelievoNonValido`.\n", "\n", - "E anche l'utilizzo di as seguita dal nome istanza dell'eccezion.\n", - "Per convenzione si usa e ma si potrebbe chiamare ex o pippo.\n", + "E anche l'utilizzo di as seguita dal nome istanza dell'eccezione.\n", + "Per convenzione si usa `e` ma si potrebbe chiamare `ex` o `pippo`.\n", "\n", "Ci sono molti motivi per definire \"proprie\" eccezioni:\n", "- aggiungere info utili all'eccezione\n", @@ -819,7 +1103,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 26, "metadata": { "collapsed": true, "slideshow": { @@ -845,31 +1129,77 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 27, "metadata": { - "collapsed": true, "slideshow": { "slide_type": "fragment" } }, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "6 / 2 = 3.0\n" + ] + } + ], + "source": [ + "dividi_con_exception(6,2)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Non puoi dividere per zero!\n" + ] + } + ], "source": [ - "dividi_con_exception(6,2)\n", "dividi_con_exception(3,0)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 29, "metadata": { - "collapsed": true, "slideshow": { "slide_type": "fragment" } }, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "6 / 2 = 3.0\n" + ] + } + ], + "source": [ + "dividi_con_if(6,2)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Non puoi dividere per zero!\n" + ] + } + ], "source": [ - "dividi_con_if(6,2)\n", "dividi_con_if(3,0)" ] }, @@ -881,7 +1211,7 @@ } }, "source": [ - "Anche negli casi di eccezione si potrebbe \"proteggere\" il codice con tante if, ma a parte la difficoltà di prevedere tutti i casi, il suggerimento è quello di eseguire il codice e gestire la situazione se qualcosa va male, anche per risparmiare codice e cicli CPU inseriti solo per gestire scenari rari" + "Anche negli casi di eccezione si potrebbe \"proteggere\" il codice con tante `if`, ma a parte la difficoltà di prevedere tutti i casi, il suggerimento è quello di eseguire il codice e gestire la situazione se qualcosa va male, anche per risparmiare codice e cicli CPU inseriti solo per gestire scenari rari" ] }, { @@ -897,14 +1227,18 @@ "Immaginiamo di gestire un inventario per un'azienda che vende gadget.\n", "Quando un cliente fa un ordine di un prodotto, questo può essere disponibile (e quindi rimosso dall'inventario) oppure non disponibile (e questo evento è tutt'altro che eccezionale).\n", "\n", - "Cosa dovrebbe restituire la funzione \"ordine\"? -1, una stringa descrittiva, decisamente meglio un'eccezione tipo ProdottoEsauritoException\n", + "Cosa dovrebbe restituire la funzione \"ordine\"? \n", + "\n", + "-1, una stringa descrittiva?\n", + "\n", + "Decisamente meglio un'eccezione tipo `ProdottoEsauritoException`\n", "\n", "Definiamo con solo \"docstring\" l'oggetto e vediamo poi come usarlo..." ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 34, "metadata": { "collapsed": true, "slideshow": { @@ -934,14 +1268,21 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 32, "metadata": { - "collapsed": true, "slideshow": { "slide_type": "fragment" } }, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Acquisto completato. Nell'inventario ancora 10 oggetti di tipo portachiave sono disponibili\n" + ] + } + ], "source": [ "tipo_prodotto = 'portachiave'\n", "inv = Inventario()\n", @@ -969,7 +1310,7 @@ "version": "0.3.2" }, "kernelspec": { - "display_name": "Python [default]", + "display_name": "Python 3", "language": "python", "name": "python3" }, @@ -983,7 +1324,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.5.6" + "version": "3.6.10" }, "toc": { "base_numbering": 1, @@ -998,7 +1339,7 @@ "height": "calc(100% - 180px)", "left": "10px", "top": "150px", - "width": "320px" + "width": "253px" }, "toc_section_display": true, "toc_window_display": true diff --git a/Italiano/1_introduction/7-Generatori.ipynb b/Italiano/1_introduction/7-Generatori.ipynb new file mode 100644 index 0000000..9f889fc --- /dev/null +++ b/Italiano/1_introduction/7-Generatori.ipynb @@ -0,0 +1,5092 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Generatori (generators)\n", + "\n", + "I generators assomigliano alle **list comprehensions**, con la differenza che sono circondati da parantesi tonde `()` anzichè quadre `[]`. \n", + "\n", + "Generators più *complicati* sono definiti come funzioni con differenza che contengono `yield` anzichè `return`. \n", + "\n", + "Un generatore ad ogni chiamata restituisce un valore/oggetto costruendolo a partire da una sequenza arbitrariamente complessa di operazioni, senza il vincolo di dover calcolare tutti i valori in una sola volta. Un oggetto generatore è naturalmente iterabile con for.\n", + "\n", + "Un generator mantiene lo stato durante le chiamate; l'esecuzione riprende immediatamente dopo l'ultimo `yield` e continua fino al `yield` successivo. \n" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "def xsquared(): \n", + " for i in range(30): \n", + " yield i*i " + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "# Infinite version\n", + "def xsquared_inf(): \n", + " x = 0 \n", + " while True: \n", + " yield x*x \n", + " x += 1 " + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[0, 1, 4, 9, 16, 25, 36, 49, 64, 81, 100, 121, 144, 169, 196, 225, 256, 289, 324, 361, 400, 441, 484, 529, 576, 625, 676, 729, 784, 841]\n" + ] + } + ], + "source": [ + "squares = [x for x in xsquared()] \n", + "print(squares)" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "def a(k):\n", + " for n in range(k):\n", + " yield(n)\n", + "\n", + "generatore = a(9)" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0\n", + "1\n", + "2\n", + "3\n", + "4\n", + "5\n", + "6\n", + "7\n", + "8\n" + ] + } + ], + "source": [ + "for x in generatore:\n", + " print(x) #---> stampa i numeri da 0 a 8" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Nell'esempio seguente si vede come da una funzione si possono ricavare più generatori indipendenti.\n", + "\n", + "I singoli valori possono anche essere ottenuti uno dopo l'altro con `next` (generatore).\n", + "Se si tenta di acquisire un ulteriore valore quando sono già stati \"consumati\" tutti, viene sollevata l'eccezione `StopIteration`." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "def dati(*a):\n", + " for x in a:\n", + " yield(x) \n", + "\n", + "g1 = dati(12, 45, 89, 0, 33, 127)\n", + "g2 = dati(\"a\", \"b\", \"c\", \"d\", \"e\", \"f\")" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "12 45 89\n", + "a b c\n", + "[(0, 'd'), (33, 'e'), (127, 'f')]\n" + ] + } + ], + "source": [ + "v1 = next(g1)\n", + "v2 = next(g1)\n", + "v3 = next(g1)\n", + "v4 = next(g2)\n", + "v5 = next(g2)\n", + "v6 = next(g2)\n", + "\n", + "print(v1, v2, v3) #---> 12 45 89\n", + "print(v4, v5, v6) #---> a b c\n", + "\n", + "v7 = list(zip(g1, g2))\n", + "print(v7) #--> [(0, 'd'), (33, 'e'), (127, 'f')]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Esempi di creazione da \"funzione\"" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "def potenze(base):\n", + " val = base\n", + " while True:\n", + " yield val\n", + " val = val * base\n", + "\n", + "def linee_numerate(file):\n", + " indice = 0\n", + " for linea in file:\n", + " yield indice, linea\n", + " indice = indice + i" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2\n", + "4\n", + "8\n", + "16\n", + "32\n", + "64\n", + "128\n", + "256\n", + "512\n", + "1024\n", + "2048\n", + "4096\n", + "8192\n", + "16384\n", + "32768\n", + "65536\n", + "131072\n", + "262144\n", + "524288\n", + "1048576\n", + "2097152\n", + "4194304\n", + "8388608\n", + "16777216\n", + "33554432\n", + "67108864\n", + "134217728\n", + "268435456\n", + "536870912\n", + "1073741824\n", + "2147483648\n", + "4294967296\n", + "8589934592\n", + "17179869184\n", + "34359738368\n", + "68719476736\n", + "137438953472\n", + "274877906944\n", + "549755813888\n", + "1099511627776\n", + "2199023255552\n", + "4398046511104\n", + "8796093022208\n", + "17592186044416\n", + "35184372088832\n", + "70368744177664\n", + "140737488355328\n", + "281474976710656\n", + "562949953421312\n", + "1125899906842624\n", + "2251799813685248\n", + "4503599627370496\n", + "9007199254740992\n", + "18014398509481984\n", + "36028797018963968\n", + "72057594037927936\n", + "144115188075855872\n", + "288230376151711744\n", + "576460752303423488\n", + "1152921504606846976\n", + "2305843009213693952\n", + "4611686018427387904\n", + "9223372036854775808\n", + "18446744073709551616\n", + "36893488147419103232\n", + "73786976294838206464\n", + "147573952589676412928\n", + "295147905179352825856\n", + "590295810358705651712\n", + "1180591620717411303424\n", + "2361183241434822606848\n", + "4722366482869645213696\n", + "9444732965739290427392\n", + "18889465931478580854784\n", + "37778931862957161709568\n", + "75557863725914323419136\n", + "151115727451828646838272\n", + "302231454903657293676544\n", + "604462909807314587353088\n", + "1208925819614629174706176\n", + "2417851639229258349412352\n", + "4835703278458516698824704\n", + "9671406556917033397649408\n", + "19342813113834066795298816\n", + "38685626227668133590597632\n", + "77371252455336267181195264\n", + "154742504910672534362390528\n", + "309485009821345068724781056\n", + "618970019642690137449562112\n", + "1237940039285380274899124224\n", + "2475880078570760549798248448\n", + "4951760157141521099596496896\n", + "9903520314283042199192993792\n", + "19807040628566084398385987584\n", + "39614081257132168796771975168\n", + "79228162514264337593543950336\n", + "158456325028528675187087900672\n", + "316912650057057350374175801344\n", + "633825300114114700748351602688\n", + "1267650600228229401496703205376\n", + "2535301200456458802993406410752\n", + "5070602400912917605986812821504\n", + "10141204801825835211973625643008\n", + "20282409603651670423947251286016\n", + "40564819207303340847894502572032\n", + "81129638414606681695789005144064\n", + "162259276829213363391578010288128\n", + "324518553658426726783156020576256\n", + "649037107316853453566312041152512\n", + "1298074214633706907132624082305024\n", + "2596148429267413814265248164610048\n", + "5192296858534827628530496329220096\n", + "10384593717069655257060992658440192\n", + "20769187434139310514121985316880384\n", + "41538374868278621028243970633760768\n", + "83076749736557242056487941267521536\n", + "166153499473114484112975882535043072\n", + "332306998946228968225951765070086144\n", + "664613997892457936451903530140172288\n", + "1329227995784915872903807060280344576\n", + "2658455991569831745807614120560689152\n", + "5316911983139663491615228241121378304\n", + "10633823966279326983230456482242756608\n", + "21267647932558653966460912964485513216\n", + "42535295865117307932921825928971026432\n", + "85070591730234615865843651857942052864\n", + "170141183460469231731687303715884105728\n", + "340282366920938463463374607431768211456\n", + "680564733841876926926749214863536422912\n", + "1361129467683753853853498429727072845824\n", + "2722258935367507707706996859454145691648\n", + "5444517870735015415413993718908291383296\n", + "10889035741470030830827987437816582766592\n", + "21778071482940061661655974875633165533184\n", + "43556142965880123323311949751266331066368\n", + "87112285931760246646623899502532662132736\n", + "174224571863520493293247799005065324265472\n", + "348449143727040986586495598010130648530944\n", + "696898287454081973172991196020261297061888\n", + "1393796574908163946345982392040522594123776\n", + "2787593149816327892691964784081045188247552\n", + "5575186299632655785383929568162090376495104\n", + "11150372599265311570767859136324180752990208\n", + "22300745198530623141535718272648361505980416\n", + "44601490397061246283071436545296723011960832\n", + "89202980794122492566142873090593446023921664\n", + "178405961588244985132285746181186892047843328\n", + "356811923176489970264571492362373784095686656\n", + "713623846352979940529142984724747568191373312\n", + "1427247692705959881058285969449495136382746624\n", + "2854495385411919762116571938898990272765493248\n", + "5708990770823839524233143877797980545530986496\n", + "11417981541647679048466287755595961091061972992\n", + "22835963083295358096932575511191922182123945984\n", + "45671926166590716193865151022383844364247891968\n", + "91343852333181432387730302044767688728495783936\n", + "182687704666362864775460604089535377456991567872\n", + "365375409332725729550921208179070754913983135744\n", + "730750818665451459101842416358141509827966271488\n", + "1461501637330902918203684832716283019655932542976\n", + "2923003274661805836407369665432566039311865085952\n", + "5846006549323611672814739330865132078623730171904\n", + "11692013098647223345629478661730264157247460343808\n", + "23384026197294446691258957323460528314494920687616\n", + "46768052394588893382517914646921056628989841375232\n", + "93536104789177786765035829293842113257979682750464\n", + "187072209578355573530071658587684226515959365500928\n", + "374144419156711147060143317175368453031918731001856\n", + "748288838313422294120286634350736906063837462003712\n", + "1496577676626844588240573268701473812127674924007424\n", + "2993155353253689176481146537402947624255349848014848\n", + "5986310706507378352962293074805895248510699696029696\n", + "11972621413014756705924586149611790497021399392059392\n", + "23945242826029513411849172299223580994042798784118784\n", + "47890485652059026823698344598447161988085597568237568\n", + "95780971304118053647396689196894323976171195136475136\n", + "191561942608236107294793378393788647952342390272950272\n", + "383123885216472214589586756787577295904684780545900544\n", + "766247770432944429179173513575154591809369561091801088\n", + "1532495540865888858358347027150309183618739122183602176\n", + "3064991081731777716716694054300618367237478244367204352\n", + "6129982163463555433433388108601236734474956488734408704\n", + "12259964326927110866866776217202473468949912977468817408\n", + "24519928653854221733733552434404946937899825954937634816\n", + "49039857307708443467467104868809893875799651909875269632\n", + "98079714615416886934934209737619787751599303819750539264\n", + "196159429230833773869868419475239575503198607639501078528\n", + "392318858461667547739736838950479151006397215279002157056\n", + "784637716923335095479473677900958302012794430558004314112\n", + "1569275433846670190958947355801916604025588861116008628224\n", + "3138550867693340381917894711603833208051177722232017256448\n", + "6277101735386680763835789423207666416102355444464034512896\n", + "12554203470773361527671578846415332832204710888928069025792\n", + "25108406941546723055343157692830665664409421777856138051584\n", + "50216813883093446110686315385661331328818843555712276103168\n", + "100433627766186892221372630771322662657637687111424552206336\n", + "200867255532373784442745261542645325315275374222849104412672\n", + "401734511064747568885490523085290650630550748445698208825344\n", + "803469022129495137770981046170581301261101496891396417650688\n", + "1606938044258990275541962092341162602522202993782792835301376\n", + "3213876088517980551083924184682325205044405987565585670602752\n", + "6427752177035961102167848369364650410088811975131171341205504\n", + "12855504354071922204335696738729300820177623950262342682411008\n", + "25711008708143844408671393477458601640355247900524685364822016\n", + "51422017416287688817342786954917203280710495801049370729644032\n", + "102844034832575377634685573909834406561420991602098741459288064\n", + "205688069665150755269371147819668813122841983204197482918576128\n", + "411376139330301510538742295639337626245683966408394965837152256\n", + "822752278660603021077484591278675252491367932816789931674304512\n", + "1645504557321206042154969182557350504982735865633579863348609024\n", + "3291009114642412084309938365114701009965471731267159726697218048\n", + "6582018229284824168619876730229402019930943462534319453394436096\n", + "13164036458569648337239753460458804039861886925068638906788872192\n", + "26328072917139296674479506920917608079723773850137277813577744384\n", + "52656145834278593348959013841835216159447547700274555627155488768\n", + "105312291668557186697918027683670432318895095400549111254310977536\n", + "210624583337114373395836055367340864637790190801098222508621955072\n", + "421249166674228746791672110734681729275580381602196445017243910144\n", + "842498333348457493583344221469363458551160763204392890034487820288\n", + "1684996666696914987166688442938726917102321526408785780068975640576\n", + "3369993333393829974333376885877453834204643052817571560137951281152\n", + "6739986666787659948666753771754907668409286105635143120275902562304\n", + "13479973333575319897333507543509815336818572211270286240551805124608\n", + "26959946667150639794667015087019630673637144422540572481103610249216\n", + "53919893334301279589334030174039261347274288845081144962207220498432\n", + "107839786668602559178668060348078522694548577690162289924414440996864\n", + "215679573337205118357336120696157045389097155380324579848828881993728\n", + "431359146674410236714672241392314090778194310760649159697657763987456\n", + "862718293348820473429344482784628181556388621521298319395315527974912\n", + "1725436586697640946858688965569256363112777243042596638790631055949824\n", + "3450873173395281893717377931138512726225554486085193277581262111899648\n", + "6901746346790563787434755862277025452451108972170386555162524223799296\n", + "13803492693581127574869511724554050904902217944340773110325048447598592\n", + "27606985387162255149739023449108101809804435888681546220650096895197184\n", + "55213970774324510299478046898216203619608871777363092441300193790394368\n", + "110427941548649020598956093796432407239217743554726184882600387580788736\n", + "220855883097298041197912187592864814478435487109452369765200775161577472\n", + "441711766194596082395824375185729628956870974218904739530401550323154944\n", + "883423532389192164791648750371459257913741948437809479060803100646309888\n", + "1766847064778384329583297500742918515827483896875618958121606201292619776\n", + "3533694129556768659166595001485837031654967793751237916243212402585239552\n", + "7067388259113537318333190002971674063309935587502475832486424805170479104\n", + "14134776518227074636666380005943348126619871175004951664972849610340958208\n", + "28269553036454149273332760011886696253239742350009903329945699220681916416\n", + "56539106072908298546665520023773392506479484700019806659891398441363832832\n", + "113078212145816597093331040047546785012958969400039613319782796882727665664\n", + "226156424291633194186662080095093570025917938800079226639565593765455331328\n", + "452312848583266388373324160190187140051835877600158453279131187530910662656\n", + "904625697166532776746648320380374280103671755200316906558262375061821325312\n", + "1809251394333065553493296640760748560207343510400633813116524750123642650624\n", + "3618502788666131106986593281521497120414687020801267626233049500247285301248\n", + "7237005577332262213973186563042994240829374041602535252466099000494570602496\n", + "14474011154664524427946373126085988481658748083205070504932198000989141204992\n", + "28948022309329048855892746252171976963317496166410141009864396001978282409984\n", + "57896044618658097711785492504343953926634992332820282019728792003956564819968\n", + "115792089237316195423570985008687907853269984665640564039457584007913129639936\n", + "231584178474632390847141970017375815706539969331281128078915168015826259279872\n", + "463168356949264781694283940034751631413079938662562256157830336031652518559744\n", + "926336713898529563388567880069503262826159877325124512315660672063305037119488\n", + "1852673427797059126777135760139006525652319754650249024631321344126610074238976\n", + "3705346855594118253554271520278013051304639509300498049262642688253220148477952\n", + "7410693711188236507108543040556026102609279018600996098525285376506440296955904\n", + "14821387422376473014217086081112052205218558037201992197050570753012880593911808\n", + "29642774844752946028434172162224104410437116074403984394101141506025761187823616\n", + "59285549689505892056868344324448208820874232148807968788202283012051522375647232\n", + "118571099379011784113736688648896417641748464297615937576404566024103044751294464\n", + "237142198758023568227473377297792835283496928595231875152809132048206089502588928\n", + "474284397516047136454946754595585670566993857190463750305618264096412179005177856\n", + "948568795032094272909893509191171341133987714380927500611236528192824358010355712\n", + "1897137590064188545819787018382342682267975428761855001222473056385648716020711424\n", + "3794275180128377091639574036764685364535950857523710002444946112771297432041422848\n", + "7588550360256754183279148073529370729071901715047420004889892225542594864082845696\n", + "15177100720513508366558296147058741458143803430094840009779784451085189728165691392\n", + "30354201441027016733116592294117482916287606860189680019559568902170379456331382784\n", + "60708402882054033466233184588234965832575213720379360039119137804340758912662765568\n", + "121416805764108066932466369176469931665150427440758720078238275608681517825325531136\n", + "242833611528216133864932738352939863330300854881517440156476551217363035650651062272\n", + "485667223056432267729865476705879726660601709763034880312953102434726071301302124544\n", + "971334446112864535459730953411759453321203419526069760625906204869452142602604249088\n", + "1942668892225729070919461906823518906642406839052139521251812409738904285205208498176\n", + "3885337784451458141838923813647037813284813678104279042503624819477808570410416996352\n", + "7770675568902916283677847627294075626569627356208558085007249638955617140820833992704\n", + "15541351137805832567355695254588151253139254712417116170014499277911234281641667985408\n", + "31082702275611665134711390509176302506278509424834232340028998555822468563283335970816\n", + "62165404551223330269422781018352605012557018849668464680057997111644937126566671941632\n", + "124330809102446660538845562036705210025114037699336929360115994223289874253133343883264\n", + "248661618204893321077691124073410420050228075398673858720231988446579748506266687766528\n", + "497323236409786642155382248146820840100456150797347717440463976893159497012533375533056\n", + "994646472819573284310764496293641680200912301594695434880927953786318994025066751066112\n", + "1989292945639146568621528992587283360401824603189390869761855907572637988050133502132224\n", + "3978585891278293137243057985174566720803649206378781739523711815145275976100267004264448\n", + "7957171782556586274486115970349133441607298412757563479047423630290551952200534008528896\n", + "15914343565113172548972231940698266883214596825515126958094847260581103904401068017057792\n", + "31828687130226345097944463881396533766429193651030253916189694521162207808802136034115584\n", + "63657374260452690195888927762793067532858387302060507832379389042324415617604272068231168\n", + "127314748520905380391777855525586135065716774604121015664758778084648831235208544136462336\n", + "254629497041810760783555711051172270131433549208242031329517556169297662470417088272924672\n", + "509258994083621521567111422102344540262867098416484062659035112338595324940834176545849344\n", + "1018517988167243043134222844204689080525734196832968125318070224677190649881668353091698688\n", + "2037035976334486086268445688409378161051468393665936250636140449354381299763336706183397376\n", + "4074071952668972172536891376818756322102936787331872501272280898708762599526673412366794752\n", + "8148143905337944345073782753637512644205873574663745002544561797417525199053346824733589504\n", + "16296287810675888690147565507275025288411747149327490005089123594835050398106693649467179008\n", + "32592575621351777380295131014550050576823494298654980010178247189670100796213387298934358016\n", + "65185151242703554760590262029100101153646988597309960020356494379340201592426774597868716032\n", + "130370302485407109521180524058200202307293977194619920040712988758680403184853549195737432064\n", + "260740604970814219042361048116400404614587954389239840081425977517360806369707098391474864128\n", + "521481209941628438084722096232800809229175908778479680162851955034721612739414196782949728256\n", + "1042962419883256876169444192465601618458351817556959360325703910069443225478828393565899456512\n", + "2085924839766513752338888384931203236916703635113918720651407820138886450957656787131798913024\n", + "4171849679533027504677776769862406473833407270227837441302815640277772901915313574263597826048\n", + "8343699359066055009355553539724812947666814540455674882605631280555545803830627148527195652096\n", + "16687398718132110018711107079449625895333629080911349765211262561111091607661254297054391304192\n", + "33374797436264220037422214158899251790667258161822699530422525122222183215322508594108782608384\n", + "66749594872528440074844428317798503581334516323645399060845050244444366430645017188217565216768\n", + "133499189745056880149688856635597007162669032647290798121690100488888732861290034376435130433536\n", + "266998379490113760299377713271194014325338065294581596243380200977777465722580068752870260867072\n", + "533996758980227520598755426542388028650676130589163192486760401955554931445160137505740521734144\n", + "1067993517960455041197510853084776057301352261178326384973520803911109862890320275011481043468288\n", + "2135987035920910082395021706169552114602704522356652769947041607822219725780640550022962086936576\n", + "4271974071841820164790043412339104229205409044713305539894083215644439451561281100045924173873152\n", + "8543948143683640329580086824678208458410818089426611079788166431288878903122562200091848347746304\n", + "17087896287367280659160173649356416916821636178853222159576332862577757806245124400183696695492608\n", + "34175792574734561318320347298712833833643272357706444319152665725155515612490248800367393390985216\n", + "68351585149469122636640694597425667667286544715412888638305331450311031224980497600734786781970432\n", + "136703170298938245273281389194851335334573089430825777276610662900622062449960995201469573563940864\n", + "273406340597876490546562778389702670669146178861651554553221325801244124899921990402939147127881728\n", + "546812681195752981093125556779405341338292357723303109106442651602488249799843980805878294255763456\n", + "1093625362391505962186251113558810682676584715446606218212885303204976499599687961611756588511526912\n", + "2187250724783011924372502227117621365353169430893212436425770606409952999199375923223513177023053824\n", + "4374501449566023848745004454235242730706338861786424872851541212819905998398751846447026354046107648\n", + "8749002899132047697490008908470485461412677723572849745703082425639811996797503692894052708092215296\n", + "17498005798264095394980017816940970922825355447145699491406164851279623993595007385788105416184430592\n", + "34996011596528190789960035633881941845650710894291398982812329702559247987190014771576210832368861184\n", + "69992023193056381579920071267763883691301421788582797965624659405118495974380029543152421664737722368\n", + "139984046386112763159840142535527767382602843577165595931249318810236991948760059086304843329475444736\n", + "279968092772225526319680285071055534765205687154331191862498637620473983897520118172609686658950889472\n", + "559936185544451052639360570142111069530411374308662383724997275240947967795040236345219373317901778944\n", + "1119872371088902105278721140284222139060822748617324767449994550481895935590080472690438746635803557888\n", + "2239744742177804210557442280568444278121645497234649534899989100963791871180160945380877493271607115776\n", + "4479489484355608421114884561136888556243290994469299069799978201927583742360321890761754986543214231552\n", + "8958978968711216842229769122273777112486581988938598139599956403855167484720643781523509973086428463104\n", + "17917957937422433684459538244547554224973163977877196279199912807710334969441287563047019946172856926208\n", + "35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852416\n", + "71671831749689734737838152978190216899892655911508785116799651230841339877765150252188079784691427704832\n", + "143343663499379469475676305956380433799785311823017570233599302461682679755530300504376159569382855409664\n", + "286687326998758938951352611912760867599570623646035140467198604923365359511060601008752319138765710819328\n", + "573374653997517877902705223825521735199141247292070280934397209846730719022121202017504638277531421638656\n", + "1146749307995035755805410447651043470398282494584140561868794419693461438044242404035009276555062843277312\n", + "2293498615990071511610820895302086940796564989168281123737588839386922876088484808070018553110125686554624\n", + "4586997231980143023221641790604173881593129978336562247475177678773845752176969616140037106220251373109248\n", + "9173994463960286046443283581208347763186259956673124494950355357547691504353939232280074212440502746218496\n", + "18347988927920572092886567162416695526372519913346248989900710715095383008707878464560148424881005492436992\n", + "36695977855841144185773134324833391052745039826692497979801421430190766017415756929120296849762010984873984\n", + "73391955711682288371546268649666782105490079653384995959602842860381532034831513858240593699524021969747968\n", + "146783911423364576743092537299333564210980159306769991919205685720763064069663027716481187399048043939495936\n", + "293567822846729153486185074598667128421960318613539983838411371441526128139326055432962374798096087878991872\n", + "587135645693458306972370149197334256843920637227079967676822742883052256278652110865924749596192175757983744\n", + "1174271291386916613944740298394668513687841274454159935353645485766104512557304221731849499192384351515967488\n", + "2348542582773833227889480596789337027375682548908319870707290971532209025114608443463698998384768703031934976\n", + "4697085165547666455778961193578674054751365097816639741414581943064418050229216886927397996769537406063869952\n", + "9394170331095332911557922387157348109502730195633279482829163886128836100458433773854795993539074812127739904\n", + "18788340662190665823115844774314696219005460391266558965658327772257672200916867547709591987078149624255479808\n", + "37576681324381331646231689548629392438010920782533117931316655544515344401833735095419183974156299248510959616\n", + "75153362648762663292463379097258784876021841565066235862633311089030688803667470190838367948312598497021919232\n", + "150306725297525326584926758194517569752043683130132471725266622178061377607334940381676735896625196994043838464\n", + "300613450595050653169853516389035139504087366260264943450533244356122755214669880763353471793250393988087676928\n", + "601226901190101306339707032778070279008174732520529886901066488712245510429339761526706943586500787976175353856\n", + "1202453802380202612679414065556140558016349465041059773802132977424491020858679523053413887173001575952350707712\n", + "2404907604760405225358828131112281116032698930082119547604265954848982041717359046106827774346003151904701415424\n", + "4809815209520810450717656262224562232065397860164239095208531909697964083434718092213655548692006303809402830848\n", + "9619630419041620901435312524449124464130795720328478190417063819395928166869436184427311097384012607618805661696\n", + "19239260838083241802870625048898248928261591440656956380834127638791856333738872368854622194768025215237611323392\n", + "38478521676166483605741250097796497856523182881313912761668255277583712667477744737709244389536050430475222646784\n", + "76957043352332967211482500195592995713046365762627825523336510555167425334955489475418488779072100860950445293568\n", + "153914086704665934422965000391185991426092731525255651046673021110334850669910978950836977558144201721900890587136\n", + "307828173409331868845930000782371982852185463050511302093346042220669701339821957901673955116288403443801781174272\n", + "615656346818663737691860001564743965704370926101022604186692084441339402679643915803347910232576806887603562348544\n", + "1231312693637327475383720003129487931408741852202045208373384168882678805359287831606695820465153613775207124697088\n", + "2462625387274654950767440006258975862817483704404090416746768337765357610718575663213391640930307227550414249394176\n", + "4925250774549309901534880012517951725634967408808180833493536675530715221437151326426783281860614455100828498788352\n", + "9850501549098619803069760025035903451269934817616361666987073351061430442874302652853566563721228910201656997576704\n", + "19701003098197239606139520050071806902539869635232723333974146702122860885748605305707133127442457820403313995153408\n", + "39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816\n", + "78804012392788958424558080200287227610159478540930893335896586808491443542994421222828532509769831281613255980613632\n", + "157608024785577916849116160400574455220318957081861786671793173616982887085988842445657065019539662563226511961227264\n", + "315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528\n", + "630432099142311667396464641602297820881275828327447146687172694467931548343955369782628260078158650252906047844909056\n", + "1260864198284623334792929283204595641762551656654894293374345388935863096687910739565256520156317300505812095689818112\n", + "2521728396569246669585858566409191283525103313309788586748690777871726193375821479130513040312634601011624191379636224\n", + "5043456793138493339171717132818382567050206626619577173497381555743452386751642958261026080625269202023248382759272448\n", + "10086913586276986678343434265636765134100413253239154346994763111486904773503285916522052161250538404046496765518544896\n", + "20173827172553973356686868531273530268200826506478308693989526222973809547006571833044104322501076808092993531037089792\n", + "40347654345107946713373737062547060536401653012956617387979052445947619094013143666088208645002153616185987062074179584\n", + "80695308690215893426747474125094121072803306025913234775958104891895238188026287332176417290004307232371974124148359168\n", + "161390617380431786853494948250188242145606612051826469551916209783790476376052574664352834580008614464743948248296718336\n", + "322781234760863573706989896500376484291213224103652939103832419567580952752105149328705669160017228929487896496593436672\n", + "645562469521727147413979793000752968582426448207305878207664839135161905504210298657411338320034457858975792993186873344\n", + "1291124939043454294827959586001505937164852896414611756415329678270323811008420597314822676640068915717951585986373746688\n", + "2582249878086908589655919172003011874329705792829223512830659356540647622016841194629645353280137831435903171972747493376\n", + "5164499756173817179311838344006023748659411585658447025661318713081295244033682389259290706560275662871806343945494986752\n", + "10328999512347634358623676688012047497318823171316894051322637426162590488067364778518581413120551325743612687890989973504\n", + "20657999024695268717247353376024094994637646342633788102645274852325180976134729557037162826241102651487225375781979947008\n", + "41315998049390537434494706752048189989275292685267576205290549704650361952269459114074325652482205302974450751563959894016\n", + "82631996098781074868989413504096379978550585370535152410581099409300723904538918228148651304964410605948901503127919788032\n", + "165263992197562149737978827008192759957101170741070304821162198818601447809077836456297302609928821211897803006255839576064\n", + "330527984395124299475957654016385519914202341482140609642324397637202895618155672912594605219857642423795606012511679152128\n", + "661055968790248598951915308032771039828404682964281219284648795274405791236311345825189210439715284847591212025023358304256\n", + "1322111937580497197903830616065542079656809365928562438569297590548811582472622691650378420879430569695182424050046716608512\n", + "2644223875160994395807661232131084159313618731857124877138595181097623164945245383300756841758861139390364848100093433217024\n", + "5288447750321988791615322464262168318627237463714249754277190362195246329890490766601513683517722278780729696200186866434048\n", + "10576895500643977583230644928524336637254474927428499508554380724390492659780981533203027367035444557561459392400373732868096\n", + "21153791001287955166461289857048673274508949854856999017108761448780985319561963066406054734070889115122918784800747465736192\n", + "42307582002575910332922579714097346549017899709713998034217522897561970639123926132812109468141778230245837569601494931472384\n", + "84615164005151820665845159428194693098035799419427996068435045795123941278247852265624218936283556460491675139202989862944768\n", + "169230328010303641331690318856389386196071598838855992136870091590247882556495704531248437872567112920983350278405979725889536\n", + "338460656020607282663380637712778772392143197677711984273740183180495765112991409062496875745134225841966700556811959451779072\n", + "676921312041214565326761275425557544784286395355423968547480366360991530225982818124993751490268451683933401113623918903558144\n", + "1353842624082429130653522550851115089568572790710847937094960732721983060451965636249987502980536903367866802227247837807116288\n", + "2707685248164858261307045101702230179137145581421695874189921465443966120903931272499975005961073806735733604454495675614232576\n", + "5415370496329716522614090203404460358274291162843391748379842930887932241807862544999950011922147613471467208908991351228465152\n", + "10830740992659433045228180406808920716548582325686783496759685861775864483615725089999900023844295226942934417817982702456930304\n", + "21661481985318866090456360813617841433097164651373566993519371723551728967231450179999800047688590453885868835635965404913860608\n", + "43322963970637732180912721627235682866194329302747133987038743447103457934462900359999600095377180907771737671271930809827721216\n", + "86645927941275464361825443254471365732388658605494267974077486894206915868925800719999200190754361815543475342543861619655442432\n", + "173291855882550928723650886508942731464777317210988535948154973788413831737851601439998400381508723631086950685087723239310884864\n", + "346583711765101857447301773017885462929554634421977071896309947576827663475703202879996800763017447262173901370175446478621769728\n", + "693167423530203714894603546035770925859109268843954143792619895153655326951406405759993601526034894524347802740350892957243539456\n", + "1386334847060407429789207092071541851718218537687908287585239790307310653902812811519987203052069789048695605480701785914487078912\n", + "2772669694120814859578414184143083703436437075375816575170479580614621307805625623039974406104139578097391210961403571828974157824\n", + "5545339388241629719156828368286167406872874150751633150340959161229242615611251246079948812208279156194782421922807143657948315648\n", + "11090678776483259438313656736572334813745748301503266300681918322458485231222502492159897624416558312389564843845614287315896631296\n", + "22181357552966518876627313473144669627491496603006532601363836644916970462445004984319795248833116624779129687691228574631793262592\n", + "44362715105933037753254626946289339254982993206013065202727673289833940924890009968639590497666233249558259375382457149263586525184\n", + "88725430211866075506509253892578678509965986412026130405455346579667881849780019937279180995332466499116518750764914298527173050368\n", + "177450860423732151013018507785157357019931972824052260810910693159335763699560039874558361990664932998233037501529828597054346100736\n", + "354901720847464302026037015570314714039863945648104521621821386318671527399120079749116723981329865996466075003059657194108692201472\n", + "709803441694928604052074031140629428079727891296209043243642772637343054798240159498233447962659731992932150006119314388217384402944\n", + "1419606883389857208104148062281258856159455782592418086487285545274686109596480318996466895925319463985864300012238628776434768805888\n", + "2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776\n", + "5678427533559428832416592249125035424637823130369672345949142181098744438385921275985867583701277855943457200048954515105739075223552\n", + "11356855067118857664833184498250070849275646260739344691898284362197488876771842551971735167402555711886914400097909030211478150447104\n", + "22713710134237715329666368996500141698551292521478689383796568724394977753543685103943470334805111423773828800195818060422956300894208\n", + "45427420268475430659332737993000283397102585042957378767593137448789955507087370207886940669610222847547657600391636120845912601788416\n", + "90854840536950861318665475986000566794205170085914757535186274897579911014174740415773881339220445695095315200783272241691825203576832\n", + "181709681073901722637330951972001133588410340171829515070372549795159822028349480831547762678440891390190630401566544483383650407153664\n", + "363419362147803445274661903944002267176820680343659030140745099590319644056698961663095525356881782780381260803133088966767300814307328\n", + "726838724295606890549323807888004534353641360687318060281490199180639288113397923326191050713763565560762521606266177933534601628614656\n", + "1453677448591213781098647615776009068707282721374636120562980398361278576226795846652382101427527131121525043212532355867069203257229312\n", + "2907354897182427562197295231552018137414565442749272241125960796722557152453591693304764202855054262243050086425064711734138406514458624\n", + "5814709794364855124394590463104036274829130885498544482251921593445114304907183386609528405710108524486100172850129423468276813028917248\n", + "11629419588729710248789180926208072549658261770997088964503843186890228609814366773219056811420217048972200345700258846936553626057834496\n", + "23258839177459420497578361852416145099316523541994177929007686373780457219628733546438113622840434097944400691400517693873107252115668992\n", + "46517678354918840995156723704832290198633047083988355858015372747560914439257467092876227245680868195888801382801035387746214504231337984\n", + "93035356709837681990313447409664580397266094167976711716030745495121828878514934185752454491361736391777602765602070775492429008462675968\n", + "186070713419675363980626894819329160794532188335953423432061490990243657757029868371504908982723472783555205531204141550984858016925351936\n", + "372141426839350727961253789638658321589064376671906846864122981980487315514059736743009817965446945567110411062408283101969716033850703872\n", + "744282853678701455922507579277316643178128753343813693728245963960974631028119473486019635930893891134220822124816566203939432067701407744\n", + "1488565707357402911845015158554633286356257506687627387456491927921949262056238946972039271861787782268441644249633132407878864135402815488\n", + "2977131414714805823690030317109266572712515013375254774912983855843898524112477893944078543723575564536883288499266264815757728270805630976\n", + "5954262829429611647380060634218533145425030026750509549825967711687797048224955787888157087447151129073766576998532529631515456541611261952\n", + "11908525658859223294760121268437066290850060053501019099651935423375594096449911575776314174894302258147533153997065059263030913083222523904\n", + "23817051317718446589520242536874132581700120107002038199303870846751188192899823151552628349788604516295066307994130118526061826166445047808\n", + "47634102635436893179040485073748265163400240214004076398607741693502376385799646303105256699577209032590132615988260237052123652332890095616\n", + "95268205270873786358080970147496530326800480428008152797215483387004752771599292606210513399154418065180265231976520474104247304665780191232\n", + "190536410541747572716161940294993060653600960856016305594430966774009505543198585212421026798308836130360530463953040948208494609331560382464\n", + "381072821083495145432323880589986121307201921712032611188861933548019011086397170424842053596617672260721060927906081896416989218663120764928\n", + "762145642166990290864647761179972242614403843424065222377723867096038022172794340849684107193235344521442121855812163792833978437326241529856\n", + "1524291284333980581729295522359944485228807686848130444755447734192076044345588681699368214386470689042884243711624327585667956874652483059712\n", + "3048582568667961163458591044719888970457615373696260889510895468384152088691177363398736428772941378085768487423248655171335913749304966119424\n", + "6097165137335922326917182089439777940915230747392521779021790936768304177382354726797472857545882756171536974846497310342671827498609932238848\n", + "12194330274671844653834364178879555881830461494785043558043581873536608354764709453594945715091765512343073949692994620685343654997219864477696\n", + "24388660549343689307668728357759111763660922989570087116087163747073216709529418907189891430183531024686147899385989241370687309994439728955392\n", + "48777321098687378615337456715518223527321845979140174232174327494146433419058837814379782860367062049372295798771978482741374619988879457910784\n", + "97554642197374757230674913431036447054643691958280348464348654988292866838117675628759565720734124098744591597543956965482749239977758915821568\n", + "195109284394749514461349826862072894109287383916560696928697309976585733676235351257519131441468248197489183195087913930965498479955517831643136\n", + "390218568789499028922699653724145788218574767833121393857394619953171467352470702515038262882936496394978366390175827861930996959911035663286272\n", + "780437137578998057845399307448291576437149535666242787714789239906342934704941405030076525765872992789956732780351655723861993919822071326572544\n", + "1560874275157996115690798614896583152874299071332485575429578479812685869409882810060153051531745985579913465560703311447723987839644142653145088\n", + "3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176\n", + "6243497100631984462763194459586332611497196285329942301718313919250743477639531240240612206126983942319653862242813245790895951358576570612580352\n", + "12486994201263968925526388919172665222994392570659884603436627838501486955279062480481224412253967884639307724485626491581791902717153141225160704\n", + "24973988402527937851052777838345330445988785141319769206873255677002973910558124960962448824507935769278615448971252983163583805434306282450321408\n", + "49947976805055875702105555676690660891977570282639538413746511354005947821116249921924897649015871538557230897942505966327167610868612564900642816\n", + "99895953610111751404211111353381321783955140565279076827493022708011895642232499843849795298031743077114461795885011932654335221737225129801285632\n", + "199791907220223502808422222706762643567910281130558153654986045416023791284464999687699590596063486154228923591770023865308670443474450259602571264\n", + "399583814440447005616844445413525287135820562261116307309972090832047582568929999375399181192126972308457847183540047730617340886948900519205142528\n", + "799167628880894011233688890827050574271641124522232614619944181664095165137859998750798362384253944616915694367080095461234681773897801038410285056\n", + "1598335257761788022467377781654101148543282249044465229239888363328190330275719997501596724768507889233831388734160190922469363547795602076820570112\n", + "3196670515523576044934755563308202297086564498088930458479776726656380660551439995003193449537015778467662777468320381844938727095591204153641140224\n", + "6393341031047152089869511126616404594173128996177860916959553453312761321102879990006386899074031556935325554936640763689877454191182408307282280448\n", + "12786682062094304179739022253232809188346257992355721833919106906625522642205759980012773798148063113870651109873281527379754908382364816614564560896\n", + "25573364124188608359478044506465618376692515984711443667838213813251045284411519960025547596296126227741302219746563054759509816764729633229129121792\n", + "51146728248377216718956089012931236753385031969422887335676427626502090568823039920051095192592252455482604439493126109519019633529459266458258243584\n", + "102293456496754433437912178025862473506770063938845774671352855253004181137646079840102190385184504910965208878986252219038039267058918532916516487168\n", + "204586912993508866875824356051724947013540127877691549342705710506008362275292159680204380770369009821930417757972504438076078534117837065833032974336\n", + "409173825987017733751648712103449894027080255755383098685411421012016724550584319360408761540738019643860835515945008876152157068235674131666065948672\n", + "818347651974035467503297424206899788054160511510766197370822842024033449101168638720817523081476039287721671031890017752304314136471348263332131897344\n", + "1636695303948070935006594848413799576108321023021532394741645684048066898202337277441635046162952078575443342063780035504608628272942696526664263794688\n", + "3273390607896141870013189696827599152216642046043064789483291368096133796404674554883270092325904157150886684127560071009217256545885393053328527589376\n", + "6546781215792283740026379393655198304433284092086129578966582736192267592809349109766540184651808314301773368255120142018434513091770786106657055178752\n", + "13093562431584567480052758787310396608866568184172259157933165472384535185618698219533080369303616628603546736510240284036869026183541572213314110357504\n", + "26187124863169134960105517574620793217733136368344518315866330944769070371237396439066160738607233257207093473020480568073738052367083144426628220715008\n", + "52374249726338269920211035149241586435466272736689036631732661889538140742474792878132321477214466514414186946040961136147476104734166288853256441430016\n", + "104748499452676539840422070298483172870932545473378073263465323779076281484949585756264642954428933028828373892081922272294952209468332577706512882860032\n", + "209496998905353079680844140596966345741865090946756146526930647558152562969899171512529285908857866057656747784163844544589904418936665155413025765720064\n", + "418993997810706159361688281193932691483730181893512293053861295116305125939798343025058571817715732115313495568327689089179808837873330310826051531440128\n", + "837987995621412318723376562387865382967460363787024586107722590232610251879596686050117143635431464230626991136655378178359617675746660621652103062880256\n", + "1675975991242824637446753124775730765934920727574049172215445180465220503759193372100234287270862928461253982273310756356719235351493321243304206125760512\n", + "3351951982485649274893506249551461531869841455148098344430890360930441007518386744200468574541725856922507964546621512713438470702986642486608412251521024\n", + "6703903964971298549787012499102923063739682910296196688861780721860882015036773488400937149083451713845015929093243025426876941405973284973216824503042048\n", + "13407807929942597099574024998205846127479365820592393377723561443721764030073546976801874298166903427690031858186486050853753882811946569946433649006084096\n", + "26815615859885194199148049996411692254958731641184786755447122887443528060147093953603748596333806855380063716372972101707507765623893139892867298012168192\n", + "53631231719770388398296099992823384509917463282369573510894245774887056120294187907207497192667613710760127432745944203415015531247786279785734596024336384\n", + "107262463439540776796592199985646769019834926564739147021788491549774112240588375814414994385335227421520254865491888406830031062495572559571469192048672768\n", + "214524926879081553593184399971293538039669853129478294043576983099548224481176751628829988770670454843040509730983776813660062124991145119142938384097345536\n", + "429049853758163107186368799942587076079339706258956588087153966199096448962353503257659977541340909686081019461967553627320124249982290238285876768194691072\n", + "858099707516326214372737599885174152158679412517913176174307932398192897924707006515319955082681819372162038923935107254640248499964580476571753536389382144\n", + "1716199415032652428745475199770348304317358825035826352348615864796385795849414013030639910165363638744324077847870214509280496999929160953143507072778764288\n", + "3432398830065304857490950399540696608634717650071652704697231729592771591698828026061279820330727277488648155695740429018560993999858321906287014145557528576\n", + "6864797660130609714981900799081393217269435300143305409394463459185543183397656052122559640661454554977296311391480858037121987999716643812574028291115057152\n", + "13729595320261219429963801598162786434538870600286610818788926918371086366795312104245119281322909109954592622782961716074243975999433287625148056582230114304\n", + "27459190640522438859927603196325572869077741200573221637577853836742172733590624208490238562645818219909185245565923432148487951998866575250296113164460228608\n", + "54918381281044877719855206392651145738155482401146443275155707673484345467181248416980477125291636439818370491131846864296975903997733150500592226328920457216\n", + "109836762562089755439710412785302291476310964802292886550311415346968690934362496833960954250583272879636740982263693728593951807995466301001184452657840914432\n", + "219673525124179510879420825570604582952621929604585773100622830693937381868724993667921908501166545759273481964527387457187903615990932602002368905315681828864\n", + "439347050248359021758841651141209165905243859209171546201245661387874763737449987335843817002333091518546963929054774914375807231981865204004737810631363657728\n", + "878694100496718043517683302282418331810487718418343092402491322775749527474899974671687634004666183037093927858109549828751614463963730408009475621262727315456\n", + "1757388200993436087035366604564836663620975436836686184804982645551499054949799949343375268009332366074187855716219099657503228927927460816018951242525454630912\n", + "3514776401986872174070733209129673327241950873673372369609965291102998109899599898686750536018664732148375711432438199315006457855854921632037902485050909261824\n", + "7029552803973744348141466418259346654483901747346744739219930582205996219799199797373501072037329464296751422864876398630012915711709843264075804970101818523648\n", + "14059105607947488696282932836518693308967803494693489478439861164411992439598399594747002144074658928593502845729752797260025831423419686528151609940203637047296\n", + "28118211215894977392565865673037386617935606989386978956879722328823984879196799189494004288149317857187005691459505594520051662846839373056303219880407274094592\n", + "56236422431789954785131731346074773235871213978773957913759444657647969758393598378988008576298635714374011382919011189040103325693678746112606439760814548189184\n", + "112472844863579909570263462692149546471742427957547915827518889315295939516787196757976017152597271428748022765838022378080206651387357492225212879521629096378368\n", + "224945689727159819140526925384299092943484855915095831655037778630591879033574393515952034305194542857496045531676044756160413302774714984450425759043258192756736\n", + "449891379454319638281053850768598185886969711830191663310075557261183758067148787031904068610389085714992091063352089512320826605549429968900851518086516385513472\n", + "899782758908639276562107701537196371773939423660383326620151114522367516134297574063808137220778171429984182126704179024641653211098859937801703036173032771026944\n", + "1799565517817278553124215403074392743547878847320766653240302229044735032268595148127616274441556342859968364253408358049283306422197719875603406072346065542053888\n", + "3599131035634557106248430806148785487095757694641533306480604458089470064537190296255232548883112685719936728506816716098566612844395439751206812144692131084107776\n", + "7198262071269114212496861612297570974191515389283066612961208916178940129074380592510465097766225371439873457013633432197133225688790879502413624289384262168215552\n", + "14396524142538228424993723224595141948383030778566133225922417832357880258148761185020930195532450742879746914027266864394266451377581759004827248578768524336431104\n", + "28793048285076456849987446449190283896766061557132266451844835664715760516297522370041860391064901485759493828054533728788532902755163518009654497157537048672862208\n", + "57586096570152913699974892898380567793532123114264532903689671329431521032595044740083720782129802971518987656109067457577065805510327036019308994315074097345724416\n", + "115172193140305827399949785796761135587064246228529065807379342658863042065190089480167441564259605943037975312218134915154131611020654072038617988630148194691448832\n", + "230344386280611654799899571593522271174128492457058131614758685317726084130380178960334883128519211886075950624436269830308263222041308144077235977260296389382897664\n", + "460688772561223309599799143187044542348256984914116263229517370635452168260760357920669766257038423772151901248872539660616526444082616288154471954520592778765795328\n", + "921377545122446619199598286374089084696513969828232526459034741270904336521520715841339532514076847544303802497745079321233052888165232576308943909041185557531590656\n", + "1842755090244893238399196572748178169393027939656465052918069482541808673043041431682679065028153695088607604995490158642466105776330465152617887818082371115063181312\n", + "3685510180489786476798393145496356338786055879312930105836138965083617346086082863365358130056307390177215209990980317284932211552660930305235775636164742230126362624\n", + "7371020360979572953596786290992712677572111758625860211672277930167234692172165726730716260112614780354430419981960634569864423105321860610471551272329484460252725248\n", + "14742040721959145907193572581985425355144223517251720423344555860334469384344331453461432520225229560708860839963921269139728846210643721220943102544658968920505450496\n", + "29484081443918291814387145163970850710288447034503440846689111720668938768688662906922865040450459121417721679927842538279457692421287442441886205089317937841010900992\n", + "58968162887836583628774290327941701420576894069006881693378223441337877537377325813845730080900918242835443359855685076558915384842574884883772410178635875682021801984\n", + "117936325775673167257548580655883402841153788138013763386756446882675755074754651627691460161801836485670886719711370153117830769685149769767544820357271751364043603968\n", + "235872651551346334515097161311766805682307576276027526773512893765351510149509303255382920323603672971341773439422740306235661539370299539535089640714543502728087207936\n", + "471745303102692669030194322623533611364615152552055053547025787530703020299018606510765840647207345942683546878845480612471323078740599079070179281429087005456174415872\n", + "943490606205385338060388645247067222729230305104110107094051575061406040598037213021531681294414691885367093757690961224942646157481198158140358562858174010912348831744\n", + "1886981212410770676120777290494134445458460610208220214188103150122812081196074426043063362588829383770734187515381922449885292314962396316280717125716348021824697663488\n", + "3773962424821541352241554580988268890916921220416440428376206300245624162392148852086126725177658767541468375030763844899770584629924792632561434251432696043649395326976\n", + "7547924849643082704483109161976537781833842440832880856752412600491248324784297704172253450355317535082936750061527689799541169259849585265122868502865392087298790653952\n", + "15095849699286165408966218323953075563667684881665761713504825200982496649568595408344506900710635070165873500123055379599082338519699170530245737005730784174597581307904\n", + "30191699398572330817932436647906151127335369763331523427009650401964993299137190816689013801421270140331747000246110759198164677039398341060491474011461568349195162615808\n", + "60383398797144661635864873295812302254670739526663046854019300803929986598274381633378027602842540280663494000492221518396329354078796682120982948022923136698390325231616\n", + "120766797594289323271729746591624604509341479053326093708038601607859973196548763266756055205685080561326988000984443036792658708157593364241965896045846273396780650463232\n", + "241533595188578646543459493183249209018682958106652187416077203215719946393097526533512110411370161122653976001968886073585317416315186728483931792091692546793561300926464\n", + "483067190377157293086918986366498418037365916213304374832154406431439892786195053067024220822740322245307952003937772147170634832630373456967863584183385093587122601852928\n", + "966134380754314586173837972732996836074731832426608749664308812862879785572390106134048441645480644490615904007875544294341269665260746913935727168366770187174245203705856\n", + "1932268761508629172347675945465993672149463664853217499328617625725759571144780212268096883290961288981231808015751088588682539330521493827871454336733540374348490407411712\n", + "3864537523017258344695351890931987344298927329706434998657235251451519142289560424536193766581922577962463616031502177177365078661042987655742908673467080748696980814823424\n", + "7729075046034516689390703781863974688597854659412869997314470502903038284579120849072387533163845155924927232063004354354730157322085975311485817346934161497393961629646848\n", + "15458150092069033378781407563727949377195709318825739994628941005806076569158241698144775066327690311849854464126008708709460314644171950622971634693868322994787923259293696\n", + "30916300184138066757562815127455898754391418637651479989257882011612153138316483396289550132655380623699708928252017417418920629288343901245943269387736645989575846518587392\n", + "61832600368276133515125630254911797508782837275302959978515764023224306276632966792579100265310761247399417856504034834837841258576687802491886538775473291979151693037174784\n", + "123665200736552267030251260509823595017565674550605919957031528046448612553265933585158200530621522494798835713008069669675682517153375604983773077550946583958303386074349568\n", + "247330401473104534060502521019647190035131349101211839914063056092897225106531867170316401061243044989597671426016139339351365034306751209967546155101893167916606772148699136\n", + "494660802946209068121005042039294380070262698202423679828126112185794450213063734340632802122486089979195342852032278678702730068613502419935092310203786335833213544297398272\n", + "989321605892418136242010084078588760140525396404847359656252224371588900426127468681265604244972179958390685704064557357405460137227004839870184620407572671666427088594796544\n", + "1978643211784836272484020168157177520281050792809694719312504448743177800852254937362531208489944359916781371408129114714810920274454009679740369240815145343332854177189593088\n", + "3957286423569672544968040336314355040562101585619389438625008897486355601704509874725062416979888719833562742816258229429621840548908019359480738481630290686665708354379186176\n", + "7914572847139345089936080672628710081124203171238778877250017794972711203409019749450124833959777439667125485632516458859243681097816038718961476963260581373331416708758372352\n", + "15829145694278690179872161345257420162248406342477557754500035589945422406818039498900249667919554879334250971265032917718487362195632077437922953926521162746662833417516744704\n", + "31658291388557380359744322690514840324496812684955115509000071179890844813636078997800499335839109758668501942530065835436974724391264154875845907853042325493325666835033489408\n", + "63316582777114760719488645381029680648993625369910231018000142359781689627272157995600998671678219517337003885060131670873949448782528309751691815706084650986651333670066978816\n", + "126633165554229521438977290762059361297987250739820462036000284719563379254544315991201997343356439034674007770120263341747898897565056619503383631412169301973302667340133957632\n", + "253266331108459042877954581524118722595974501479640924072000569439126758509088631982403994686712878069348015540240526683495797795130113239006767262824338603946605334680267915264\n", + "506532662216918085755909163048237445191949002959281848144001138878253517018177263964807989373425756138696031080481053366991595590260226478013534525648677207893210669360535830528\n", + "1013065324433836171511818326096474890383898005918563696288002277756507034036354527929615978746851512277392062160962106733983191180520452956027069051297354415786421338721071661056\n", + "2026130648867672343023636652192949780767796011837127392576004555513014068072709055859231957493703024554784124321924213467966382361040905912054138102594708831572842677442143322112\n", + "4052261297735344686047273304385899561535592023674254785152009111026028136145418111718463914987406049109568248643848426935932764722081811824108276205189417663145685354884286644224\n", + "8104522595470689372094546608771799123071184047348509570304018222052056272290836223436927829974812098219136497287696853871865529444163623648216552410378835326291370709768573288448\n", + "16209045190941378744189093217543598246142368094697019140608036444104112544581672446873855659949624196438272994575393707743731058888327247296433104820757670652582741419537146576896\n", + "32418090381882757488378186435087196492284736189394038281216072888208225089163344893747711319899248392876545989150787415487462117776654494592866209641515341305165482839074293153792\n", + "64836180763765514976756372870174392984569472378788076562432145776416450178326689787495422639798496785753091978301574830974924235553308989185732419283030682610330965678148586307584\n", + "129672361527531029953512745740348785969138944757576153124864291552832900356653379574990845279596993571506183956603149661949848471106617978371464838566061365220661931356297172615168\n", + "259344723055062059907025491480697571938277889515152306249728583105665800713306759149981690559193987143012367913206299323899696942213235956742929677132122730441323862712594345230336\n", + "518689446110124119814050982961395143876555779030304612499457166211331601426613518299963381118387974286024735826412598647799393884426471913485859354264245460882647725425188690460672\n", + "1037378892220248239628101965922790287753111558060609224998914332422663202853227036599926762236775948572049471652825197295598787768852943826971718708528490921765295450850377380921344\n", + "2074757784440496479256203931845580575506223116121218449997828664845326405706454073199853524473551897144098943305650394591197575537705887653943437417056981843530590901700754761842688\n", + "4149515568880992958512407863691161151012446232242436899995657329690652811412908146399707048947103794288197886611300789182395151075411775307886874834113963687061181803401509523685376\n", + "8299031137761985917024815727382322302024892464484873799991314659381305622825816292799414097894207588576395773222601578364790302150823550615773749668227927374122363606803019047370752\n", + "16598062275523971834049631454764644604049784928969747599982629318762611245651632585598828195788415177152791546445203156729580604301647101231547499336455854748244727213606038094741504\n", + "33196124551047943668099262909529289208099569857939495199965258637525222491303265171197656391576830354305583092890406313459161208603294202463094998672911709496489454427212076189483008\n", + "66392249102095887336198525819058578416199139715878990399930517275050444982606530342395312783153660708611166185780812626918322417206588404926189997345823418992978908854424152378966016\n", + "132784498204191774672397051638117156832398279431757980799861034550100889965213060684790625566307321417222332371561625253836644834413176809852379994691646837985957817708848304757932032\n", + "265568996408383549344794103276234313664796558863515961599722069100201779930426121369581251132614642834444664743123250507673289668826353619704759989383293675971915635417696609515864064\n", + "531137992816767098689588206552468627329593117727031923199444138200403559860852242739162502265229285668889329486246501015346579337652707239409519978766587351943831270835393219031728128\n", + "1062275985633534197379176413104937254659186235454063846398888276400807119721704485478325004530458571337778658972493002030693158675305414478819039957533174703887662541670786438063456256\n", + "2124551971267068394758352826209874509318372470908127692797776552801614239443408970956650009060917142675557317944986004061386317350610828957638079915066349407775325083341572876126912512\n", + "4249103942534136789516705652419749018636744941816255385595553105603228478886817941913300018121834285351114635889972008122772634701221657915276159830132698815550650166683145752253825024\n", + "8498207885068273579033411304839498037273489883632510771191106211206456957773635883826600036243668570702229271779944016245545269402443315830552319660265397631101300333366291504507650048\n", + "16996415770136547158066822609678996074546979767265021542382212422412913915547271767653200072487337141404458543559888032491090538804886631661104639320530795262202600666732583009015300096\n", + "33992831540273094316133645219357992149093959534530043084764424844825827831094543535306400144974674282808917087119776064982181077609773263322209278641061590524405201333465166018030600192\n", + "67985663080546188632267290438715984298187919069060086169528849689651655662189087070612800289949348565617834174239552129964362155219546526644418557282123181048810402666930332036061200384\n", + "135971326161092377264534580877431968596375838138120172339057699379303311324378174141225600579898697131235668348479104259928724310439093053288837114564246362097620805333860664072122400768\n", + "271942652322184754529069161754863937192751676276240344678115398758606622648756348282451201159797394262471336696958208519857448620878186106577674229128492724195241610667721328144244801536\n", + "543885304644369509058138323509727874385503352552480689356230797517213245297512696564902402319594788524942673393916417039714897241756372213155348458256985448390483221335442656288489603072\n", + "1087770609288739018116276647019455748771006705104961378712461595034426490595025393129804804639189577049885346787832834079429794483512744426310696916513970896780966442670885312576979206144\n", + "2175541218577478036232553294038911497542013410209922757424923190068852981190050786259609609278379154099770693575665668158859588967025488852621393833027941793561932885341770625153958412288\n", + "4351082437154956072465106588077822995084026820419845514849846380137705962380101572519219218556758308199541387151331336317719177934050977705242787666055883587123865770683541250307916824576\n", + "8702164874309912144930213176155645990168053640839691029699692760275411924760203145038438437113516616399082774302662672635438355868101955410485575332111767174247731541367082500615833649152\n", + "17404329748619824289860426352311291980336107281679382059399385520550823849520406290076876874227033232798165548605325345270876711736203910820971150664223534348495463082734165001231667298304\n", + "34808659497239648579720852704622583960672214563358764118798771041101647699040812580153753748454066465596331097210650690541753423472407821641942301328447068696990926165468330002463334596608\n", + "69617318994479297159441705409245167921344429126717528237597542082203295398081625160307507496908132931192662194421301381083506846944815643283884602656894137393981852330936660004926669193216\n", + "139234637988958594318883410818490335842688858253435056475195084164406590796163250320615014993816265862385324388842602762167013693889631286567769205313788274787963704661873320009853338386432\n", + "278469275977917188637766821636980671685377716506870112950390168328813181592326500641230029987632531724770648777685205524334027387779262573135538410627576549575927409323746640019706676772864\n", + "556938551955834377275533643273961343370755433013740225900780336657626363184653001282460059975265063449541297555370411048668054775558525146271076821255153099151854818647493280039413353545728\n", + "1113877103911668754551067286547922686741510866027480451801560673315252726369306002564920119950530126899082595110740822097336109551117050292542153642510306198303709637294986560078826707091456\n", + "2227754207823337509102134573095845373483021732054960903603121346630505452738612005129840239901060253798165190221481644194672219102234100585084307285020612396607419274589973120157653414182912\n", + "4455508415646675018204269146191690746966043464109921807206242693261010905477224010259680479802120507596330380442963288389344438204468201170168614570041224793214838549179946240315306828365824\n", + "8911016831293350036408538292383381493932086928219843614412485386522021810954448020519360959604241015192660760885926576778688876408936402340337229140082449586429677098359892480630613656731648\n", + "17822033662586700072817076584766762987864173856439687228824970773044043621908896041038721919208482030385321521771853153557377752817872804680674458280164899172859354196719784961261227313463296\n", + "35644067325173400145634153169533525975728347712879374457649941546088087243817792082077443838416964060770643043543706307114755505635745609361348916560329798345718708393439569922522454626926592\n", + "71288134650346800291268306339067051951456695425758748915299883092176174487635584164154887676833928121541286087087412614229511011271491218722697833120659596691437416786879139845044909253853184\n", + "142576269300693600582536612678134103902913390851517497830599766184352348975271168328309775353667856243082572174174825228459022022542982437445395666241319193382874833573758279690089818507706368\n", + "285152538601387201165073225356268207805826781703034995661199532368704697950542336656619550707335712486165144348349650456918044045085964874890791332482638386765749667147516559380179637015412736\n", + "570305077202774402330146450712536415611653563406069991322399064737409395901084673313239101414671424972330288696699300913836088090171929749781582664965276773531499334295033118760359274030825472\n", + "1140610154405548804660292901425072831223307126812139982644798129474818791802169346626478202829342849944660577393398601827672176180343859499563165329930553547062998668590066237520718548061650944\n", + "2281220308811097609320585802850145662446614253624279965289596258949637583604338693252956405658685699889321154786797203655344352360687718999126330659861107094125997337180132475041437096123301888\n", + "4562440617622195218641171605700291324893228507248559930579192517899275167208677386505912811317371399778642309573594407310688704721375437998252661319722214188251994674360264950082874192246603776\n", + "9124881235244390437282343211400582649786457014497119861158385035798550334417354773011825622634742799557284619147188814621377409442750875996505322639444428376503989348720529900165748384493207552\n", + "18249762470488780874564686422801165299572914028994239722316770071597100668834709546023651245269485599114569238294377629242754818885501751993010645278888856753007978697441059800331496768986415104\n", + "36499524940977561749129372845602330599145828057988479444633540143194201337669419092047302490538971198229138476588755258485509637771003503986021290557777713506015957394882119600662993537972830208\n", + "72999049881955123498258745691204661198291656115976958889267080286388402675338838184094604981077942396458276953177510516971019275542007007972042581115555427012031914789764239201325987075945660416\n", + "145998099763910246996517491382409322396583312231953917778534160572776805350677676368189209962155884792916553906355021033942038551084014015944085162231110854024063829579528478402651974151891320832\n", + "291996199527820493993034982764818644793166624463907835557068321145553610701355352736378419924311769585833107812710042067884077102168028031888170324462221708048127659159056956805303948303782641664\n", + "583992399055640987986069965529637289586333248927815671114136642291107221402710705472756839848623539171666215625420084135768154204336056063776340648924443416096255318318113913610607896607565283328\n", + "1167984798111281975972139931059274579172666497855631342228273284582214442805421410945513679697247078343332431250840168271536308408672112127552681297848886832192510636636227827221215793215130566656\n", + "2335969596222563951944279862118549158345332995711262684456546569164428885610842821891027359394494156686664862501680336543072616817344224255105362595697773664385021273272455654442431586430261133312\n", + "4671939192445127903888559724237098316690665991422525368913093138328857771221685643782054718788988313373329725003360673086145233634688448510210725191395547328770042546544911308884863172860522266624\n", + "9343878384890255807777119448474196633381331982845050737826186276657715542443371287564109437577976626746659450006721346172290467269376897020421450382791094657540085093089822617769726345721044533248\n", + "18687756769780511615554238896948393266762663965690101475652372553315431084886742575128218875155953253493318900013442692344580934538753794040842900765582189315080170186179645235539452691442089066496\n", + "37375513539561023231108477793896786533525327931380202951304745106630862169773485150256437750311906506986637800026885384689161869077507588081685801531164378630160340372359290471078905382884178132992\n", + "74751027079122046462216955587793573067050655862760405902609490213261724339546970300512875500623813013973275600053770769378323738155015176163371603062328757260320680744718580942157810765768356265984\n", + "149502054158244092924433911175587146134101311725520811805218980426523448679093940601025751001247626027946551200107541538756647476310030352326743206124657514520641361489437161884315621531536712531968\n", + "299004108316488185848867822351174292268202623451041623610437960853046897358187881202051502002495252055893102400215083077513294952620060704653486412249315029041282722978874323768631243063073425063936\n", + "598008216632976371697735644702348584536405246902083247220875921706093794716375762404103004004990504111786204800430166155026589905240121409306972824498630058082565445957748647537262486126146850127872\n", + "1196016433265952743395471289404697169072810493804166494441751843412187589432751524808206008009981008223572409600860332310053179810480242818613945648997260116165130891915497295074524972252293700255744\n", + "2392032866531905486790942578809394338145620987608332988883503686824375178865503049616412016019962016447144819201720664620106359620960485637227891297994520232330261783830994590149049944504587400511488\n", + "4784065733063810973581885157618788676291241975216665977767007373648750357731006099232824032039924032894289638403441329240212719241920971274455782595989040464660523567661989180298099889009174801022976\n", + "9568131466127621947163770315237577352582483950433331955534014747297500715462012198465648064079848065788579276806882658480425438483841942548911565191978080929321047135323978360596199778018349602045952\n", + "19136262932255243894327540630475154705164967900866663911068029494595001430924024396931296128159696131577158553613765316960850876967683885097823130383956161858642094270647956721192399556036699204091904\n", + "38272525864510487788655081260950309410329935801733327822136058989190002861848048793862592256319392263154317107227530633921701753935367770195646260767912323717284188541295913442384799112073398408183808\n", + "76545051729020975577310162521900618820659871603466655644272117978380005723696097587725184512638784526308634214455061267843403507870735540391292521535824647434568377082591826884769598224146796816367616\n", + "153090103458041951154620325043801237641319743206933311288544235956760011447392195175450369025277569052617268428910122535686807015741471080782585043071649294869136754165183653769539196448293593632735232\n", + "306180206916083902309240650087602475282639486413866622577088471913520022894784390350900738050555138105234536857820245071373614031482942161565170086143298589738273508330367307539078392896587187265470464\n", + "612360413832167804618481300175204950565278972827733245154176943827040045789568780701801476101110276210469073715640490142747228062965884323130340172286597179476547016660734615078156785793174374530940928\n", + "1224720827664335609236962600350409901130557945655466490308353887654080091579137561403602952202220552420938147431280980285494456125931768646260680344573194358953094033321469230156313571586348749061881856\n", + "2449441655328671218473925200700819802261115891310932980616707775308160183158275122807205904404441104841876294862561960570988912251863537292521360689146388717906188066642938460312627143172697498123763712\n", + "4898883310657342436947850401401639604522231782621865961233415550616320366316550245614411808808882209683752589725123921141977824503727074585042721378292777435812376133285876920625254286345394996247527424\n", + "9797766621314684873895700802803279209044463565243731922466831101232640732633100491228823617617764419367505179450247842283955649007454149170085442756585554871624752266571753841250508572690789992495054848\n", + "19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696\n", + "39191066485258739495582803211213116836177854260974927689867324404930562930532401964915294470471057677470020717800991369135822596029816596680341771026342219486499009066287015365002034290763159969980219392\n", + "78382132970517478991165606422426233672355708521949855379734648809861125861064803929830588940942115354940041435601982738271645192059633193360683542052684438972998018132574030730004068581526319939960438784\n", + "156764265941034957982331212844852467344711417043899710759469297619722251722129607859661177881884230709880082871203965476543290384119266386721367084105368877945996036265148061460008137163052639879920877568\n", + "313528531882069915964662425689704934689422834087799421518938595239444503444259215719322355763768461419760165742407930953086580768238532773442734168210737755891992072530296122920016274326105279759841755136\n", + "627057063764139831929324851379409869378845668175598843037877190478889006888518431438644711527536922839520331484815861906173161536477065546885468336421475511783984145060592245840032548652210559519683510272\n", + "1254114127528279663858649702758819738757691336351197686075754380957778013777036862877289423055073845679040662969631723812346323072954131093770936672842951023567968290121184491680065097304421119039367020544\n", + "2508228255056559327717299405517639477515382672702395372151508761915556027554073725754578846110147691358081325939263447624692646145908262187541873345685902047135936580242368983360130194608842238078734041088\n", + "5016456510113118655434598811035278955030765345404790744303017523831112055108147451509157692220295382716162651878526895249385292291816524375083746691371804094271873160484737966720260389217684476157468082176\n", + "10032913020226237310869197622070557910061530690809581488606035047662224110216294903018315384440590765432325303757053790498770584583633048750167493382743608188543746320969475933440520778435368952314936164352\n", + "20065826040452474621738395244141115820123061381619162977212070095324448220432589806036630768881181530864650607514107580997541169167266097500334986765487216377087492641938951866881041556870737904629872328704\n", + "40131652080904949243476790488282231640246122763238325954424140190648896440865179612073261537762363061729301215028215161995082338334532195000669973530974432754174985283877903733762083113741475809259744657408\n", + "80263304161809898486953580976564463280492245526476651908848280381297792881730359224146523075524726123458602430056430323990164676669064390001339947061948865508349970567755807467524166227482951618519489314816\n", + "160526608323619796973907161953128926560984491052953303817696560762595585763460718448293046151049452246917204860112860647980329353338128780002679894123897731016699941135511614935048332454965903237038978629632\n", + "321053216647239593947814323906257853121968982105906607635393121525191171526921436896586092302098904493834409720225721295960658706676257560005359788247795462033399882271023229870096664909931806474077957259264\n", + "642106433294479187895628647812515706243937964211813215270786243050382343053842873793172184604197808987668819440451442591921317413352515120010719576495590924066799764542046459740193329819863612948155914518528\n", + "1284212866588958375791257295625031412487875928423626430541572486100764686107685747586344369208395617975337638880902885183842634826705030240021439152991181848133599529084092919480386659639727225896311829037056\n", + "2568425733177916751582514591250062824975751856847252861083144972201529372215371495172688738416791235950675277761805770367685269653410060480042878305982363696267199058168185838960773319279454451792623658074112\n", + "5136851466355833503165029182500125649951503713694505722166289944403058744430742990345377476833582471901350555523611540735370539306820120960085756611964727392534398116336371677921546638558908903585247316148224\n", + "10273702932711667006330058365000251299903007427389011444332579888806117488861485980690754953667164943802701111047223081470741078613640241920171513223929454785068796232672743355843093277117817807170494632296448\n", + "20547405865423334012660116730000502599806014854778022888665159777612234977722971961381509907334329887605402222094446162941482157227280483840343026447858909570137592465345486711686186554235635614340989264592896\n", + "41094811730846668025320233460001005199612029709556045777330319555224469955445943922763019814668659775210804444188892325882964314454560967680686052895717819140275184930690973423372373108471271228681978529185792\n", + "82189623461693336050640466920002010399224059419112091554660639110448939910891887845526039629337319550421608888377784651765928628909121935361372105791435638280550369861381946846744746216942542457363957058371584\n", + "164379246923386672101280933840004020798448118838224183109321278220897879821783775691052079258674639100843217776755569303531857257818243870722744211582871276561100739722763893693489492433885084914727914116743168\n", + "328758493846773344202561867680008041596896237676448366218642556441795759643567551382104158517349278201686435553511138607063714515636487741445488423165742553122201479445527787386978984867770169829455828233486336\n", + "657516987693546688405123735360016083193792475352896732437285112883591519287135102764208317034698556403372871107022277214127429031272975482890976846331485106244402958891055574773957969735540339658911656466972672\n", + "1315033975387093376810247470720032166387584950705793464874570225767183038574270205528416634069397112806745742214044554428254858062545950965781953692662970212488805917782111149547915939471080679317823312933945344\n", + "2630067950774186753620494941440064332775169901411586929749140451534366077148540411056833268138794225613491484428089108856509716125091901931563907385325940424977611835564222299095831878942161358635646625867890688\n", + "5260135901548373507240989882880128665550339802823173859498280903068732154297080822113666536277588451226982968856178217713019432250183803863127814770651880849955223671128444598191663757884322717271293251735781376\n", + "10520271803096747014481979765760257331100679605646347718996561806137464308594161644227333072555176902453965937712356435426038864500367607726255629541303761699910447342256889196383327515768645434542586503471562752\n", + "21040543606193494028963959531520514662201359211292695437993123612274928617188323288454666145110353804907931875424712870852077729000735215452511259082607523399820894684513778392766655031537290869085173006943125504\n", + "42081087212386988057927919063041029324402718422585390875986247224549857234376646576909332290220707609815863750849425741704155458001470430905022518165215046799641789369027556785533310063074581738170346013886251008\n", + "84162174424773976115855838126082058648805436845170781751972494449099714468753293153818664580441415219631727501698851483408310916002940861810045036330430093599283578738055113571066620126149163476340692027772502016\n", + "168324348849547952231711676252164117297610873690341563503944988898199428937506586307637329160882830439263455003397702966816621832005881723620090072660860187198567157476110227142133240252298326952681384055545004032\n", + "336648697699095904463423352504328234595221747380683127007889977796398857875013172615274658321765660878526910006795405933633243664011763447240180145321720374397134314952220454284266480504596653905362768111090008064\n", + "673297395398191808926846705008656469190443494761366254015779955592797715750026345230549316643531321757053820013590811867266487328023526894480360290643440748794268629904440908568532961009193307810725536222180016128\n", + "1346594790796383617853693410017312938380886989522732508031559911185595431500052690461098633287062643514107640027181623734532974656047053788960720581286881497588537259808881817137065922018386615621451072444360032256\n", + "2693189581592767235707386820034625876761773979045465016063119822371190863000105380922197266574125287028215280054363247469065949312094107577921441162573762995177074519617763634274131844036773231242902144888720064512\n", + "5386379163185534471414773640069251753523547958090930032126239644742381726000210761844394533148250574056430560108726494938131898624188215155842882325147525990354149039235527268548263688073546462485804289777440129024\n", + "10772758326371068942829547280138503507047095916181860064252479289484763452000421523688789066296501148112861120217452989876263797248376430311685764650295051980708298078471054537096527376147092924971608579554880258048\n", + "21545516652742137885659094560277007014094191832363720128504958578969526904000843047377578132593002296225722240434905979752527594496752860623371529300590103961416596156942109074193054752294185849943217159109760516096\n", + "43091033305484275771318189120554014028188383664727440257009917157939053808001686094755156265186004592451444480869811959505055188993505721246743058601180207922833192313884218148386109504588371699886434318219521032192\n", + "86182066610968551542636378241108028056376767329454880514019834315878107616003372189510312530372009184902888961739623919010110377987011442493486117202360415845666384627768436296772219009176743399772868636439042064384\n", + "172364133221937103085272756482216056112753534658909761028039668631756215232006744379020625060744018369805777923479247838020220755974022884986972234404720831691332769255536872593544438018353486799545737272878084128768\n", + "344728266443874206170545512964432112225507069317819522056079337263512430464013488758041250121488036739611555846958495676040441511948045769973944468809441663382665538511073745187088876036706973599091474545756168257536\n", + "689456532887748412341091025928864224451014138635639044112158674527024860928026977516082500242976073479223111693916991352080883023896091539947888937618883326765331077022147490374177752073413947198182949091512336515072\n", + "1378913065775496824682182051857728448902028277271278088224317349054049721856053955032165000485952146958446223387833982704161766047792183079895777875237766653530662154044294980748355504146827894396365898183024673030144\n", + "2757826131550993649364364103715456897804056554542556176448634698108099443712107910064330000971904293916892446775667965408323532095584366159791555750475533307061324308088589961496711008293655788792731796366049346060288\n", + "5515652263101987298728728207430913795608113109085112352897269396216198887424215820128660001943808587833784893551335930816647064191168732319583111500951066614122648616177179922993422016587311577585463592732098692120576\n", + "11031304526203974597457456414861827591216226218170224705794538792432397774848431640257320003887617175667569787102671861633294128382337464639166223001902133228245297232354359845986844033174623155170927185464197384241152\n", + "22062609052407949194914912829723655182432452436340449411589077584864795549696863280514640007775234351335139574205343723266588256764674929278332446003804266456490594464708719691973688066349246310341854370928394768482304\n", + "44125218104815898389829825659447310364864904872680898823178155169729591099393726561029280015550468702670279148410687446533176513529349858556664892007608532912981188929417439383947376132698492620683708741856789536964608\n", + "88250436209631796779659651318894620729729809745361797646356310339459182198787453122058560031100937405340558296821374893066353027058699717113329784015217065825962377858834878767894752265396985241367417483713579073929216\n", + "176500872419263593559319302637789241459459619490723595292712620678918364397574906244117120062201874810681116593642749786132706054117399434226659568030434131651924755717669757535789504530793970482734834967427158147858432\n", + "353001744838527187118638605275578482918919238981447190585425241357836728795149812488234240124403749621362233187285499572265412108234798868453319136060868263303849511435339515071579009061587940965469669934854316295716864\n", + "706003489677054374237277210551156965837838477962894381170850482715673457590299624976468480248807499242724466374570999144530824216469597736906638272121736526607699022870679030143158018123175881930939339869708632591433728\n", + "1412006979354108748474554421102313931675676955925788762341700965431346915180599249952936960497614998485448932749141998289061648432939195473813276544243473053215398045741358060286316036246351763861878679739417265182867456\n", + "2824013958708217496949108842204627863351353911851577524683401930862693830361198499905873920995229996970897865498283996578123296865878390947626553088486946106430796091482716120572632072492703527723757359478834530365734912\n", + "5648027917416434993898217684409255726702707823703155049366803861725387660722396999811747841990459993941795730996567993156246593731756781895253106176973892212861592182965432241145264144985407055447514718957669060731469824\n", + "11296055834832869987796435368818511453405415647406310098733607723450775321444793999623495683980919987883591461993135986312493187463513563790506212353947784425723184365930864482290528289970814110895029437915338121462939648\n", + "22592111669665739975592870737637022906810831294812620197467215446901550642889587999246991367961839975767182923986271972624986374927027127581012424707895568851446368731861728964581056579941628221790058875830676242925879296\n", + "45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592\n", + "90368446678662959902371482950548091627243325179250480789868861787606202571558351996987965471847359903068731695945087890499945499708108510324049698831582275405785474927446915858324226319766512887160235503322704971703517184\n", + "180736893357325919804742965901096183254486650358500961579737723575212405143116703993975930943694719806137463391890175780999890999416217020648099397663164550811570949854893831716648452639533025774320471006645409943407034368\n", + "361473786714651839609485931802192366508973300717001923159475447150424810286233407987951861887389439612274926783780351561999781998832434041296198795326329101623141899709787663433296905279066051548640942013290819886814068736\n", + "722947573429303679218971863604384733017946601434003846318950894300849620572466815975903723774778879224549853567560703123999563997664868082592397590652658203246283799419575326866593810558132103097281884026581639773628137472\n", + "1445895146858607358437943727208769466035893202868007692637901788601699241144933631951807447549557758449099707135121406247999127995329736165184795181305316406492567598839150653733187621116264206194563768053163279547256274944\n", + "2891790293717214716875887454417538932071786405736015385275803577203398482289867263903614895099115516898199414270242812495998255990659472330369590362610632812985135197678301307466375242232528412389127536106326559094512549888\n", + "5783580587434429433751774908835077864143572811472030770551607154406796964579734527807229790198231033796398828540485624991996511981318944660739180725221265625970270395356602614932750484465056824778255072212653118189025099776\n", + "11567161174868858867503549817670155728287145622944061541103214308813593929159469055614459580396462067592797657080971249983993023962637889321478361450442531251940540790713205229865500968930113649556510144425306236378050199552\n", + "23134322349737717735007099635340311456574291245888123082206428617627187858318938111228919160792924135185595314161942499967986047925275778642956722900885062503881081581426410459731001937860227299113020288850612472756100399104\n", + "46268644699475435470014199270680622913148582491776246164412857235254375716637876222457838321585848270371190628323884999935972095850551557285913445801770125007762163162852820919462003875720454598226040577701224945512200798208\n", + "92537289398950870940028398541361245826297164983552492328825714470508751433275752444915676643171696540742381256647769999871944191701103114571826891603540250015524326325705641838924007751440909196452081155402449891024401596416\n", + "185074578797901741880056797082722491652594329967104984657651428941017502866551504889831353286343393081484762513295539999743888383402206229143653783207080500031048652651411283677848015502881818392904162310804899782048803192832\n", + "370149157595803483760113594165444983305188659934209969315302857882035005733103009779662706572686786162969525026591079999487776766804412458287307566414161000062097305302822567355696031005763636785808324621609799564097606385664\n", + "740298315191606967520227188330889966610377319868419938630605715764070011466206019559325413145373572325939050053182159998975553533608824916574615132828322000124194610605645134711392062011527273571616649243219599128195212771328\n", + "1480596630383213935040454376661779933220754639736839877261211431528140022932412039118650826290747144651878100106364319997951107067217649833149230265656644000248389221211290269422784124023054547143233298486439198256390425542656\n", + "2961193260766427870080908753323559866441509279473679754522422863056280045864824078237301652581494289303756200212728639995902214134435299666298460531313288000496778442422580538845568248046109094286466596972878396512780851085312\n", + "5922386521532855740161817506647119732883018558947359509044845726112560091729648156474603305162988578607512400425457279991804428268870599332596921062626576000993556884845161077691136496092218188572933193945756793025561702170624\n", + "11844773043065711480323635013294239465766037117894719018089691452225120183459296312949206610325977157215024800850914559983608856537741198665193842125253152001987113769690322155382272992184436377145866387891513586051123404341248\n", + "23689546086131422960647270026588478931532074235789438036179382904450240366918592625898413220651954314430049601701829119967217713075482397330387684250506304003974227539380644310764545984368872754291732775783027172102246808682496\n", + "47379092172262845921294540053176957863064148471578876072358765808900480733837185251796826441303908628860099203403658239934435426150964794660775368501012608007948455078761288621529091968737745508583465551566054344204493617364992\n", + "94758184344525691842589080106353915726128296943157752144717531617800961467674370503593652882607817257720198406807316479868870852301929589321550737002025216015896910157522577243058183937475491017166931103132108688408987234729984\n", + "189516368689051383685178160212707831452256593886315504289435063235601922935348741007187305765215634515440396813614632959737741704603859178643101474004050432031793820315045154486116367874950982034333862206264217376817974469459968\n", + "379032737378102767370356320425415662904513187772631008578870126471203845870697482014374611530431269030880793627229265919475483409207718357286202948008100864063587640630090308972232735749901964068667724412528434753635948938919936\n", + "758065474756205534740712640850831325809026375545262017157740252942407691741394964028749223060862538061761587254458531838950966818415436714572405896016201728127175281260180617944465471499803928137335448825056869507271897877839872\n", + "1516130949512411069481425281701662651618052751090524034315480505884815383482789928057498446121725076123523174508917063677901933636830873429144811792032403456254350562520361235888930942999607856274670897650113739014543795755679744\n", + "3032261899024822138962850563403325303236105502181048068630961011769630766965579856114996892243450152247046349017834127355803867273661746858289623584064806912508701125040722471777861885999215712549341795300227478029087591511359488\n", + "6064523798049644277925701126806650606472211004362096137261922023539261533931159712229993784486900304494092698035668254711607734547323493716579247168129613825017402250081444943555723771998431425098683590600454956058175183022718976\n", + "12129047596099288555851402253613301212944422008724192274523844047078523067862319424459987568973800608988185396071336509423215469094646987433158494336259227650034804500162889887111447543996862850197367181200909912116350366045437952\n", + "24258095192198577111702804507226602425888844017448384549047688094157046135724638848919975137947601217976370792142673018846430938189293974866316988672518455300069609000325779774222895087993725700394734362401819824232700732090875904\n", + "48516190384397154223405609014453204851777688034896769098095376188314092271449277697839950275895202435952741584285346037692861876378587949732633977345036910600139218000651559548445790175987451400789468724803639648465401464181751808\n", + "97032380768794308446811218028906409703555376069793538196190752376628184542898555395679900551790404871905483168570692075385723752757175899465267954690073821200278436001303119096891580351974902801578937449607279296930802928363503616\n", + "194064761537588616893622436057812819407110752139587076392381504753256369085797110791359801103580809743810966337141384150771447505514351798930535909380147642400556872002606238193783160703949805603157874899214558593861605856727007232\n", + "388129523075177233787244872115625638814221504279174152784763009506512738171594221582719602207161619487621932674282768301542895011028703597861071818760295284801113744005212476387566321407899611206315749798429117187723211713454014464\n", + "776259046150354467574489744231251277628443008558348305569526019013025476343188443165439204414323238975243865348565536603085790022057407195722143637520590569602227488010424952775132642815799222412631499596858234375446423426908028928\n", + "1552518092300708935148979488462502555256886017116696611139052038026050952686376886330878408828646477950487730697131073206171580044114814391444287275041181139204454976020849905550265285631598444825262999193716468750892846853816057856\n", + "3105036184601417870297958976925005110513772034233393222278104076052101905372753772661756817657292955900975461394262146412343160088229628782888574550082362278408909952041699811100530571263196889650525998387432937501785693707632115712\n", + "6210072369202835740595917953850010221027544068466786444556208152104203810745507545323513635314585911801950922788524292824686320176459257565777149100164724556817819904083399622201061142526393779301051996774865875003571387415264231424\n", + "12420144738405671481191835907700020442055088136933572889112416304208407621491015090647027270629171823603901845577048585649372640352918515131554298200329449113635639808166799244402122285052787558602103993549731750007142774830528462848\n", + "24840289476811342962383671815400040884110176273867145778224832608416815242982030181294054541258343647207803691154097171298745280705837030263108596400658898227271279616333598488804244570105575117204207987099463500014285549661056925696\n", + "49680578953622685924767343630800081768220352547734291556449665216833630485964060362588109082516687294415607382308194342597490561411674060526217192801317796454542559232667196977608489140211150234408415974198927000028571099322113851392\n", + "99361157907245371849534687261600163536440705095468583112899330433667260971928120725176218165033374588831214764616388685194981122823348121052434385602635592909085118465334393955216978280422300468816831948397854000057142198644227702784\n", + "198722315814490743699069374523200327072881410190937166225798660867334521943856241450352436330066749177662429529232777370389962245646696242104868771205271185818170236930668787910433956560844600937633663896795708000114284397288455405568\n", + "397444631628981487398138749046400654145762820381874332451597321734669043887712482900704872660133498355324859058465554740779924491293392484209737542410542371636340473861337575820867913121689201875267327793591416000228568794576910811136\n", + "794889263257962974796277498092801308291525640763748664903194643469338087775424965801409745320266996710649718116931109481559848982586784968419475084821084743272680947722675151641735826243378403750534655587182832000457137589153821622272\n", + "1589778526515925949592554996185602616583051281527497329806389286938676175550849931602819490640533993421299436233862218963119697965173569936838950169642169486545361895445350303283471652486756807501069311174365664000914275178307643244544\n", + "3179557053031851899185109992371205233166102563054994659612778573877352351101699863205638981281067986842598872467724437926239395930347139873677900339284338973090723790890700606566943304973513615002138622348731328001828550356615286489088\n", + "6359114106063703798370219984742410466332205126109989319225557147754704702203399726411277962562135973685197744935448875852478791860694279747355800678568677946181447581781401213133886609947027230004277244697462656003657100713230572978176\n", + "12718228212127407596740439969484820932664410252219978638451114295509409404406799452822555925124271947370395489870897751704957583721388559494711601357137355892362895163562802426267773219894054460008554489394925312007314201426461145956352\n", + "25436456424254815193480879938969641865328820504439957276902228591018818808813598905645111850248543894740790979741795503409915167442777118989423202714274711784725790327125604852535546439788108920017108978789850624014628402852922291912704\n", + "50872912848509630386961759877939283730657641008879914553804457182037637617627197811290223700497087789481581959483591006819830334885554237978846405428549423569451580654251209705071092879576217840034217957579701248029256805705844583825408\n", + "101745825697019260773923519755878567461315282017759829107608914364075275235254395622580447400994175578963163918967182013639660669771108475957692810857098847138903161308502419410142185759152435680068435915159402496058513611411689167650816\n", + "203491651394038521547847039511757134922630564035519658215217828728150550470508791245160894801988351157926327837934364027279321339542216951915385621714197694277806322617004838820284371518304871360136871830318804992117027222823378335301632\n", + "406983302788077043095694079023514269845261128071039316430435657456301100941017582490321789603976702315852655675868728054558642679084433903830771243428395388555612645234009677640568743036609742720273743660637609984234054445646756670603264\n", + "813966605576154086191388158047028539690522256142078632860871314912602201882035164980643579207953404631705311351737456109117285358168867807661542486856790777111225290468019355281137486073219485440547487321275219968468108891293513341206528\n", + "1627933211152308172382776316094057079381044512284157265721742629825204403764070329961287158415906809263410622703474912218234570716337735615323084973713581554222450580936038710562274972146438970881094974642550439936936217782587026682413056\n", + "3255866422304616344765552632188114158762089024568314531443485259650408807528140659922574316831813618526821245406949824436469141432675471230646169947427163108444901161872077421124549944292877941762189949285100879873872435565174053364826112\n", + "6511732844609232689531105264376228317524178049136629062886970519300817615056281319845148633663627237053642490813899648872938282865350942461292339894854326216889802323744154842249099888585755883524379898570201759747744871130348106729652224\n", + "13023465689218465379062210528752456635048356098273258125773941038601635230112562639690297267327254474107284981627799297745876565730701884922584679789708652433779604647488309684498199777171511767048759797140403519495489742260696213459304448\n", + "26046931378436930758124421057504913270096712196546516251547882077203270460225125279380594534654508948214569963255598595491753131461403769845169359579417304867559209294976619368996399554343023534097519594280807038990979484521392426918608896\n", + "52093862756873861516248842115009826540193424393093032503095764154406540920450250558761189069309017896429139926511197190983506262922807539690338719158834609735118418589953238737992799108686047068195039188561614077981958969042784853837217792\n", + "104187725513747723032497684230019653080386848786186065006191528308813081840900501117522378138618035792858279853022394381967012525845615079380677438317669219470236837179906477475985598217372094136390078377123228155963917938085569707674435584\n", + "208375451027495446064995368460039306160773697572372130012383056617626163681801002235044756277236071585716559706044788763934025051691230158761354876635338438940473674359812954951971196434744188272780156754246456311927835876171139415348871168\n", + "416750902054990892129990736920078612321547395144744260024766113235252327363602004470089512554472143171433119412089577527868050103382460317522709753270676877880947348719625909903942392869488376545560313508492912623855671752342278830697742336\n", + "833501804109981784259981473840157224643094790289488520049532226470504654727204008940179025108944286342866238824179155055736100206764920635045419506541353755761894697439251819807884785738976753091120627016985825247711343504684557661395484672\n", + "1667003608219963568519962947680314449286189580578977040099064452941009309454408017880358050217888572685732477648358310111472200413529841270090839013082707511523789394878503639615769571477953506182241254033971650495422687009369115322790969344\n", + "3334007216439927137039925895360628898572379161157954080198128905882018618908816035760716100435777145371464955296716620222944400827059682540181678026165415023047578789757007279231539142955907012364482508067943300990845374018738230645581938688\n", + "6668014432879854274079851790721257797144758322315908160396257811764037237817632071521432200871554290742929910593433240445888801654119365080363356052330830046095157579514014558463078285911814024728965016135886601981690748037476461291163877376\n", + "13336028865759708548159703581442515594289516644631816320792515623528074475635264143042864401743108581485859821186866480891777603308238730160726712104661660092190315159028029116926156571823628049457930032271773203963381496074952922582327754752\n", + "26672057731519417096319407162885031188579033289263632641585031247056148951270528286085728803486217162971719642373732961783555206616477460321453424209323320184380630318056058233852313143647256098915860064543546407926762992149905845164655509504\n", + "53344115463038834192638814325770062377158066578527265283170062494112297902541056572171457606972434325943439284747465923567110413232954920642906848418646640368761260636112116467704626287294512197831720129087092815853525984299811690329311019008\n", + "106688230926077668385277628651540124754316133157054530566340124988224595805082113144342915213944868651886878569494931847134220826465909841285813696837293280737522521272224232935409252574589024395663440258174185631707051968599623380658622038016\n", + "213376461852155336770555257303080249508632266314109061132680249976449191610164226288685830427889737303773757138989863694268441652931819682571627393674586561475045042544448465870818505149178048791326880516348371263414103937199246761317244076032\n", + "426752923704310673541110514606160499017264532628218122265360499952898383220328452577371660855779474607547514277979727388536883305863639365143254787349173122950090085088896931741637010298356097582653761032696742526828207874398493522634488152064\n", + "853505847408621347082221029212320998034529065256436244530720999905796766440656905154743321711558949215095028555959454777073766611727278730286509574698346245900180170177793863483274020596712195165307522065393485053656415748796987045268976304128\n", + "1707011694817242694164442058424641996069058130512872489061441999811593532881313810309486643423117898430190057111918909554147533223454557460573019149396692491800360340355587726966548041193424390330615044130786970107312831497593974090537952608256\n", + "3414023389634485388328884116849283992138116261025744978122883999623187065762627620618973286846235796860380114223837819108295066446909114921146038298793384983600720680711175453933096082386848780661230088261573940214625662995187948181075905216512\n", + "6828046779268970776657768233698567984276232522051489956245767999246374131525255241237946573692471593720760228447675638216590132893818229842292076597586769967201441361422350907866192164773697561322460176523147880429251325990375896362151810433024\n", + "13656093558537941553315536467397135968552465044102979912491535998492748263050510482475893147384943187441520456895351276433180265787636459684584153195173539934402882722844701815732384329547395122644920353046295760858502651980751792724303620866048\n", + "27312187117075883106631072934794271937104930088205959824983071996985496526101020964951786294769886374883040913790702552866360531575272919369168306390347079868805765445689403631464768659094790245289840706092591521717005303961503585448607241732096\n", + "54624374234151766213262145869588543874209860176411919649966143993970993052202041929903572589539772749766081827581405105732721063150545838738336612780694159737611530891378807262929537318189580490579681412185183043434010607923007170897214483464192\n", + "109248748468303532426524291739177087748419720352823839299932287987941986104404083859807145179079545499532163655162810211465442126301091677476673225561388319475223061782757614525859074636379160981159362824370366086868021215846014341794428966928384\n", + "218497496936607064853048583478354175496839440705647678599864575975883972208808167719614290358159090999064327310325620422930884252602183354953346451122776638950446123565515229051718149272758321962318725648740732173736042431692028683588857933856768\n", + "436994993873214129706097166956708350993678881411295357199729151951767944417616335439228580716318181998128654620651240845861768505204366709906692902245553277900892247131030458103436298545516643924637451297481464347472084863384057367177715867713536\n", + "873989987746428259412194333913416701987357762822590714399458303903535888835232670878457161432636363996257309241302481691723537010408733419813385804491106555801784494262060916206872597091033287849274902594962928694944169726768114734355431735427072\n", + "1747979975492856518824388667826833403974715525645181428798916607807071777670465341756914322865272727992514618482604963383447074020817466839626771608982213111603568988524121832413745194182066575698549805189925857389888339453536229468710863470854144\n", + "3495959950985713037648777335653666807949431051290362857597833215614143555340930683513828645730545455985029236965209926766894148041634933679253543217964426223207137977048243664827490388364133151397099610379851714779776678907072458937421726941708288\n", + "6991919901971426075297554671307333615898862102580725715195666431228287110681861367027657291461090911970058473930419853533788296083269867358507086435928852446414275954096487329654980776728266302794199220759703429559553357814144917874843453883416576\n", + "13983839803942852150595109342614667231797724205161451430391332862456574221363722734055314582922181823940116947860839707067576592166539734717014172871857704892828551908192974659309961553456532605588398441519406859119106715628289835749686907766833152\n", + "27967679607885704301190218685229334463595448410322902860782665724913148442727445468110629165844363647880233895721679414135153184333079469434028345743715409785657103816385949318619923106913065211176796883038813718238213431256579671499373815533666304\n", + "55935359215771408602380437370458668927190896820645805721565331449826296885454890936221258331688727295760467791443358828270306368666158938868056691487430819571314207632771898637239846213826130422353593766077627436476426862513159342998747631067332608\n", + "111870718431542817204760874740917337854381793641291611443130662899652593770909781872442516663377454591520935582886717656540612737332317877736113382974861639142628415265543797274479692427652260844707187532155254872952853725026318685997495262134665216\n", + "223741436863085634409521749481834675708763587282583222886261325799305187541819563744885033326754909183041871165773435313081225474664635755472226765949723278285256830531087594548959384855304521689414375064310509745905707450052637371994990524269330432\n", + "447482873726171268819043498963669351417527174565166445772522651598610375083639127489770066653509818366083742331546870626162450949329271510944453531899446556570513661062175189097918769710609043378828750128621019491811414900105274743989981048538660864\n", + "894965747452342537638086997927338702835054349130332891545045303197220750167278254979540133307019636732167484663093741252324901898658543021888907063798893113141027322124350378195837539421218086757657500257242038983622829800210549487979962097077321728\n", + "1789931494904685075276173995854677405670108698260665783090090606394441500334556509959080266614039273464334969326187482504649803797317086043777814127597786226282054644248700756391675078842436173515315000514484077967245659600421098975959924194154643456\n", + "3579862989809370150552347991709354811340217396521331566180181212788883000669113019918160533228078546928669938652374965009299607594634172087555628255195572452564109288497401512783350157684872347030630001028968155934491319200842197951919848388309286912\n", + "7159725979618740301104695983418709622680434793042663132360362425577766001338226039836321066456157093857339877304749930018599215189268344175111256510391144905128218576994803025566700315369744694061260002057936311868982638401684395903839696776618573824\n", + "14319451959237480602209391966837419245360869586085326264720724851155532002676452079672642132912314187714679754609499860037198430378536688350222513020782289810256437153989606051133400630739489388122520004115872623737965276803368791807679393553237147648\n", + "28638903918474961204418783933674838490721739172170652529441449702311064005352904159345284265824628375429359509218999720074396860757073376700445026041564579620512874307979212102266801261478978776245040008231745247475930553606737583615358787106474295296\n", + "57277807836949922408837567867349676981443478344341305058882899404622128010705808318690568531649256750858719018437999440148793721514146753400890052083129159241025748615958424204533602522957957552490080016463490494951861107213475167230717574212948590592\n", + "114555615673899844817675135734699353962886956688682610117765798809244256021411616637381137063298513501717438036875998880297587443028293506801780104166258318482051497231916848409067205045915915104980160032926980989903722214426950334461435148425897181184\n", + "229111231347799689635350271469398707925773913377365220235531597618488512042823233274762274126597027003434876073751997760595174886056587013603560208332516636964102994463833696818134410091831830209960320065853961979807444428853900668922870296851794362368\n", + "458222462695599379270700542938797415851547826754730440471063195236977024085646466549524548253194054006869752147503995521190349772113174027207120416665033273928205988927667393636268820183663660419920640131707923959614888857707801337845740593703588724736\n", + "916444925391198758541401085877594831703095653509460880942126390473954048171292933099049096506388108013739504295007991042380699544226348054414240833330066547856411977855334787272537640367327320839841280263415847919229777715415602675691481187407177449472\n", + "1832889850782397517082802171755189663406191307018921761884252780947908096342585866198098193012776216027479008590015982084761399088452696108828481666660133095712823955710669574545075280734654641679682560526831695838459555430831205351382962374814354898944\n", + "3665779701564795034165604343510379326812382614037843523768505561895816192685171732396196386025552432054958017180031964169522798176905392217656963333320266191425647911421339149090150561469309283359365121053663391676919110861662410702765924749628709797888\n", + "7331559403129590068331208687020758653624765228075687047537011123791632385370343464792392772051104864109916034360063928339045596353810784435313926666640532382851295822842678298180301122938618566718730242107326783353838221723324821405531849499257419595776\n", + "14663118806259180136662417374041517307249530456151374095074022247583264770740686929584785544102209728219832068720127856678091192707621568870627853333281064765702591645685356596360602245877237133437460484214653566707676443446649642811063698998514839191552\n", + "29326237612518360273324834748083034614499060912302748190148044495166529541481373859169571088204419456439664137440255713356182385415243137741255706666562129531405183291370713192721204491754474266874920968429307133415352886893299285622127397997029678383104\n", + "58652475225036720546649669496166069228998121824605496380296088990333059082962747718339142176408838912879328274880511426712364770830486275482511413333124259062810366582741426385442408983508948533749841936858614266830705773786598571244254795994059356766208\n", + "117304950450073441093299338992332138457996243649210992760592177980666118165925495436678284352817677825758656549761022853424729541660972550965022826666248518125620733165482852770884817967017897067499683873717228533661411547573197142488509591988118713532416\n", + "234609900900146882186598677984664276915992487298421985521184355961332236331850990873356568705635355651517313099522045706849459083321945101930045653332497036251241466330965705541769635934035794134999367747434457067322823095146394284977019183976237427064832\n", + "469219801800293764373197355969328553831984974596843971042368711922664472663701981746713137411270711303034626199044091413698918166643890203860091306664994072502482932661931411083539271868071588269998735494868914134645646190292788569954038367952474854129664\n", + "938439603600587528746394711938657107663969949193687942084737423845328945327403963493426274822541422606069252398088182827397836333287780407720182613329988145004965865323862822167078543736143176539997470989737828269291292380585577139908076735904949708259328\n", + "1876879207201175057492789423877314215327939898387375884169474847690657890654807926986852549645082845212138504796176365654795672666575560815440365226659976290009931730647725644334157087472286353079994941979475656538582584761171154279816153471809899416518656\n", + "3753758414402350114985578847754628430655879796774751768338949695381315781309615853973705099290165690424277009592352731309591345333151121630880730453319952580019863461295451288668314174944572706159989883958951313077165169522342308559632306943619798833037312\n", + "7507516828804700229971157695509256861311759593549503536677899390762631562619231707947410198580331380848554019184705462619182690666302243261761460906639905160039726922590902577336628349889145412319979767917902626154330339044684617119264613887239597666074624\n", + "15015033657609400459942315391018513722623519187099007073355798781525263125238463415894820397160662761697108038369410925238365381332604486523522921813279810320079453845181805154673256699778290824639959535835805252308660678089369234238529227774479195332149248\n", + "30030067315218800919884630782037027445247038374198014146711597563050526250476926831789640794321325523394216076738821850476730762665208973047045843626559620640158907690363610309346513399556581649279919071671610504617321356178738468477058455548958390664298496\n", + "60060134630437601839769261564074054890494076748396028293423195126101052500953853663579281588642651046788432153477643700953461525330417946094091687253119241280317815380727220618693026799113163298559838143343221009234642712357476936954116911097916781328596992\n", + "120120269260875203679538523128148109780988153496792056586846390252202105001907707327158563177285302093576864306955287401906923050660835892188183374506238482560635630761454441237386053598226326597119676286686442018469285424714953873908233822195833562657193984\n", + "240240538521750407359077046256296219561976306993584113173692780504404210003815414654317126354570604187153728613910574803813846101321671784376366749012476965121271261522908882474772107196452653194239352573372884036938570849429907747816467644391667125314387968\n", + "480481077043500814718154092512592439123952613987168226347385561008808420007630829308634252709141208374307457227821149607627692202643343568752733498024953930242542523045817764949544214392905306388478705146745768073877141698859815495632935288783334250628775936\n", + "960962154087001629436308185025184878247905227974336452694771122017616840015261658617268505418282416748614914455642299215255384405286687137505466996049907860485085046091635529899088428785810612776957410293491536147754283397719630991265870577566668501257551872\n", + "1921924308174003258872616370050369756495810455948672905389542244035233680030523317234537010836564833497229828911284598430510768810573374275010933992099815720970170092183271059798176857571621225553914820586983072295508566795439261982531741155133337002515103744\n", + "3843848616348006517745232740100739512991620911897345810779084488070467360061046634469074021673129666994459657822569196861021537621146748550021867984199631441940340184366542119596353715143242451107829641173966144591017133590878523965063482310266674005030207488\n", + "7687697232696013035490465480201479025983241823794691621558168976140934720122093268938148043346259333988919315645138393722043075242293497100043735968399262883880680368733084239192707430286484902215659282347932289182034267181757047930126964620533348010060414976\n", + "15375394465392026070980930960402958051966483647589383243116337952281869440244186537876296086692518667977838631290276787444086150484586994200087471936798525767761360737466168478385414860572969804431318564695864578364068534363514095860253929241066696020120829952\n", + "30750788930784052141961861920805916103932967295178766486232675904563738880488373075752592173385037335955677262580553574888172300969173988400174943873597051535522721474932336956770829721145939608862637129391729156728137068727028191720507858482133392040241659904\n", + "61501577861568104283923723841611832207865934590357532972465351809127477760976746151505184346770074671911354525161107149776344601938347976800349887747194103071045442949864673913541659442291879217725274258783458313456274137454056383441015716964266784080483319808\n", + "123003155723136208567847447683223664415731869180715065944930703618254955521953492303010368693540149343822709050322214299552689203876695953600699775494388206142090885899729347827083318884583758435450548517566916626912548274908112766882031433928533568160966639616\n", + "246006311446272417135694895366447328831463738361430131889861407236509911043906984606020737387080298687645418100644428599105378407753391907201399550988776412284181771799458695654166637769167516870901097035133833253825096549816225533764062867857067136321933279232\n", + "492012622892544834271389790732894657662927476722860263779722814473019822087813969212041474774160597375290836201288857198210756815506783814402799101977552824568363543598917391308333275538335033741802194070267666507650193099632451067528125735714134272643866558464\n", + "984025245785089668542779581465789315325854953445720527559445628946039644175627938424082949548321194750581672402577714396421513631013567628805598203955105649136727087197834782616666551076670067483604388140535333015300386199264902135056251471428268545287733116928\n", + "1968050491570179337085559162931578630651709906891441055118891257892079288351255876848165899096642389501163344805155428792843027262027135257611196407910211298273454174395669565233333102153340134967208776281070666030600772398529804270112502942856537090575466233856\n", + "3936100983140358674171118325863157261303419813782882110237782515784158576702511753696331798193284779002326689610310857585686054524054270515222392815820422596546908348791339130466666204306680269934417552562141332061201544797059608540225005885713074181150932467712\n", + "7872201966280717348342236651726314522606839627565764220475565031568317153405023507392663596386569558004653379220621715171372109048108541030444785631640845193093816697582678260933332408613360539868835105124282664122403089594119217080450011771426148362301864935424\n", + "15744403932561434696684473303452629045213679255131528440951130063136634306810047014785327192773139116009306758441243430342744218096217082060889571263281690386187633395165356521866664817226721079737670210248565328244806179188238434160900023542852296724603729870848\n", + "31488807865122869393368946606905258090427358510263056881902260126273268613620094029570654385546278232018613516882486860685488436192434164121779142526563380772375266790330713043733329634453442159475340420497130656489612358376476868321800047085704593449207459741696\n", + "62977615730245738786737893213810516180854717020526113763804520252546537227240188059141308771092556464037227033764973721370976872384868328243558285053126761544750533580661426087466659268906884318950680840994261312979224716752953736643600094171409186898414919483392\n", + "125955231460491477573475786427621032361709434041052227527609040505093074454480376118282617542185112928074454067529947442741953744769736656487116570106253523089501067161322852174933318537813768637901361681988522625958449433505907473287200188342818373796829838966784\n", + "251910462920982955146951572855242064723418868082104455055218081010186148908960752236565235084370225856148908135059894885483907489539473312974233140212507046179002134322645704349866637075627537275802723363977045251916898867011814946574400376685636747593659677933568\n", + "503820925841965910293903145710484129446837736164208910110436162020372297817921504473130470168740451712297816270119789770967814979078946625948466280425014092358004268645291408699733274151255074551605446727954090503833797734023629893148800753371273495187319355867136\n", + "1007641851683931820587806291420968258893675472328417820220872324040744595635843008946260940337480903424595632540239579541935629958157893251896932560850028184716008537290582817399466548302510149103210893455908181007667595468047259786297601506742546990374638711734272\n", + "2015283703367863641175612582841936517787350944656835640441744648081489191271686017892521880674961806849191265080479159083871259916315786503793865121700056369432017074581165634798933096605020298206421786911816362015335190936094519572595203013485093980749277423468544\n", + "4030567406735727282351225165683873035574701889313671280883489296162978382543372035785043761349923613698382530160958318167742519832631573007587730243400112738864034149162331269597866193210040596412843573823632724030670381872189039145190406026970187961498554846937088\n", + "8061134813471454564702450331367746071149403778627342561766978592325956765086744071570087522699847227396765060321916636335485039665263146015175460486800225477728068298324662539195732386420081192825687147647265448061340763744378078290380812053940375922997109693874176\n", + "16122269626942909129404900662735492142298807557254685123533957184651913530173488143140175045399694454793530120643833272670970079330526292030350920973600450955456136596649325078391464772840162385651374295294530896122681527488756156580761624107880751845994219387748352\n", + "32244539253885818258809801325470984284597615114509370247067914369303827060346976286280350090799388909587060241287666545341940158661052584060701841947200901910912273193298650156782929545680324771302748590589061792245363054977512313161523248215761503691988438775496704\n", + "64489078507771636517619602650941968569195230229018740494135828738607654120693952572560700181598777819174120482575333090683880317322105168121403683894401803821824546386597300313565859091360649542605497181178123584490726109955024626323046496431523007383976877550993408\n", + "128978157015543273035239205301883937138390460458037480988271657477215308241387905145121400363197555638348240965150666181367760634644210336242807367788803607643649092773194600627131718182721299085210994362356247168981452219910049252646092992863046014767953755101986816\n", + "257956314031086546070478410603767874276780920916074961976543314954430616482775810290242800726395111276696481930301332362735521269288420672485614735577607215287298185546389201254263436365442598170421988724712494337962904439820098505292185985726092029535907510203973632\n", + "515912628062173092140956821207535748553561841832149923953086629908861232965551620580485601452790222553392963860602664725471042538576841344971229471155214430574596371092778402508526872730885196340843977449424988675925808879640197010584371971452184059071815020407947264\n", + "1031825256124346184281913642415071497107123683664299847906173259817722465931103241160971202905580445106785927721205329450942085077153682689942458942310428861149192742185556805017053745461770392681687954898849977351851617759280394021168743942904368118143630040815894528\n", + "2063650512248692368563827284830142994214247367328599695812346519635444931862206482321942405811160890213571855442410658901884170154307365379884917884620857722298385484371113610034107490923540785363375909797699954703703235518560788042337487885808736236287260081631789056\n", + "4127301024497384737127654569660285988428494734657199391624693039270889863724412964643884811622321780427143710884821317803768340308614730759769835769241715444596770968742227220068214981847081570726751819595399909407406471037121576084674975771617472472574520163263578112\n", + "8254602048994769474255309139320571976856989469314398783249386078541779727448825929287769623244643560854287421769642635607536680617229461519539671538483430889193541937484454440136429963694163141453503639190799818814812942074243152169349951543234944945149040326527156224\n", + "16509204097989538948510618278641143953713978938628797566498772157083559454897651858575539246489287121708574843539285271215073361234458923039079343076966861778387083874968908880272859927388326282907007278381599637629625884148486304338699903086469889890298080653054312448\n", + "33018408195979077897021236557282287907427957877257595132997544314167118909795303717151078492978574243417149687078570542430146722468917846078158686153933723556774167749937817760545719854776652565814014556763199275259251768296972608677399806172939779780596161306108624896\n", + "66036816391958155794042473114564575814855915754515190265995088628334237819590607434302156985957148486834299374157141084860293444937835692156317372307867447113548335499875635521091439709553305131628029113526398550518503536593945217354799612345879559561192322612217249792\n", + "132073632783916311588084946229129151629711831509030380531990177256668475639181214868604313971914296973668598748314282169720586889875671384312634744615734894227096670999751271042182879419106610263256058227052797101037007073187890434709599224691759119122384645224434499584\n", + "264147265567832623176169892458258303259423663018060761063980354513336951278362429737208627943828593947337197496628564339441173779751342768625269489231469788454193341999502542084365758838213220526512116454105594202074014146375780869419198449383518238244769290448868999168\n", + "528294531135665246352339784916516606518847326036121522127960709026673902556724859474417255887657187894674394993257128678882347559502685537250538978462939576908386683999005084168731517676426441053024232908211188404148028292751561738838396898767036476489538580897737998336\n", + "1056589062271330492704679569833033213037694652072243044255921418053347805113449718948834511775314375789348789986514257357764695119005371074501077956925879153816773367998010168337463035352852882106048465816422376808296056585503123477676793797534072952979077161795475996672\n", + "2113178124542660985409359139666066426075389304144486088511842836106695610226899437897669023550628751578697579973028514715529390238010742149002155913851758307633546735996020336674926070705705764212096931632844753616592113171006246955353587595068145905958154323590951993344\n", + "4226356249085321970818718279332132852150778608288972177023685672213391220453798875795338047101257503157395159946057029431058780476021484298004311827703516615267093471992040673349852141411411528424193863265689507233184226342012493910707175190136291811916308647181903986688\n", + "8452712498170643941637436558664265704301557216577944354047371344426782440907597751590676094202515006314790319892114058862117560952042968596008623655407033230534186943984081346699704282822823056848387726531379014466368452684024987821414350380272583623832617294363807973376\n", + "16905424996341287883274873117328531408603114433155888708094742688853564881815195503181352188405030012629580639784228117724235121904085937192017247310814066461068373887968162693399408565645646113696775453062758028932736905368049975642828700760545167247665234588727615946752\n", + "33810849992682575766549746234657062817206228866311777416189485377707129763630391006362704376810060025259161279568456235448470243808171874384034494621628132922136747775936325386798817131291292227393550906125516057865473810736099951285657401521090334495330469177455231893504\n", + "67621699985365151533099492469314125634412457732623554832378970755414259527260782012725408753620120050518322559136912470896940487616343748768068989243256265844273495551872650773597634262582584454787101812251032115730947621472199902571314803042180668990660938354910463787008\n", + "135243399970730303066198984938628251268824915465247109664757941510828519054521564025450817507240240101036645118273824941793880975232687497536137978486512531688546991103745301547195268525165168909574203624502064231461895242944399805142629606084361337981321876709820927574016\n", + "270486799941460606132397969877256502537649830930494219329515883021657038109043128050901635014480480202073290236547649883587761950465374995072275956973025063377093982207490603094390537050330337819148407249004128462923790485888799610285259212168722675962643753419641855148032\n", + "540973599882921212264795939754513005075299661860988438659031766043314076218086256101803270028960960404146580473095299767175523900930749990144551913946050126754187964414981206188781074100660675638296814498008256925847580971777599220570518424337445351925287506839283710296064\n", + "1081947199765842424529591879509026010150599323721976877318063532086628152436172512203606540057921920808293160946190599534351047801861499980289103827892100253508375928829962412377562148201321351276593628996016513851695161943555198441141036848674890703850575013678567420592128\n", + "2163894399531684849059183759018052020301198647443953754636127064173256304872345024407213080115843841616586321892381199068702095603722999960578207655784200507016751857659924824755124296402642702553187257992033027703390323887110396882282073697349781407701150027357134841184256\n", + "4327788799063369698118367518036104040602397294887907509272254128346512609744690048814426160231687683233172643784762398137404191207445999921156415311568401014033503715319849649510248592805285405106374515984066055406780647774220793764564147394699562815402300054714269682368512\n", + "8655577598126739396236735036072208081204794589775815018544508256693025219489380097628852320463375366466345287569524796274808382414891999842312830623136802028067007430639699299020497185610570810212749031968132110813561295548441587529128294789399125630804600109428539364737024\n", + "17311155196253478792473470072144416162409589179551630037089016513386050438978760195257704640926750732932690575139049592549616764829783999684625661246273604056134014861279398598040994371221141620425498063936264221627122591096883175058256589578798251261609200218857078729474048\n", + "34622310392506957584946940144288832324819178359103260074178033026772100877957520390515409281853501465865381150278099185099233529659567999369251322492547208112268029722558797196081988742442283240850996127872528443254245182193766350116513179157596502523218400437714157458948096\n", + "69244620785013915169893880288577664649638356718206520148356066053544201755915040781030818563707002931730762300556198370198467059319135998738502644985094416224536059445117594392163977484884566481701992255745056886508490364387532700233026358315193005046436800875428314917896192\n", + "138489241570027830339787760577155329299276713436413040296712132107088403511830081562061637127414005863461524601112396740396934118638271997477005289970188832449072118890235188784327954969769132963403984511490113773016980728775065400466052716630386010092873601750856629835792384\n", + "276978483140055660679575521154310658598553426872826080593424264214176807023660163124123274254828011726923049202224793480793868237276543994954010579940377664898144237780470377568655909939538265926807969022980227546033961457550130800932105433260772020185747203501713259671584768\n", + "553956966280111321359151042308621317197106853745652161186848528428353614047320326248246548509656023453846098404449586961587736474553087989908021159880755329796288475560940755137311819879076531853615938045960455092067922915100261601864210866521544040371494407003426519343169536\n", + "1107913932560222642718302084617242634394213707491304322373697056856707228094640652496493097019312046907692196808899173923175472949106175979816042319761510659592576951121881510274623639758153063707231876091920910184135845830200523203728421733043088080742988814006853038686339072\n", + "2215827865120445285436604169234485268788427414982608644747394113713414456189281304992986194038624093815384393617798347846350945898212351959632084639523021319185153902243763020549247279516306127414463752183841820368271691660401046407456843466086176161485977628013706077372678144\n", + "4431655730240890570873208338468970537576854829965217289494788227426828912378562609985972388077248187630768787235596695692701891796424703919264169279046042638370307804487526041098494559032612254828927504367683640736543383320802092814913686932172352322971955256027412154745356288\n", + "8863311460481781141746416676937941075153709659930434578989576454853657824757125219971944776154496375261537574471193391385403783592849407838528338558092085276740615608975052082196989118065224509657855008735367281473086766641604185629827373864344704645943910512054824309490712576\n", + "17726622920963562283492833353875882150307419319860869157979152909707315649514250439943889552308992750523075148942386782770807567185698815677056677116184170553481231217950104164393978236130449019315710017470734562946173533283208371259654747728689409291887821024109648618981425152\n", + "35453245841927124566985666707751764300614838639721738315958305819414631299028500879887779104617985501046150297884773565541615134371397631354113354232368341106962462435900208328787956472260898038631420034941469125892347066566416742519309495457378818583775642048219297237962850304\n", + "70906491683854249133971333415503528601229677279443476631916611638829262598057001759775558209235971002092300595769547131083230268742795262708226708464736682213924924871800416657575912944521796077262840069882938251784694133132833485038618990914757637167551284096438594475925700608\n", + "141812983367708498267942666831007057202459354558886953263833223277658525196114003519551116418471942004184601191539094262166460537485590525416453416929473364427849849743600833315151825889043592154525680139765876503569388266265666970077237981829515274335102568192877188951851401216\n", + "283625966735416996535885333662014114404918709117773906527666446555317050392228007039102232836943884008369202383078188524332921074971181050832906833858946728855699699487201666630303651778087184309051360279531753007138776532531333940154475963659030548670205136385754377903702802432\n", + "567251933470833993071770667324028228809837418235547813055332893110634100784456014078204465673887768016738404766156377048665842149942362101665813667717893457711399398974403333260607303556174368618102720559063506014277553065062667880308951927318061097340410272771508755807405604864\n", + "1134503866941667986143541334648056457619674836471095626110665786221268201568912028156408931347775536033476809532312754097331684299884724203331627335435786915422798797948806666521214607112348737236205441118127012028555106130125335760617903854636122194680820545543017511614811209728\n", + "2269007733883335972287082669296112915239349672942191252221331572442536403137824056312817862695551072066953619064625508194663368599769448406663254670871573830845597595897613333042429214224697474472410882236254024057110212260250671521235807709272244389361641091086035023229622419456\n", + "4538015467766671944574165338592225830478699345884382504442663144885072806275648112625635725391102144133907238129251016389326737199538896813326509341743147661691195191795226666084858428449394948944821764472508048114220424520501343042471615418544488778723282182172070046459244838912\n", + "9076030935533343889148330677184451660957398691768765008885326289770145612551296225251271450782204288267814476258502032778653474399077793626653018683486295323382390383590453332169716856898789897889643528945016096228440849041002686084943230837088977557446564364344140092918489677824\n", + "18152061871066687778296661354368903321914797383537530017770652579540291225102592450502542901564408576535628952517004065557306948798155587253306037366972590646764780767180906664339433713797579795779287057890032192456881698082005372169886461674177955114893128728688280185836979355648\n", + "36304123742133375556593322708737806643829594767075060035541305159080582450205184901005085803128817153071257905034008131114613897596311174506612074733945181293529561534361813328678867427595159591558574115780064384913763396164010744339772923348355910229786257457376560371673958711296\n", + "72608247484266751113186645417475613287659189534150120071082610318161164900410369802010171606257634306142515810068016262229227795192622349013224149467890362587059123068723626657357734855190319183117148231560128769827526792328021488679545846696711820459572514914753120743347917422592\n", + "145216494968533502226373290834951226575318379068300240142165220636322329800820739604020343212515268612285031620136032524458455590385244698026448298935780725174118246137447253314715469710380638366234296463120257539655053584656042977359091693393423640919145029829506241486695834845184\n", + "290432989937067004452746581669902453150636758136600480284330441272644659601641479208040686425030537224570063240272065048916911180770489396052896597871561450348236492274894506629430939420761276732468592926240515079310107169312085954718183386786847281838290059659012482973391669690368\n", + "580865979874134008905493163339804906301273516273200960568660882545289319203282958416081372850061074449140126480544130097833822361540978792105793195743122900696472984549789013258861878841522553464937185852481030158620214338624171909436366773573694563676580119318024965946783339380736\n", + "1161731959748268017810986326679609812602547032546401921137321765090578638406565916832162745700122148898280252961088260195667644723081957584211586391486245801392945969099578026517723757683045106929874371704962060317240428677248343818872733547147389127353160238636049931893566678761472\n", + "2323463919496536035621972653359219625205094065092803842274643530181157276813131833664325491400244297796560505922176520391335289446163915168423172782972491602785891938199156053035447515366090213859748743409924120634480857354496687637745467094294778254706320477272099863787133357522944\n", + "4646927838993072071243945306718439250410188130185607684549287060362314553626263667328650982800488595593121011844353040782670578892327830336846345565944983205571783876398312106070895030732180427719497486819848241268961714708993375275490934188589556509412640954544199727574266715045888\n", + "9293855677986144142487890613436878500820376260371215369098574120724629107252527334657301965600977191186242023688706081565341157784655660673692691131889966411143567752796624212141790061464360855438994973639696482537923429417986750550981868377179113018825281909088399455148533430091776\n", + "18587711355972288284975781226873757001640752520742430738197148241449258214505054669314603931201954382372484047377412163130682315569311321347385382263779932822287135505593248424283580122928721710877989947279392965075846858835973501101963736754358226037650563818176798910297066860183552\n", + "37175422711944576569951562453747514003281505041484861476394296482898516429010109338629207862403908764744968094754824326261364631138622642694770764527559865644574271011186496848567160245857443421755979894558785930151693717671947002203927473508716452075301127636353597820594133720367104\n", + "74350845423889153139903124907495028006563010082969722952788592965797032858020218677258415724807817529489936189509648652522729262277245285389541529055119731289148542022372993697134320491714886843511959789117571860303387435343894004407854947017432904150602255272707195641188267440734208\n", + "148701690847778306279806249814990056013126020165939445905577185931594065716040437354516831449615635058979872379019297305045458524554490570779083058110239462578297084044745987394268640983429773687023919578235143720606774870687788008815709894034865808301204510545414391282376534881468416\n", + "297403381695556612559612499629980112026252040331878891811154371863188131432080874709033662899231270117959744758038594610090917049108981141558166116220478925156594168089491974788537281966859547374047839156470287441213549741375576017631419788069731616602409021090828782564753069762936832\n", + "594806763391113225119224999259960224052504080663757783622308743726376262864161749418067325798462540235919489516077189220181834098217962283116332232440957850313188336178983949577074563933719094748095678312940574882427099482751152035262839576139463233204818042181657565129506139525873664\n", + "1189613526782226450238449998519920448105008161327515567244617487452752525728323498836134651596925080471838979032154378440363668196435924566232664464881915700626376672357967899154149127867438189496191356625881149764854198965502304070525679152278926466409636084363315130259012279051747328\n", + "2379227053564452900476899997039840896210016322655031134489234974905505051456646997672269303193850160943677958064308756880727336392871849132465328929763831401252753344715935798308298255734876378992382713251762299529708397931004608141051358304557852932819272168726630260518024558103494656\n", + "4758454107128905800953799994079681792420032645310062268978469949811010102913293995344538606387700321887355916128617513761454672785743698264930657859527662802505506689431871596616596511469752757984765426503524599059416795862009216282102716609115705865638544337453260521036049116206989312\n", + "9516908214257811601907599988159363584840065290620124537956939899622020205826587990689077212775400643774711832257235027522909345571487396529861315719055325605011013378863743193233193022939505515969530853007049198118833591724018432564205433218231411731277088674906521042072098232413978624\n", + "19033816428515623203815199976318727169680130581240249075913879799244040411653175981378154425550801287549423664514470055045818691142974793059722631438110651210022026757727486386466386045879011031939061706014098396237667183448036865128410866436462823462554177349813042084144196464827957248\n", + "38067632857031246407630399952637454339360261162480498151827759598488080823306351962756308851101602575098847329028940110091637382285949586119445262876221302420044053515454972772932772091758022063878123412028196792475334366896073730256821732872925646925108354699626084168288392929655914496\n", + "76135265714062492815260799905274908678720522324960996303655519196976161646612703925512617702203205150197694658057880220183274764571899172238890525752442604840088107030909945545865544183516044127756246824056393584950668733792147460513643465745851293850216709399252168336576785859311828992\n", + "152270531428124985630521599810549817357441044649921992607311038393952323293225407851025235404406410300395389316115760440366549529143798344477781051504885209680176214061819891091731088367032088255512493648112787169901337467584294921027286931491702587700433418798504336673153571718623657984\n", + "304541062856249971261043199621099634714882089299843985214622076787904646586450815702050470808812820600790778632231520880733099058287596688955562103009770419360352428123639782183462176734064176511024987296225574339802674935168589842054573862983405175400866837597008673346307143437247315968\n", + "609082125712499942522086399242199269429764178599687970429244153575809293172901631404100941617625641201581557264463041761466198116575193377911124206019540838720704856247279564366924353468128353022049974592451148679605349870337179684109147725966810350801733675194017346692614286874494631936\n", + "1218164251424999885044172798484398538859528357199375940858488307151618586345803262808201883235251282403163114528926083522932396233150386755822248412039081677441409712494559128733848706936256706044099949184902297359210699740674359368218295451933620701603467350388034693385228573748989263872\n", + "2436328502849999770088345596968797077719056714398751881716976614303237172691606525616403766470502564806326229057852167045864792466300773511644496824078163354882819424989118257467697413872513412088199898369804594718421399481348718736436590903867241403206934700776069386770457147497978527744\n", + "4872657005699999540176691193937594155438113428797503763433953228606474345383213051232807532941005129612652458115704334091729584932601547023288993648156326709765638849978236514935394827745026824176399796739609189436842798962697437472873181807734482806413869401552138773540914294995957055488\n", + "9745314011399999080353382387875188310876226857595007526867906457212948690766426102465615065882010259225304916231408668183459169865203094046577987296312653419531277699956473029870789655490053648352799593479218378873685597925394874945746363615468965612827738803104277547081828589991914110976\n", + "19490628022799998160706764775750376621752453715190015053735812914425897381532852204931230131764020518450609832462817336366918339730406188093155974592625306839062555399912946059741579310980107296705599186958436757747371195850789749891492727230937931225655477606208555094163657179983828221952\n", + "38981256045599996321413529551500753243504907430380030107471625828851794763065704409862460263528041036901219664925634672733836679460812376186311949185250613678125110799825892119483158621960214593411198373916873515494742391701579499782985454461875862451310955212417110188327314359967656443904\n", + "77962512091199992642827059103001506487009814860760060214943251657703589526131408819724920527056082073802439329851269345467673358921624752372623898370501227356250221599651784238966317243920429186822396747833747030989484783403158999565970908923751724902621910424834220376654628719935312887808\n", + "155925024182399985285654118206003012974019629721520120429886503315407179052262817639449841054112164147604878659702538690935346717843249504745247796741002454712500443199303568477932634487840858373644793495667494061978969566806317999131941817847503449805243820849668440753309257439870625775616\n", + "311850048364799970571308236412006025948039259443040240859773006630814358104525635278899682108224328295209757319405077381870693435686499009490495593482004909425000886398607136955865268975681716747289586991334988123957939133612635998263883635695006899610487641699336881506618514879741251551232\n", + "623700096729599941142616472824012051896078518886080481719546013261628716209051270557799364216448656590419514638810154763741386871372998018980991186964009818850001772797214273911730537951363433494579173982669976247915878267225271996527767271390013799220975283398673763013237029759482503102464\n", + "1247400193459199882285232945648024103792157037772160963439092026523257432418102541115598728432897313180839029277620309527482773742745996037961982373928019637700003545594428547823461075902726866989158347965339952495831756534450543993055534542780027598441950566797347526026474059518965006204928\n", + "2494800386918399764570465891296048207584314075544321926878184053046514864836205082231197456865794626361678058555240619054965547485491992075923964747856039275400007091188857095646922151805453733978316695930679904991663513068901087986111069085560055196883901133594695052052948119037930012409856\n", + "4989600773836799529140931782592096415168628151088643853756368106093029729672410164462394913731589252723356117110481238109931094970983984151847929495712078550800014182377714191293844303610907467956633391861359809983327026137802175972222138171120110393767802267189390104105896238075860024819712\n", + "9979201547673599058281863565184192830337256302177287707512736212186059459344820328924789827463178505446712234220962476219862189941967968303695858991424157101600028364755428382587688607221814935913266783722719619966654052275604351944444276342240220787535604534378780208211792476151720049639424\n", + "19958403095347198116563727130368385660674512604354575415025472424372118918689640657849579654926357010893424468441924952439724379883935936607391717982848314203200056729510856765175377214443629871826533567445439239933308104551208703888888552684480441575071209068757560416423584952303440099278848\n", + "39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696\n", + "79833612381388792466254908521473542642698050417418301660101889697488475674758562631398318619705428043573697873767699809758897519535743746429566871931393256812800226918043427060701508857774519487306134269781756959733232418204834815555554210737921766300284836275030241665694339809213760397115392\n", + "159667224762777584932509817042947085285396100834836603320203779394976951349517125262796637239410856087147395747535399619517795039071487492859133743862786513625600453836086854121403017715549038974612268539563513919466464836409669631111108421475843532600569672550060483331388679618427520794230784\n", + "319334449525555169865019634085894170570792201669673206640407558789953902699034250525593274478821712174294791495070799239035590078142974985718267487725573027251200907672173708242806035431098077949224537079127027838932929672819339262222216842951687065201139345100120966662777359236855041588461568\n", + "638668899051110339730039268171788341141584403339346413280815117579907805398068501051186548957643424348589582990141598478071180156285949971436534975451146054502401815344347416485612070862196155898449074158254055677865859345638678524444433685903374130402278690200241933325554718473710083176923136\n", + "1277337798102220679460078536343576682283168806678692826561630235159815610796137002102373097915286848697179165980283196956142360312571899942873069950902292109004803630688694832971224141724392311796898148316508111355731718691277357048888867371806748260804557380400483866651109436947420166353846272\n", + "2554675596204441358920157072687153364566337613357385653123260470319631221592274004204746195830573697394358331960566393912284720625143799885746139901804584218009607261377389665942448283448784623593796296633016222711463437382554714097777734743613496521609114760800967733302218873894840332707692544\n", + "5109351192408882717840314145374306729132675226714771306246520940639262443184548008409492391661147394788716663921132787824569441250287599771492279803609168436019214522754779331884896566897569247187592593266032445422926874765109428195555469487226993043218229521601935466604437747789680665415385088\n", + "10218702384817765435680628290748613458265350453429542612493041881278524886369096016818984783322294789577433327842265575649138882500575199542984559607218336872038429045509558663769793133795138494375185186532064890845853749530218856391110938974453986086436459043203870933208875495579361330830770176\n", + "20437404769635530871361256581497226916530700906859085224986083762557049772738192033637969566644589579154866655684531151298277765001150399085969119214436673744076858091019117327539586267590276988750370373064129781691707499060437712782221877948907972172872918086407741866417750991158722661661540352\n", + "40874809539271061742722513162994453833061401813718170449972167525114099545476384067275939133289179158309733311369062302596555530002300798171938238428873347488153716182038234655079172535180553977500740746128259563383414998120875425564443755897815944345745836172815483732835501982317445323323080704\n", + "81749619078542123485445026325988907666122803627436340899944335050228199090952768134551878266578358316619466622738124605193111060004601596343876476857746694976307432364076469310158345070361107955001481492256519126766829996241750851128887511795631888691491672345630967465671003964634890646646161408\n", + "163499238157084246970890052651977815332245607254872681799888670100456398181905536269103756533156716633238933245476249210386222120009203192687752953715493389952614864728152938620316690140722215910002962984513038253533659992483501702257775023591263777382983344691261934931342007929269781293292322816\n", + "326998476314168493941780105303955630664491214509745363599777340200912796363811072538207513066313433266477866490952498420772444240018406385375505907430986779905229729456305877240633380281444431820005925969026076507067319984967003404515550047182527554765966689382523869862684015858539562586584645632\n", + "653996952628336987883560210607911261328982429019490727199554680401825592727622145076415026132626866532955732981904996841544888480036812770751011814861973559810459458912611754481266760562888863640011851938052153014134639969934006809031100094365055109531933378765047739725368031717079125173169291264\n", + "1307993905256673975767120421215822522657964858038981454399109360803651185455244290152830052265253733065911465963809993683089776960073625541502023629723947119620918917825223508962533521125777727280023703876104306028269279939868013618062200188730110219063866757530095479450736063434158250346338582528\n", + "2615987810513347951534240842431645045315929716077962908798218721607302370910488580305660104530507466131822931927619987366179553920147251083004047259447894239241837835650447017925067042251555454560047407752208612056538559879736027236124400377460220438127733515060190958901472126868316500692677165056\n", + "5231975621026695903068481684863290090631859432155925817596437443214604741820977160611320209061014932263645863855239974732359107840294502166008094518895788478483675671300894035850134084503110909120094815504417224113077119759472054472248800754920440876255467030120381917802944253736633001385354330112\n", + "10463951242053391806136963369726580181263718864311851635192874886429209483641954321222640418122029864527291727710479949464718215680589004332016189037791576956967351342601788071700268169006221818240189631008834448226154239518944108944497601509840881752510934060240763835605888507473266002770708660224\n", + "20927902484106783612273926739453160362527437728623703270385749772858418967283908642445280836244059729054583455420959898929436431361178008664032378075583153913934702685203576143400536338012443636480379262017668896452308479037888217888995203019681763505021868120481527671211777014946532005541417320448\n", + "41855804968213567224547853478906320725054875457247406540771499545716837934567817284890561672488119458109166910841919797858872862722356017328064756151166307827869405370407152286801072676024887272960758524035337792904616958075776435777990406039363527010043736240963055342423554029893064011082834640896\n", + "83711609936427134449095706957812641450109750914494813081542999091433675869135634569781123344976238916218333821683839595717745725444712034656129512302332615655738810740814304573602145352049774545921517048070675585809233916151552871555980812078727054020087472481926110684847108059786128022165669281792\n", + "167423219872854268898191413915625282900219501828989626163085998182867351738271269139562246689952477832436667643367679191435491450889424069312259024604665231311477621481628609147204290704099549091843034096141351171618467832303105743111961624157454108040174944963852221369694216119572256044331338563584\n", + "334846439745708537796382827831250565800439003657979252326171996365734703476542538279124493379904955664873335286735358382870982901778848138624518049209330462622955242963257218294408581408199098183686068192282702343236935664606211486223923248314908216080349889927704442739388432239144512088662677127168\n", + "669692879491417075592765655662501131600878007315958504652343992731469406953085076558248986759809911329746670573470716765741965803557696277249036098418660925245910485926514436588817162816398196367372136384565404686473871329212422972447846496629816432160699779855408885478776864478289024177325354254336\n", + "1339385758982834151185531311325002263201756014631917009304687985462938813906170153116497973519619822659493341146941433531483931607115392554498072196837321850491820971853028873177634325632796392734744272769130809372947742658424845944895692993259632864321399559710817770957553728956578048354650708508672\n", + "2678771517965668302371062622650004526403512029263834018609375970925877627812340306232995947039239645318986682293882867062967863214230785108996144393674643700983641943706057746355268651265592785469488545538261618745895485316849691889791385986519265728642799119421635541915107457913156096709301417017344\n", + "5357543035931336604742125245300009052807024058527668037218751941851755255624680612465991894078479290637973364587765734125935726428461570217992288787349287401967283887412115492710537302531185570938977091076523237491790970633699383779582771973038531457285598238843271083830214915826312193418602834034688\n", + "10715086071862673209484250490600018105614048117055336074437503883703510511249361224931983788156958581275946729175531468251871452856923140435984577574698574803934567774824230985421074605062371141877954182153046474983581941267398767559165543946077062914571196477686542167660429831652624386837205668069376\n", + "21430172143725346418968500981200036211228096234110672148875007767407021022498722449863967576313917162551893458351062936503742905713846280871969155149397149607869135549648461970842149210124742283755908364306092949967163882534797535118331087892154125829142392955373084335320859663305248773674411336138752\n", + "42860344287450692837937001962400072422456192468221344297750015534814042044997444899727935152627834325103786916702125873007485811427692561743938310298794299215738271099296923941684298420249484567511816728612185899934327765069595070236662175784308251658284785910746168670641719326610497547348822672277504\n", + "85720688574901385675874003924800144844912384936442688595500031069628084089994889799455870305255668650207573833404251746014971622855385123487876620597588598431476542198593847883368596840498969135023633457224371799868655530139190140473324351568616503316569571821492337341283438653220995094697645344555008\n", + "171441377149802771351748007849600289689824769872885377191000062139256168179989779598911740610511337300415147666808503492029943245710770246975753241195177196862953084397187695766737193680997938270047266914448743599737311060278380280946648703137233006633139143642984674682566877306441990189395290689110016\n", + "342882754299605542703496015699200579379649539745770754382000124278512336359979559197823481221022674600830295333617006984059886491421540493951506482390354393725906168794375391533474387361995876540094533828897487199474622120556760561893297406274466013266278287285969349365133754612883980378790581378220032\n", + "685765508599211085406992031398401158759299079491541508764000248557024672719959118395646962442045349201660590667234013968119772982843080987903012964780708787451812337588750783066948774723991753080189067657794974398949244241113521123786594812548932026532556574571938698730267509225767960757581162756440064\n", + "1371531017198422170813984062796802317518598158983083017528000497114049345439918236791293924884090698403321181334468027936239545965686161975806025929561417574903624675177501566133897549447983506160378135315589948797898488482227042247573189625097864053065113149143877397460535018451535921515162325512880128\n", + "2743062034396844341627968125593604635037196317966166035056000994228098690879836473582587849768181396806642362668936055872479091931372323951612051859122835149807249350355003132267795098895967012320756270631179897595796976964454084495146379250195728106130226298287754794921070036903071843030324651025760256\n", + "5486124068793688683255936251187209270074392635932332070112001988456197381759672947165175699536362793613284725337872111744958183862744647903224103718245670299614498700710006264535590197791934024641512541262359795191593953928908168990292758500391456212260452596575509589842140073806143686060649302051520512\n", + "10972248137587377366511872502374418540148785271864664140224003976912394763519345894330351399072725587226569450675744223489916367725489295806448207436491340599228997401420012529071180395583868049283025082524719590383187907857816337980585517000782912424520905193151019179684280147612287372121298604103041024\n", + "21944496275174754733023745004748837080297570543729328280448007953824789527038691788660702798145451174453138901351488446979832735450978591612896414872982681198457994802840025058142360791167736098566050165049439180766375815715632675961171034001565824849041810386302038359368560295224574744242597208206082048\n", + "43888992550349509466047490009497674160595141087458656560896015907649579054077383577321405596290902348906277802702976893959665470901957183225792829745965362396915989605680050116284721582335472197132100330098878361532751631431265351922342068003131649698083620772604076718737120590449149488485194416412164096\n", + "87777985100699018932094980018995348321190282174917313121792031815299158108154767154642811192581804697812555605405953787919330941803914366451585659491930724793831979211360100232569443164670944394264200660197756723065503262862530703844684136006263299396167241545208153437474241180898298976970388832824328192\n", + "175555970201398037864189960037990696642380564349834626243584063630598316216309534309285622385163609395625111210811907575838661883607828732903171318983861449587663958422720200465138886329341888788528401320395513446131006525725061407689368272012526598792334483090416306874948482361796597953940777665648656384\n", + "351111940402796075728379920075981393284761128699669252487168127261196632432619068618571244770327218791250222421623815151677323767215657465806342637967722899175327916845440400930277772658683777577056802640791026892262013051450122815378736544025053197584668966180832613749896964723593195907881555331297312768\n", + "702223880805592151456759840151962786569522257399338504974336254522393264865238137237142489540654437582500444843247630303354647534431314931612685275935445798350655833690880801860555545317367555154113605281582053784524026102900245630757473088050106395169337932361665227499793929447186391815763110662594625536\n", + "1404447761611184302913519680303925573139044514798677009948672509044786529730476274474284979081308875165000889686495260606709295068862629863225370551870891596701311667381761603721111090634735110308227210563164107569048052205800491261514946176100212790338675864723330454999587858894372783631526221325189251072\n", + "2808895523222368605827039360607851146278089029597354019897345018089573059460952548948569958162617750330001779372990521213418590137725259726450741103741783193402623334763523207442222181269470220616454421126328215138096104411600982523029892352200425580677351729446660909999175717788745567263052442650378502144\n", + "5617791046444737211654078721215702292556178059194708039794690036179146118921905097897139916325235500660003558745981042426837180275450519452901482207483566386805246669527046414884444362538940441232908842252656430276192208823201965046059784704400851161354703458893321819998351435577491134526104885300757004288\n", + "11235582092889474423308157442431404585112356118389416079589380072358292237843810195794279832650471001320007117491962084853674360550901038905802964414967132773610493339054092829768888725077880882465817684505312860552384417646403930092119569408801702322709406917786643639996702871154982269052209770601514008576\n", + "22471164185778948846616314884862809170224712236778832159178760144716584475687620391588559665300942002640014234983924169707348721101802077811605928829934265547220986678108185659537777450155761764931635369010625721104768835292807860184239138817603404645418813835573287279993405742309964538104419541203028017152\n", + "44942328371557897693232629769725618340449424473557664318357520289433168951375240783177119330601884005280028469967848339414697442203604155623211857659868531094441973356216371319075554900311523529863270738021251442209537670585615720368478277635206809290837627671146574559986811484619929076208839082406056034304\n", + "89884656743115795386465259539451236680898848947115328636715040578866337902750481566354238661203768010560056939935696678829394884407208311246423715319737062188883946712432742638151109800623047059726541476042502884419075341171231440736956555270413618581675255342293149119973622969239858152417678164812112068608\n", + "179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137216\n", + "359538626972463181545861038157804946723595395788461314546860162315465351611001926265416954644815072042240227759742786715317579537628833244985694861278948248755535786849730970552604439202492188238906165904170011537676301364684925762947826221081654474326701021369172596479894491876959432609670712659248448274432\n", + "719077253944926363091722076315609893447190791576922629093720324630930703222003852530833909289630144084480455519485573430635159075257666489971389722557896497511071573699461941105208878404984376477812331808340023075352602729369851525895652442163308948653402042738345192959788983753918865219341425318496896548864\n", + "1438154507889852726183444152631219786894381583153845258187440649261861406444007705061667818579260288168960911038971146861270318150515332979942779445115792995022143147398923882210417756809968752955624663616680046150705205458739703051791304884326617897306804085476690385919577967507837730438682850636993793097728\n", + "2876309015779705452366888305262439573788763166307690516374881298523722812888015410123335637158520576337921822077942293722540636301030665959885558890231585990044286294797847764420835513619937505911249327233360092301410410917479406103582609768653235794613608170953380771839155935015675460877365701273987586195456\n", + "5752618031559410904733776610524879147577526332615381032749762597047445625776030820246671274317041152675843644155884587445081272602061331919771117780463171980088572589595695528841671027239875011822498654466720184602820821834958812207165219537306471589227216341906761543678311870031350921754731402547975172390912\n", + "11505236063118821809467553221049758295155052665230762065499525194094891251552061640493342548634082305351687288311769174890162545204122663839542235560926343960177145179191391057683342054479750023644997308933440369205641643669917624414330439074612943178454432683813523087356623740062701843509462805095950344781824\n", + "23010472126237643618935106442099516590310105330461524130999050388189782503104123280986685097268164610703374576623538349780325090408245327679084471121852687920354290358382782115366684108959500047289994617866880738411283287339835248828660878149225886356908865367627046174713247480125403687018925610191900689563648\n", + "46020944252475287237870212884199033180620210660923048261998100776379565006208246561973370194536329221406749153247076699560650180816490655358168942243705375840708580716765564230733368217919000094579989235733761476822566574679670497657321756298451772713817730735254092349426494960250807374037851220383801379127296\n", + "92041888504950574475740425768398066361240421321846096523996201552759130012416493123946740389072658442813498306494153399121300361632981310716337884487410751681417161433531128461466736435838000189159978471467522953645133149359340995314643512596903545427635461470508184698852989920501614748075702440767602758254592\n", + "184083777009901148951480851536796132722480842643692193047992403105518260024832986247893480778145316885626996612988306798242600723265962621432675768974821503362834322867062256922933472871676000378319956942935045907290266298718681990629287025193807090855270922941016369397705979841003229496151404881535205516509184\n", + "368167554019802297902961703073592265444961685287384386095984806211036520049665972495786961556290633771253993225976613596485201446531925242865351537949643006725668645734124513845866945743352000756639913885870091814580532597437363981258574050387614181710541845882032738795411959682006458992302809763070411033018368\n", + "736335108039604595805923406147184530889923370574768772191969612422073040099331944991573923112581267542507986451953227192970402893063850485730703075899286013451337291468249027691733891486704001513279827771740183629161065194874727962517148100775228363421083691764065477590823919364012917984605619526140822066036736\n", + "1472670216079209191611846812294369061779846741149537544383939224844146080198663889983147846225162535085015972903906454385940805786127700971461406151798572026902674582936498055383467782973408003026559655543480367258322130389749455925034296201550456726842167383528130955181647838728025835969211239052281644132073472\n", + "2945340432158418383223693624588738123559693482299075088767878449688292160397327779966295692450325070170031945807812908771881611572255401942922812303597144053805349165872996110766935565946816006053119311086960734516644260779498911850068592403100913453684334767056261910363295677456051671938422478104563288264146944\n", + "5890680864316836766447387249177476247119386964598150177535756899376584320794655559932591384900650140340063891615625817543763223144510803885845624607194288107610698331745992221533871131893632012106238622173921469033288521558997823700137184806201826907368669534112523820726591354912103343876844956209126576528293888\n", + "11781361728633673532894774498354952494238773929196300355071513798753168641589311119865182769801300280680127783231251635087526446289021607771691249214388576215221396663491984443067742263787264024212477244347842938066577043117995647400274369612403653814737339068225047641453182709824206687753689912418253153056587776\n", + "23562723457267347065789548996709904988477547858392600710143027597506337283178622239730365539602600561360255566462503270175052892578043215543382498428777152430442793326983968886135484527574528048424954488695685876133154086235991294800548739224807307629474678136450095282906365419648413375507379824836506306113175552\n", + "47125446914534694131579097993419809976955095716785201420286055195012674566357244479460731079205201122720511132925006540350105785156086431086764996857554304860885586653967937772270969055149056096849908977391371752266308172471982589601097478449614615258949356272900190565812730839296826751014759649673012612226351104\n", + "94250893829069388263158195986839619953910191433570402840572110390025349132714488958921462158410402245441022265850013080700211570312172862173529993715108609721771173307935875544541938110298112193699817954782743504532616344943965179202194956899229230517898712545800381131625461678593653502029519299346025224452702208\n", + "188501787658138776526316391973679239907820382867140805681144220780050698265428977917842924316820804490882044531700026161400423140624345724347059987430217219443542346615871751089083876220596224387399635909565487009065232689887930358404389913798458461035797425091600762263250923357187307004059038598692050448905404416\n", + "377003575316277553052632783947358479815640765734281611362288441560101396530857955835685848633641608981764089063400052322800846281248691448694119974860434438887084693231743502178167752441192448774799271819130974018130465379775860716808779827596916922071594850183201524526501846714374614008118077197384100897810808832\n", + "754007150632555106105265567894716959631281531468563222724576883120202793061715911671371697267283217963528178126800104645601692562497382897388239949720868877774169386463487004356335504882384897549598543638261948036260930759551721433617559655193833844143189700366403049053003693428749228016236154394768201795621617664\n", + "1508014301265110212210531135789433919262563062937126445449153766240405586123431823342743394534566435927056356253600209291203385124994765794776479899441737755548338772926974008712671009764769795099197087276523896072521861519103442867235119310387667688286379400732806098106007386857498456032472308789536403591243235328\n", + "3016028602530220424421062271578867838525126125874252890898307532480811172246863646685486789069132871854112712507200418582406770249989531589552959798883475511096677545853948017425342019529539590198394174553047792145043723038206885734470238620775335376572758801465612196212014773714996912064944617579072807182486470656\n", + "6032057205060440848842124543157735677050252251748505781796615064961622344493727293370973578138265743708225425014400837164813540499979063179105919597766951022193355091707896034850684039059079180396788349106095584290087446076413771468940477241550670753145517602931224392424029547429993824129889235158145614364972941312\n", + "12064114410120881697684249086315471354100504503497011563593230129923244688987454586741947156276531487416450850028801674329627080999958126358211839195533902044386710183415792069701368078118158360793576698212191168580174892152827542937880954483101341506291035205862448784848059094859987648259778470316291228729945882624\n", + "24128228820241763395368498172630942708201009006994023127186460259846489377974909173483894312553062974832901700057603348659254161999916252716423678391067804088773420366831584139402736156236316721587153396424382337160349784305655085875761908966202683012582070411724897569696118189719975296519556940632582457459891765248\n", + "48256457640483526790736996345261885416402018013988046254372920519692978755949818346967788625106125949665803400115206697318508323999832505432847356782135608177546840733663168278805472312472633443174306792848764674320699568611310171751523817932405366025164140823449795139392236379439950593039113881265164914919783530496\n", + "96512915280967053581473992690523770832804036027976092508745841039385957511899636693935577250212251899331606800230413394637016647999665010865694713564271216355093681467326336557610944624945266886348613585697529348641399137222620343503047635864810732050328281646899590278784472758879901186078227762530329829839567060992\n", + "193025830561934107162947985381047541665608072055952185017491682078771915023799273387871154500424503798663213600460826789274033295999330021731389427128542432710187362934652673115221889249890533772697227171395058697282798274445240687006095271729621464100656563293799180557568945517759802372156455525060659659679134121984\n", + "386051661123868214325895970762095083331216144111904370034983364157543830047598546775742309000849007597326427200921653578548066591998660043462778854257084865420374725869305346230443778499781067545394454342790117394565596548890481374012190543459242928201313126587598361115137891035519604744312911050121319319358268243968\n", + "772103322247736428651791941524190166662432288223808740069966728315087660095197093551484618001698015194652854401843307157096133183997320086925557708514169730840749451738610692460887556999562135090788908685580234789131193097780962748024381086918485856402626253175196722230275782071039209488625822100242638638716536487936\n", + "1544206644495472857303583883048380333324864576447617480139933456630175320190394187102969236003396030389305708803686614314192266367994640173851115417028339461681498903477221384921775113999124270181577817371160469578262386195561925496048762173836971712805252506350393444460551564142078418977251644200485277277433072975872\n", + "3088413288990945714607167766096760666649729152895234960279866913260350640380788374205938472006792060778611417607373228628384532735989280347702230834056678923362997806954442769843550227998248540363155634742320939156524772391123850992097524347673943425610505012700786888921103128284156837954503288400970554554866145951744\n", + "6176826577981891429214335532193521333299458305790469920559733826520701280761576748411876944013584121557222835214746457256769065471978560695404461668113357846725995613908885539687100455996497080726311269484641878313049544782247701984195048695347886851221010025401573777842206256568313675909006576801941109109732291903488\n", + "12353653155963782858428671064387042666598916611580939841119467653041402561523153496823753888027168243114445670429492914513538130943957121390808923336226715693451991227817771079374200911992994161452622538969283756626099089564495403968390097390695773702442020050803147555684412513136627351818013153603882218219464583806976\n", + "24707306311927565716857342128774085333197833223161879682238935306082805123046306993647507776054336486228891340858985829027076261887914242781617846672453431386903982455635542158748401823985988322905245077938567513252198179128990807936780194781391547404884040101606295111368825026273254703636026307207764436438929167613952\n", + "49414612623855131433714684257548170666395666446323759364477870612165610246092613987295015552108672972457782681717971658054152523775828485563235693344906862773807964911271084317496803647971976645810490155877135026504396358257981615873560389562783094809768080203212590222737650052546509407272052614415528872877858335227904\n", + "98829225247710262867429368515096341332791332892647518728955741224331220492185227974590031104217345944915565363435943316108305047551656971126471386689813725547615929822542168634993607295943953291620980311754270053008792716515963231747120779125566189619536160406425180445475300105093018814544105228831057745755716670455808\n", + "197658450495420525734858737030192682665582665785295037457911482448662440984370455949180062208434691889831130726871886632216610095103313942252942773379627451095231859645084337269987214591887906583241960623508540106017585433031926463494241558251132379239072320812850360890950600210186037629088210457662115491511433340911616\n", + "395316900990841051469717474060385365331165331570590074915822964897324881968740911898360124416869383779662261453743773264433220190206627884505885546759254902190463719290168674539974429183775813166483921247017080212035170866063852926988483116502264758478144641625700721781901200420372075258176420915324230983022866681823232\n", + "790633801981682102939434948120770730662330663141180149831645929794649763937481823796720248833738767559324522907487546528866440380413255769011771093518509804380927438580337349079948858367551626332967842494034160424070341732127705853976966233004529516956289283251401443563802400840744150516352841830648461966045733363646464\n", + "1581267603963364205878869896241541461324661326282360299663291859589299527874963647593440497667477535118649045814975093057732880760826511538023542187037019608761854877160674698159897716735103252665935684988068320848140683464255411707953932466009059033912578566502802887127604801681488301032705683661296923932091466727292928\n", + "3162535207926728411757739792483082922649322652564720599326583719178599055749927295186880995334955070237298091629950186115465761521653023076047084374074039217523709754321349396319795433470206505331871369976136641696281366928510823415907864932018118067825157133005605774255209603362976602065411367322593847864182933454585856\n", + "6325070415853456823515479584966165845298645305129441198653167438357198111499854590373761990669910140474596183259900372230931523043306046152094168748148078435047419508642698792639590866940413010663742739952273283392562733857021646831815729864036236135650314266011211548510419206725953204130822734645187695728365866909171712\n", + "12650140831706913647030959169932331690597290610258882397306334876714396222999709180747523981339820280949192366519800744461863046086612092304188337496296156870094839017285397585279181733880826021327485479904546566785125467714043293663631459728072472271300628532022423097020838413451906408261645469290375391456731733818343424\n", + "25300281663413827294061918339864663381194581220517764794612669753428792445999418361495047962679640561898384733039601488923726092173224184608376674992592313740189678034570795170558363467761652042654970959809093133570250935428086587327262919456144944542601257064044846194041676826903812816523290938580750782913463467636686848\n", + "50600563326827654588123836679729326762389162441035529589225339506857584891998836722990095925359281123796769466079202977847452184346448369216753349985184627480379356069141590341116726935523304085309941919618186267140501870856173174654525838912289889085202514128089692388083353653807625633046581877161501565826926935273373696\n", + "101201126653655309176247673359458653524778324882071059178450679013715169783997673445980191850718562247593538932158405955694904368692896738433506699970369254960758712138283180682233453871046608170619883839236372534281003741712346349309051677824579778170405028256179384776166707307615251266093163754323003131653853870546747392\n", + "202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784\n", + "404804506614621236704990693437834614099113299528284236713802716054860679135990693783920767402874248990374155728633623822779617474771586953734026799881477019843034848553132722728933815484186432682479535356945490137124014966849385397236206711298319112681620113024717539104666829230461005064372655017292012526615415482186989568\n", + "809609013229242473409981386875669228198226599056568473427605432109721358271981387567841534805748497980748311457267247645559234949543173907468053599762954039686069697106265445457867630968372865364959070713890980274248029933698770794472413422596638225363240226049435078209333658460922010128745310034584025053230830964373979136\n", + "1619218026458484946819962773751338456396453198113136946855210864219442716543962775135683069611496995961496622914534495291118469899086347814936107199525908079372139394212530890915735261936745730729918141427781960548496059867397541588944826845193276450726480452098870156418667316921844020257490620069168050106461661928747958272\n", + "3238436052916969893639925547502676912792906396226273893710421728438885433087925550271366139222993991922993245829068990582236939798172695629872214399051816158744278788425061781831470523873491461459836282855563921096992119734795083177889653690386552901452960904197740312837334633843688040514981240138336100212923323857495916544\n", + "6476872105833939787279851095005353825585812792452547787420843456877770866175851100542732278445987983845986491658137981164473879596345391259744428798103632317488557576850123563662941047746982922919672565711127842193984239469590166355779307380773105802905921808395480625674669267687376081029962480276672200425846647714991833088\n", + "12953744211667879574559702190010707651171625584905095574841686913755541732351702201085464556891975967691972983316275962328947759192690782519488857596207264634977115153700247127325882095493965845839345131422255684387968478939180332711558614761546211605811843616790961251349338535374752162059924960553344400851693295429983666176\n", + "25907488423335759149119404380021415302343251169810191149683373827511083464703404402170929113783951935383945966632551924657895518385381565038977715192414529269954230307400494254651764190987931691678690262844511368775936957878360665423117229523092423211623687233581922502698677070749504324119849921106688801703386590859967332352\n", + "51814976846671518298238808760042830604686502339620382299366747655022166929406808804341858227567903870767891933265103849315791036770763130077955430384829058539908460614800988509303528381975863383357380525689022737551873915756721330846234459046184846423247374467163845005397354141499008648239699842213377603406773181719934664704\n", + "103629953693343036596477617520085661209373004679240764598733495310044333858813617608683716455135807741535783866530207698631582073541526260155910860769658117079816921229601977018607056763951726766714761051378045475103747831513442661692468918092369692846494748934327690010794708282998017296479399684426755206813546363439869329408\n", + "207259907386686073192955235040171322418746009358481529197466990620088667717627235217367432910271615483071567733060415397263164147083052520311821721539316234159633842459203954037214113527903453533429522102756090950207495663026885323384937836184739385692989497868655380021589416565996034592958799368853510413627092726879738658816\n", + "414519814773372146385910470080342644837492018716963058394933981240177335435254470434734865820543230966143135466120830794526328294166105040623643443078632468319267684918407908074428227055806907066859044205512181900414991326053770646769875672369478771385978995737310760043178833131992069185917598737707020827254185453759477317632\n", + "829039629546744292771820940160685289674984037433926116789867962480354670870508940869469731641086461932286270932241661589052656588332210081247286886157264936638535369836815816148856454111613814133718088411024363800829982652107541293539751344738957542771957991474621520086357666263984138371835197475414041654508370907518954635264\n", + "1658079259093488585543641880321370579349968074867852233579735924960709341741017881738939463282172923864572541864483323178105313176664420162494573772314529873277070739673631632297712908223227628267436176822048727601659965304215082587079502689477915085543915982949243040172715332527968276743670394950828083309016741815037909270528\n", + "3316158518186977171087283760642741158699936149735704467159471849921418683482035763477878926564345847729145083728966646356210626353328840324989147544629059746554141479347263264595425816446455256534872353644097455203319930608430165174159005378955830171087831965898486080345430665055936553487340789901656166618033483630075818541056\n", + "6632317036373954342174567521285482317399872299471408934318943699842837366964071526955757853128691695458290167457933292712421252706657680649978295089258119493108282958694526529190851632892910513069744707288194910406639861216860330348318010757911660342175663931796972160690861330111873106974681579803312333236066967260151637082112\n", + "13264634072747908684349135042570964634799744598942817868637887399685674733928143053911515706257383390916580334915866585424842505413315361299956590178516238986216565917389053058381703265785821026139489414576389820813279722433720660696636021515823320684351327863593944321381722660223746213949363159606624666472133934520303274164224\n", + "26529268145495817368698270085141929269599489197885635737275774799371349467856286107823031412514766781833160669831733170849685010826630722599913180357032477972433131834778106116763406531571642052278978829152779641626559444867441321393272043031646641368702655727187888642763445320447492427898726319213249332944267869040606548328448\n", + "53058536290991634737396540170283858539198978395771271474551549598742698935712572215646062825029533563666321339663466341699370021653261445199826360714064955944866263669556212233526813063143284104557957658305559283253118889734882642786544086063293282737405311454375777285526890640894984855797452638426498665888535738081213096656896\n", + "106117072581983269474793080340567717078397956791542542949103099197485397871425144431292125650059067127332642679326932683398740043306522890399652721428129911889732527339112424467053626126286568209115915316611118566506237779469765285573088172126586565474810622908751554571053781281789969711594905276852997331777071476162426193313792\n", + "212234145163966538949586160681135434156795913583085085898206198394970795742850288862584251300118134254665285358653865366797480086613045780799305442856259823779465054678224848934107252252573136418231830633222237133012475558939530571146176344253173130949621245817503109142107562563579939423189810553705994663554142952324852386627584\n", + "424468290327933077899172321362270868313591827166170171796412396789941591485700577725168502600236268509330570717307730733594960173226091561598610885712519647558930109356449697868214504505146272836463661266444474266024951117879061142292352688506346261899242491635006218284215125127159878846379621107411989327108285904649704773255168\n", + "848936580655866155798344642724541736627183654332340343592824793579883182971401155450337005200472537018661141434615461467189920346452183123197221771425039295117860218712899395736429009010292545672927322532888948532049902235758122284584705377012692523798484983270012436568430250254319757692759242214823978654216571809299409546510336\n", + "1697873161311732311596689285449083473254367308664680687185649587159766365942802310900674010400945074037322282869230922934379840692904366246394443542850078590235720437425798791472858018020585091345854645065777897064099804471516244569169410754025385047596969966540024873136860500508639515385518484429647957308433143618598819093020672\n", + "3395746322623464623193378570898166946508734617329361374371299174319532731885604621801348020801890148074644565738461845868759681385808732492788887085700157180471440874851597582945716036041170182691709290131555794128199608943032489138338821508050770095193939933080049746273721001017279030771036968859295914616866287237197638186041344\n", + "6791492645246929246386757141796333893017469234658722748742598348639065463771209243602696041603780296149289131476923691737519362771617464985577774171400314360942881749703195165891432072082340365383418580263111588256399217886064978276677643016101540190387879866160099492547442002034558061542073937718591829233732574474395276372082688\n", + "13582985290493858492773514283592667786034938469317445497485196697278130927542418487205392083207560592298578262953847383475038725543234929971155548342800628721885763499406390331782864144164680730766837160526223176512798435772129956553355286032203080380775759732320198985094884004069116123084147875437183658467465148948790552744165376\n", + "27165970580987716985547028567185335572069876938634890994970393394556261855084836974410784166415121184597156525907694766950077451086469859942311096685601257443771526998812780663565728288329361461533674321052446353025596871544259913106710572064406160761551519464640397970189768008138232246168295750874367316934930297897581105488330752\n", + "54331941161975433971094057134370671144139753877269781989940786789112523710169673948821568332830242369194313051815389533900154902172939719884622193371202514887543053997625561327131456576658722923067348642104892706051193743088519826213421144128812321523103038929280795940379536016276464492336591501748734633869860595795162210976661504\n", + "108663882323950867942188114268741342288279507754539563979881573578225047420339347897643136665660484738388626103630779067800309804345879439769244386742405029775086107995251122654262913153317445846134697284209785412102387486177039652426842288257624643046206077858561591880759072032552928984673183003497469267739721191590324421953323008\n", + "217327764647901735884376228537482684576559015509079127959763147156450094840678695795286273331320969476777252207261558135600619608691758879538488773484810059550172215990502245308525826306634891692269394568419570824204774972354079304853684576515249286092412155717123183761518144065105857969346366006994938535479442383180648843906646016\n", + "434655529295803471768752457074965369153118031018158255919526294312900189681357391590572546662641938953554504414523116271201239217383517759076977546969620119100344431981004490617051652613269783384538789136839141648409549944708158609707369153030498572184824311434246367523036288130211715938692732013989877070958884766361297687813292032\n", + "869311058591606943537504914149930738306236062036316511839052588625800379362714783181145093325283877907109008829046232542402478434767035518153955093939240238200688863962008981234103305226539566769077578273678283296819099889416317219414738306060997144369648622868492735046072576260423431877385464027979754141917769532722595375626584064\n", + "1738622117183213887075009828299861476612472124072633023678105177251600758725429566362290186650567755814218017658092465084804956869534071036307910187878480476401377727924017962468206610453079133538155156547356566593638199778832634438829476612121994288739297245736985470092145152520846863754770928055959508283835539065445190751253168128\n", + "3477244234366427774150019656599722953224944248145266047356210354503201517450859132724580373301135511628436035316184930169609913739068142072615820375756960952802755455848035924936413220906158267076310313094713133187276399557665268877658953224243988577478594491473970940184290305041693727509541856111919016567671078130890381502506336256\n", + "6954488468732855548300039313199445906449888496290532094712420709006403034901718265449160746602271023256872070632369860339219827478136284145231640751513921905605510911696071849872826441812316534152620626189426266374552799115330537755317906448487977154957188982947941880368580610083387455019083712223838033135342156261780763005012672512\n", + "13908976937465711096600078626398891812899776992581064189424841418012806069803436530898321493204542046513744141264739720678439654956272568290463281503027843811211021823392143699745652883624633068305241252378852532749105598230661075510635812896975954309914377965895883760737161220166774910038167424447676066270684312523561526010025345024\n", + "27817953874931422193200157252797783625799553985162128378849682836025612139606873061796642986409084093027488282529479441356879309912545136580926563006055687622422043646784287399491305767249266136610482504757705065498211196461322151021271625793951908619828755931791767521474322440333549820076334848895352132541368625047123052020050690048\n", + "55635907749862844386400314505595567251599107970324256757699365672051224279213746123593285972818168186054976565058958882713758619825090273161853126012111375244844087293568574798982611534498532273220965009515410130996422392922644302042543251587903817239657511863583535042948644880667099640152669697790704265082737250094246104040101380096\n", + "111271815499725688772800629011191134503198215940648513515398731344102448558427492247186571945636336372109953130117917765427517239650180546323706252024222750489688174587137149597965223068997064546441930019030820261992844785845288604085086503175807634479315023727167070085897289761334199280305339395581408530165474500188492208080202760192\n", + "222543630999451377545601258022382269006396431881297027030797462688204897116854984494373143891272672744219906260235835530855034479300361092647412504048445500979376349174274299195930446137994129092883860038061640523985689571690577208170173006351615268958630047454334140171794579522668398560610678791162817060330949000376984416160405520384\n", + "445087261998902755091202516044764538012792863762594054061594925376409794233709968988746287782545345488439812520471671061710068958600722185294825008096891001958752698348548598391860892275988258185767720076123281047971379143381154416340346012703230537917260094908668280343589159045336797121221357582325634120661898000753968832320811040768\n", + "890174523997805510182405032089529076025585727525188108123189850752819588467419937977492575565090690976879625040943342123420137917201444370589650016193782003917505396697097196783721784551976516371535440152246562095942758286762308832680692025406461075834520189817336560687178318090673594242442715164651268241323796001507937664641622081536\n", + "1780349047995611020364810064179058152051171455050376216246379701505639176934839875954985151130181381953759250081886684246840275834402888741179300032387564007835010793394194393567443569103953032743070880304493124191885516573524617665361384050812922151669040379634673121374356636181347188484885430329302536482647592003015875329283244163072\n", + "3560698095991222040729620128358116304102342910100752432492759403011278353869679751909970302260362763907518500163773368493680551668805777482358600064775128015670021586788388787134887138207906065486141760608986248383771033147049235330722768101625844303338080759269346242748713272362694376969770860658605072965295184006031750658566488326144\n", + "7121396191982444081459240256716232608204685820201504864985518806022556707739359503819940604520725527815037000327546736987361103337611554964717200129550256031340043173576777574269774276415812130972283521217972496767542066294098470661445536203251688606676161518538692485497426544725388753939541721317210145930590368012063501317132976652288\n", + "14242792383964888162918480513432465216409371640403009729971037612045113415478719007639881209041451055630074000655093473974722206675223109929434400259100512062680086347153555148539548552831624261944567042435944993535084132588196941322891072406503377213352323037077384970994853089450777507879083442634420291861180736024127002634265953304576\n", + "28485584767929776325836961026864930432818743280806019459942075224090226830957438015279762418082902111260148001310186947949444413350446219858868800518201024125360172694307110297079097105663248523889134084871889987070168265176393882645782144813006754426704646074154769941989706178901555015758166885268840583722361472048254005268531906609152\n", + "56971169535859552651673922053729860865637486561612038919884150448180453661914876030559524836165804222520296002620373895898888826700892439717737601036402048250720345388614220594158194211326497047778268169743779974140336530352787765291564289626013508853409292148309539883979412357803110031516333770537681167444722944096508010537063813218304\n", + "113942339071719105303347844107459721731274973123224077839768300896360907323829752061119049672331608445040592005240747791797777653401784879435475202072804096501440690777228441188316388422652994095556536339487559948280673060705575530583128579252027017706818584296619079767958824715606220063032667541075362334889445888193016021074127626436608\n", + "227884678143438210606695688214919443462549946246448155679536601792721814647659504122238099344663216890081184010481495583595555306803569758870950404145608193002881381554456882376632776845305988191113072678975119896561346121411151061166257158504054035413637168593238159535917649431212440126065335082150724669778891776386032042148255252873216\n", + "455769356286876421213391376429838886925099892492896311359073203585443629295319008244476198689326433780162368020962991167191110613607139517741900808291216386005762763108913764753265553690611976382226145357950239793122692242822302122332514317008108070827274337186476319071835298862424880252130670164301449339557783552772064084296510505746432\n", + "911538712573752842426782752859677773850199784985792622718146407170887258590638016488952397378652867560324736041925982334382221227214279035483801616582432772011525526217827529506531107381223952764452290715900479586245384485644604244665028634016216141654548674372952638143670597724849760504261340328602898679115567105544128168593021011492864\n", + "1823077425147505684853565505719355547700399569971585245436292814341774517181276032977904794757305735120649472083851964668764442454428558070967603233164865544023051052435655059013062214762447905528904581431800959172490768971289208489330057268032432283309097348745905276287341195449699521008522680657205797358231134211088256337186042022985728\n", + "3646154850295011369707131011438711095400799139943170490872585628683549034362552065955809589514611470241298944167703929337528884908857116141935206466329731088046102104871310118026124429524895811057809162863601918344981537942578416978660114536064864566618194697491810552574682390899399042017045361314411594716462268422176512674372084045971456\n", + "7292309700590022739414262022877422190801598279886340981745171257367098068725104131911619179029222940482597888335407858675057769817714232283870412932659462176092204209742620236052248859049791622115618325727203836689963075885156833957320229072129729133236389394983621105149364781798798084034090722628823189432924536844353025348744168091942912\n", + "14584619401180045478828524045754844381603196559772681963490342514734196137450208263823238358058445880965195776670815717350115539635428464567740825865318924352184408419485240472104497718099583244231236651454407673379926151770313667914640458144259458266472778789967242210298729563597596168068181445257646378865849073688706050697488336183885824\n", + "29169238802360090957657048091509688763206393119545363926980685029468392274900416527646476716116891761930391553341631434700231079270856929135481651730637848704368816838970480944208995436199166488462473302908815346759852303540627335829280916288518916532945557579934484420597459127195192336136362890515292757731698147377412101394976672367771648\n", + "58338477604720181915314096183019377526412786239090727853961370058936784549800833055292953432233783523860783106683262869400462158541713858270963303461275697408737633677940961888417990872398332976924946605817630693519704607081254671658561832577037833065891115159868968841194918254390384672272725781030585515463396294754824202789953344735543296\n", + "116676955209440363830628192366038755052825572478181455707922740117873569099601666110585906864467567047721566213366525738800924317083427716541926606922551394817475267355881923776835981744796665953849893211635261387039409214162509343317123665154075666131782230319737937682389836508780769344545451562061171030926792589509648405579906689471086592\n", + "233353910418880727661256384732077510105651144956362911415845480235747138199203332221171813728935134095443132426733051477601848634166855433083853213845102789634950534711763847553671963489593331907699786423270522774078818428325018686634247330308151332263564460639475875364779673017561538689090903124122342061853585179019296811159813378942173184\n", + "466707820837761455322512769464155020211302289912725822831690960471494276398406664442343627457870268190886264853466102955203697268333710866167706427690205579269901069423527695107343926979186663815399572846541045548157636856650037373268494660616302664527128921278951750729559346035123077378181806248244684123707170358038593622319626757884346368\n", + "933415641675522910645025538928310040422604579825451645663381920942988552796813328884687254915740536381772529706932205910407394536667421732335412855380411158539802138847055390214687853958373327630799145693082091096315273713300074746536989321232605329054257842557903501459118692070246154756363612496489368247414340716077187244639253515768692736\n", + "1866831283351045821290051077856620080845209159650903291326763841885977105593626657769374509831481072763545059413864411820814789073334843464670825710760822317079604277694110780429375707916746655261598291386164182192630547426600149493073978642465210658108515685115807002918237384140492309512727224992978736494828681432154374489278507031537385472\n", + "3733662566702091642580102155713240161690418319301806582653527683771954211187253315538749019662962145527090118827728823641629578146669686929341651421521644634159208555388221560858751415833493310523196582772328364385261094853200298986147957284930421316217031370231614005836474768280984619025454449985957472989657362864308748978557014063074770944\n", + "7467325133404183285160204311426480323380836638603613165307055367543908422374506631077498039325924291054180237655457647283259156293339373858683302843043289268318417110776443121717502831666986621046393165544656728770522189706400597972295914569860842632434062740463228011672949536561969238050908899971914945979314725728617497957114028126149541888\n", + "14934650266808366570320408622852960646761673277207226330614110735087816844749013262154996078651848582108360475310915294566518312586678747717366605686086578536636834221552886243435005663333973242092786331089313457541044379412801195944591829139721685264868125480926456023345899073123938476101817799943829891958629451457234995914228056252299083776\n", + "29869300533616733140640817245705921293523346554414452661228221470175633689498026524309992157303697164216720950621830589133036625173357495434733211372173157073273668443105772486870011326667946484185572662178626915082088758825602391889183658279443370529736250961852912046691798146247876952203635599887659783917258902914469991828456112504598167552\n", + "59738601067233466281281634491411842587046693108828905322456442940351267378996053048619984314607394328433441901243661178266073250346714990869466422744346314146547336886211544973740022653335892968371145324357253830164177517651204783778367316558886741059472501923705824093383596292495753904407271199775319567834517805828939983656912225009196335104\n", + "119477202134466932562563268982823685174093386217657810644912885880702534757992106097239968629214788656866883802487322356532146500693429981738932845488692628293094673772423089947480045306671785936742290648714507660328355035302409567556734633117773482118945003847411648186767192584991507808814542399550639135669035611657879967313824450018392670208\n", + "238954404268933865125126537965647370348186772435315621289825771761405069515984212194479937258429577313733767604974644713064293001386859963477865690977385256586189347544846179894960090613343571873484581297429015320656710070604819135113469266235546964237890007694823296373534385169983015617629084799101278271338071223315759934627648900036785340416\n", + "477908808537867730250253075931294740696373544870631242579651543522810139031968424388959874516859154627467535209949289426128586002773719926955731381954770513172378695089692359789920181226687143746969162594858030641313420141209638270226938532471093928475780015389646592747068770339966031235258169598202556542676142446631519869255297800073570680832\n", + "955817617075735460500506151862589481392747089741262485159303087045620278063936848777919749033718309254935070419898578852257172005547439853911462763909541026344757390179384719579840362453374287493938325189716061282626840282419276540453877064942187856951560030779293185494137540679932062470516339196405113085352284893263039738510595600147141361664\n", + "1911635234151470921001012303725178962785494179482524970318606174091240556127873697555839498067436618509870140839797157704514344011094879707822925527819082052689514780358769439159680724906748574987876650379432122565253680564838553080907754129884375713903120061558586370988275081359864124941032678392810226170704569786526079477021191200294282723328\n", + "3823270468302941842002024607450357925570988358965049940637212348182481112255747395111678996134873237019740281679594315409028688022189759415645851055638164105379029560717538878319361449813497149975753300758864245130507361129677106161815508259768751427806240123117172741976550162719728249882065356785620452341409139573052158954042382400588565446656\n", + "7646540936605883684004049214900715851141976717930099881274424696364962224511494790223357992269746474039480563359188630818057376044379518831291702111276328210758059121435077756638722899626994299951506601517728490261014722259354212323631016519537502855612480246234345483953100325439456499764130713571240904682818279146104317908084764801177130893312\n", + "15293081873211767368008098429801431702283953435860199762548849392729924449022989580446715984539492948078961126718377261636114752088759037662583404222552656421516118242870155513277445799253988599903013203035456980522029444518708424647262033039075005711224960492468690967906200650878912999528261427142481809365636558292208635816169529602354261786624\n", + "30586163746423534736016196859602863404567906871720399525097698785459848898045979160893431969078985896157922253436754523272229504177518075325166808445105312843032236485740311026554891598507977199806026406070913961044058889037416849294524066078150011422449920984937381935812401301757825999056522854284963618731273116584417271632339059204708523573248\n", + "61172327492847069472032393719205726809135813743440799050195397570919697796091958321786863938157971792315844506873509046544459008355036150650333616890210625686064472971480622053109783197015954399612052812141827922088117778074833698589048132156300022844899841969874763871624802603515651998113045708569927237462546233168834543264678118409417047146496\n", + "122344654985694138944064787438411453618271627486881598100390795141839395592183916643573727876315943584631689013747018093088918016710072301300667233780421251372128945942961244106219566394031908799224105624283655844176235556149667397178096264312600045689799683939749527743249605207031303996226091417139854474925092466337669086529356236818834094292992\n", + "244689309971388277888129574876822907236543254973763196200781590283678791184367833287147455752631887169263378027494036186177836033420144602601334467560842502744257891885922488212439132788063817598448211248567311688352471112299334794356192528625200091379599367879499055486499210414062607992452182834279708949850184932675338173058712473637668188585984\n", + "489378619942776555776259149753645814473086509947526392401563180567357582368735666574294911505263774338526756054988072372355672066840289205202668935121685005488515783771844976424878265576127635196896422497134623376704942224598669588712385057250400182759198735758998110972998420828125215984904365668559417899700369865350676346117424947275336377171968\n", + "978757239885553111552518299507291628946173019895052784803126361134715164737471333148589823010527548677053512109976144744711344133680578410405337870243370010977031567543689952849756531152255270393792844994269246753409884449197339177424770114500800365518397471517996221945996841656250431969808731337118835799400739730701352692234849894550672754343936\n", + "1957514479771106223105036599014583257892346039790105569606252722269430329474942666297179646021055097354107024219952289489422688267361156820810675740486740021954063135087379905699513062304510540787585689988538493506819768898394678354849540229001600731036794943035992443891993683312500863939617462674237671598801479461402705384469699789101345508687872\n", + "3915028959542212446210073198029166515784692079580211139212505444538860658949885332594359292042110194708214048439904578978845376534722313641621351480973480043908126270174759811399026124609021081575171379977076987013639537796789356709699080458003201462073589886071984887783987366625001727879234925348475343197602958922805410768939399578202691017375744\n", + "7830057919084424892420146396058333031569384159160422278425010889077721317899770665188718584084220389416428096879809157957690753069444627283242702961946960087816252540349519622798052249218042163150342759954153974027279075593578713419398160916006402924147179772143969775567974733250003455758469850696950686395205917845610821537878799156405382034751488\n", + "15660115838168849784840292792116666063138768318320844556850021778155442635799541330377437168168440778832856193759618315915381506138889254566485405923893920175632505080699039245596104498436084326300685519908307948054558151187157426838796321832012805848294359544287939551135949466500006911516939701393901372790411835691221643075757598312810764069502976\n", + "31320231676337699569680585584233332126277536636641689113700043556310885271599082660754874336336881557665712387519236631830763012277778509132970811847787840351265010161398078491192208996872168652601371039816615896109116302374314853677592643664025611696588719088575879102271898933000013823033879402787802745580823671382443286151515196625621528139005952\n", + "62640463352675399139361171168466664252555073273283378227400087112621770543198165321509748672673763115331424775038473263661526024555557018265941623695575680702530020322796156982384417993744337305202742079633231792218232604748629707355185287328051223393177438177151758204543797866000027646067758805575605491161647342764886572303030393251243056278011904\n", + "125280926705350798278722342336933328505110146546566756454800174225243541086396330643019497345347526230662849550076946527323052049111114036531883247391151361405060040645592313964768835987488674610405484159266463584436465209497259414710370574656102446786354876354303516409087595732000055292135517611151210982323294685529773144606060786502486112556023808\n", + "250561853410701596557444684673866657010220293093133512909600348450487082172792661286038994690695052461325699100153893054646104098222228073063766494782302722810120081291184627929537671974977349220810968318532927168872930418994518829420741149312204893572709752708607032818175191464000110584271035222302421964646589371059546289212121573004972225112047616\n", + "501123706821403193114889369347733314020440586186267025819200696900974164345585322572077989381390104922651398200307786109292208196444456146127532989564605445620240162582369255859075343949954698441621936637065854337745860837989037658841482298624409787145419505417214065636350382928000221168542070444604843929293178742119092578424243146009944450224095232\n", + "1002247413642806386229778738695466628040881172372534051638401393801948328691170645144155978762780209845302796400615572218584416392888912292255065979129210891240480325164738511718150687899909396883243873274131708675491721675978075317682964597248819574290839010834428131272700765856000442337084140889209687858586357484238185156848486292019888900448190464\n", + "2004494827285612772459557477390933256081762344745068103276802787603896657382341290288311957525560419690605592801231144437168832785777824584510131958258421782480960650329477023436301375799818793766487746548263417350983443351956150635365929194497639148581678021668856262545401531712000884674168281778419375717172714968476370313696972584039777800896380928\n", + "4008989654571225544919114954781866512163524689490136206553605575207793314764682580576623915051120839381211185602462288874337665571555649169020263916516843564961921300658954046872602751599637587532975493096526834701966886703912301270731858388995278297163356043337712525090803063424001769348336563556838751434345429936952740627393945168079555601792761856\n", + "8017979309142451089838229909563733024327049378980272413107211150415586629529365161153247830102241678762422371204924577748675331143111298338040527833033687129923842601317908093745205503199275175065950986193053669403933773407824602541463716777990556594326712086675425050181606126848003538696673127113677502868690859873905481254787890336159111203585523712\n", + "16035958618284902179676459819127466048654098757960544826214422300831173259058730322306495660204483357524844742409849155497350662286222596676081055666067374259847685202635816187490411006398550350131901972386107338807867546815649205082927433555981113188653424173350850100363212253696007077393346254227355005737381719747810962509575780672318222407171047424\n", + "32071917236569804359352919638254932097308197515921089652428844601662346518117460644612991320408966715049689484819698310994701324572445193352162111332134748519695370405271632374980822012797100700263803944772214677615735093631298410165854867111962226377306848346701700200726424507392014154786692508454710011474763439495621925019151561344636444814342094848\n", + "64143834473139608718705839276509864194616395031842179304857689203324693036234921289225982640817933430099378969639396621989402649144890386704324222664269497039390740810543264749961644025594201400527607889544429355231470187262596820331709734223924452754613696693403400401452849014784028309573385016909420022949526878991243850038303122689272889628684189696\n", + "128287668946279217437411678553019728389232790063684358609715378406649386072469842578451965281635866860198757939278793243978805298289780773408648445328538994078781481621086529499923288051188402801055215779088858710462940374525193640663419468447848905509227393386806800802905698029568056619146770033818840045899053757982487700076606245378545779257368379392\n", + "256575337892558434874823357106039456778465580127368717219430756813298772144939685156903930563271733720397515878557586487957610596579561546817296890657077988157562963242173058999846576102376805602110431558177717420925880749050387281326838936895697811018454786773613601605811396059136113238293540067637680091798107515964975400153212490757091558514736758784\n", + "513150675785116869749646714212078913556931160254737434438861513626597544289879370313807861126543467440795031757115172975915221193159123093634593781314155976315125926484346117999693152204753611204220863116355434841851761498100774562653677873791395622036909573547227203211622792118272226476587080135275360183596215031929950800306424981514183117029473517568\n", + "1026301351570233739499293428424157827113862320509474868877723027253195088579758740627615722253086934881590063514230345951830442386318246187269187562628311952630251852968692235999386304409507222408441726232710869683703522996201549125307355747582791244073819147094454406423245584236544452953174160270550720367192430063859901600612849963028366234058947035136\n", + "2052602703140467478998586856848315654227724641018949737755446054506390177159517481255231444506173869763180127028460691903660884772636492374538375125256623905260503705937384471998772608819014444816883452465421739367407045992403098250614711495165582488147638294188908812846491168473088905906348320541101440734384860127719803201225699926056732468117894070272\n", + "4105205406280934957997173713696631308455449282037899475510892109012780354319034962510462889012347739526360254056921383807321769545272984749076750250513247810521007411874768943997545217638028889633766904930843478734814091984806196501229422990331164976295276588377817625692982336946177811812696641082202881468769720255439606402451399852113464936235788140544\n", + "8210410812561869915994347427393262616910898564075798951021784218025560708638069925020925778024695479052720508113842767614643539090545969498153500501026495621042014823749537887995090435276057779267533809861686957469628183969612393002458845980662329952590553176755635251385964673892355623625393282164405762937539440510879212804902799704226929872471576281088\n", + "16420821625123739831988694854786525233821797128151597902043568436051121417276139850041851556049390958105441016227685535229287078181091938996307001002052991242084029647499075775990180870552115558535067619723373914939256367939224786004917691961324659905181106353511270502771929347784711247250786564328811525875078881021758425609805599408453859744943152562176\n", + "32841643250247479663977389709573050467643594256303195804087136872102242834552279700083703112098781916210882032455371070458574156362183877992614002004105982484168059294998151551980361741104231117070135239446747829878512735878449572009835383922649319810362212707022541005543858695569422494501573128657623051750157762043516851219611198816907719489886305124352\n", + "65683286500494959327954779419146100935287188512606391608174273744204485669104559400167406224197563832421764064910742140917148312724367755985228004008211964968336118589996303103960723482208462234140270478893495659757025471756899144019670767845298639620724425414045082011087717391138844989003146257315246103500315524087033702439222397633815438979772610248704\n", + "131366573000989918655909558838292201870574377025212783216348547488408971338209118800334812448395127664843528129821484281834296625448735511970456008016423929936672237179992606207921446964416924468280540957786991319514050943513798288039341535690597279241448850828090164022175434782277689978006292514630492207000631048174067404878444795267630877959545220497408\n", + "262733146001979837311819117676584403741148754050425566432697094976817942676418237600669624896790255329687056259642968563668593250897471023940912016032847859873344474359985212415842893928833848936561081915573982639028101887027596576078683071381194558482897701656180328044350869564555379956012585029260984414001262096348134809756889590535261755919090440994816\n", + "525466292003959674623638235353168807482297508100851132865394189953635885352836475201339249793580510659374112519285937127337186501794942047881824032065695719746688948719970424831685787857667697873122163831147965278056203774055193152157366142762389116965795403312360656088701739129110759912025170058521968828002524192696269619513779181070523511838180881989632\n", + "1050932584007919349247276470706337614964595016201702265730788379907271770705672950402678499587161021318748225038571874254674373003589884095763648064131391439493377897439940849663371575715335395746244327662295930556112407548110386304314732285524778233931590806624721312177403478258221519824050340117043937656005048385392539239027558362141047023676361763979264\n", + "2101865168015838698494552941412675229929190032403404531461576759814543541411345900805356999174322042637496450077143748509348746007179768191527296128262782878986755794879881699326743151430670791492488655324591861112224815096220772608629464571049556467863181613249442624354806956516443039648100680234087875312010096770785078478055116724282094047352723527958528\n", + "4203730336031677396989105882825350459858380064806809062923153519629087082822691801610713998348644085274992900154287497018697492014359536383054592256525565757973511589759763398653486302861341582984977310649183722224449630192441545217258929142099112935726363226498885248709613913032886079296201360468175750624020193541570156956110233448564188094705447055917056\n", + "8407460672063354793978211765650700919716760129613618125846307039258174165645383603221427996697288170549985800308574994037394984028719072766109184513051131515947023179519526797306972605722683165969954621298367444448899260384883090434517858284198225871452726452997770497419227826065772158592402720936351501248040387083140313912220466897128376189410894111834112\n", + "16814921344126709587956423531301401839433520259227236251692614078516348331290767206442855993394576341099971600617149988074789968057438145532218369026102263031894046359039053594613945211445366331939909242596734888897798520769766180869035716568396451742905452905995540994838455652131544317184805441872703002496080774166280627824440933794256752378821788223668224\n", + "33629842688253419175912847062602803678867040518454472503385228157032696662581534412885711986789152682199943201234299976149579936114876291064436738052204526063788092718078107189227890422890732663879818485193469777795597041539532361738071433136792903485810905811991081989676911304263088634369610883745406004992161548332561255648881867588513504757643576447336448\n", + "67259685376506838351825694125205607357734081036908945006770456314065393325163068825771423973578305364399886402468599952299159872229752582128873476104409052127576185436156214378455780845781465327759636970386939555591194083079064723476142866273585806971621811623982163979353822608526177268739221767490812009984323096665122511297763735177027009515287152894672896\n", + "134519370753013676703651388250411214715468162073817890013540912628130786650326137651542847947156610728799772804937199904598319744459505164257746952208818104255152370872312428756911561691562930655519273940773879111182388166158129446952285732547171613943243623247964327958707645217052354537478443534981624019968646193330245022595527470354054019030574305789345792\n", + "269038741506027353407302776500822429430936324147635780027081825256261573300652275303085695894313221457599545609874399809196639488919010328515493904417636208510304741744624857513823123383125861311038547881547758222364776332316258893904571465094343227886487246495928655917415290434104709074956887069963248039937292386660490045191054940708108038061148611578691584\n", + "538077483012054706814605553001644858861872648295271560054163650512523146601304550606171391788626442915199091219748799618393278977838020657030987808835272417020609483489249715027646246766251722622077095763095516444729552664632517787809142930188686455772974492991857311834830580868209418149913774139926496079874584773320980090382109881416216076122297223157383168\n", + "1076154966024109413629211106003289717723745296590543120108327301025046293202609101212342783577252885830398182439497599236786557955676041314061975617670544834041218966978499430055292493532503445244154191526191032889459105329265035575618285860377372911545948985983714623669661161736418836299827548279852992159749169546641960180764219762832432152244594446314766336\n", + "2152309932048218827258422212006579435447490593181086240216654602050092586405218202424685567154505771660796364878995198473573115911352082628123951235341089668082437933956998860110584987065006890488308383052382065778918210658530071151236571720754745823091897971967429247339322323472837672599655096559705984319498339093283920361528439525664864304489188892629532672\n", + "4304619864096437654516844424013158870894981186362172480433309204100185172810436404849371134309011543321592729757990396947146231822704165256247902470682179336164875867913997720221169974130013780976616766104764131557836421317060142302473143441509491646183795943934858494678644646945675345199310193119411968638996678186567840723056879051329728608978377785259065344\n", + "8609239728192875309033688848026317741789962372724344960866618408200370345620872809698742268618023086643185459515980793894292463645408330512495804941364358672329751735827995440442339948260027561953233532209528263115672842634120284604946286883018983292367591887869716989357289293891350690398620386238823937277993356373135681446113758102659457217956755570518130688\n", + "17218479456385750618067377696052635483579924745448689921733236816400740691241745619397484537236046173286370919031961587788584927290816661024991609882728717344659503471655990880884679896520055123906467064419056526231345685268240569209892573766037966584735183775739433978714578587782701380797240772477647874555986712746271362892227516205318914435913511141036261376\n", + "34436958912771501236134755392105270967159849490897379843466473632801481382483491238794969074472092346572741838063923175577169854581633322049983219765457434689319006943311981761769359793040110247812934128838113052462691370536481138419785147532075933169470367551478867957429157175565402761594481544955295749111973425492542725784455032410637828871827022282072522752\n", + "68873917825543002472269510784210541934319698981794759686932947265602962764966982477589938148944184693145483676127846351154339709163266644099966439530914869378638013886623963523538719586080220495625868257676226104925382741072962276839570295064151866338940735102957735914858314351130805523188963089910591498223946850985085451568910064821275657743654044564145045504\n", + "137747835651086004944539021568421083868639397963589519373865894531205925529933964955179876297888369386290967352255692702308679418326533288199932879061829738757276027773247927047077439172160440991251736515352452209850765482145924553679140590128303732677881470205915471829716628702261611046377926179821182996447893701970170903137820129642551315487308089128290091008\n", + "275495671302172009889078043136842167737278795927179038747731789062411851059867929910359752595776738772581934704511385404617358836653066576399865758123659477514552055546495854094154878344320881982503473030704904419701530964291849107358281180256607465355762940411830943659433257404523222092755852359642365992895787403940341806275640259285102630974616178256580182016\n", + "550991342604344019778156086273684335474557591854358077495463578124823702119735859820719505191553477545163869409022770809234717673306133152799731516247318955029104111092991708188309756688641763965006946061409808839403061928583698214716562360513214930711525880823661887318866514809046444185511704719284731985791574807880683612551280518570205261949232356513160364032\n", + "1101982685208688039556312172547368670949115183708716154990927156249647404239471719641439010383106955090327738818045541618469435346612266305599463032494637910058208222185983416376619513377283527930013892122819617678806123857167396429433124721026429861423051761647323774637733029618092888371023409438569463971583149615761367225102561037140410523898464713026320728064\n", + "2203965370417376079112624345094737341898230367417432309981854312499294808478943439282878020766213910180655477636091083236938870693224532611198926064989275820116416444371966832753239026754567055860027784245639235357612247714334792858866249442052859722846103523294647549275466059236185776742046818877138927943166299231522734450205122074280821047796929426052641456128\n", + "4407930740834752158225248690189474683796460734834864619963708624998589616957886878565756041532427820361310955272182166473877741386449065222397852129978551640232832888743933665506478053509134111720055568491278470715224495428669585717732498884105719445692207046589295098550932118472371553484093637754277855886332598463045468900410244148561642095593858852105282912256\n", + "8815861481669504316450497380378949367592921469669729239927417249997179233915773757131512083064855640722621910544364332947755482772898130444795704259957103280465665777487867331012956107018268223440111136982556941430448990857339171435464997768211438891384414093178590197101864236944743106968187275508555711772665196926090937800820488297123284191187717704210565824512\n", + "17631722963339008632900994760757898735185842939339458479854834499994358467831547514263024166129711281445243821088728665895510965545796260889591408519914206560931331554975734662025912214036536446880222273965113882860897981714678342870929995536422877782768828186357180394203728473889486213936374551017111423545330393852181875601640976594246568382375435408421131649024\n", + "35263445926678017265801989521515797470371685878678916959709668999988716935663095028526048332259422562890487642177457331791021931091592521779182817039828413121862663109951469324051824428073072893760444547930227765721795963429356685741859991072845755565537656372714360788407456947778972427872749102034222847090660787704363751203281953188493136764750870816842263298048\n", + "70526891853356034531603979043031594940743371757357833919419337999977433871326190057052096664518845125780975284354914663582043862183185043558365634079656826243725326219902938648103648856146145787520889095860455531443591926858713371483719982145691511131075312745428721576814913895557944855745498204068445694181321575408727502406563906376986273529501741633684526596096\n", + "141053783706712069063207958086063189881486743514715667838838675999954867742652380114104193329037690251561950568709829327164087724366370087116731268159313652487450652439805877296207297712292291575041778191720911062887183853717426742967439964291383022262150625490857443153629827791115889711490996408136891388362643150817455004813127812753972547059003483267369053192192\n", + "282107567413424138126415916172126379762973487029431335677677351999909735485304760228208386658075380503123901137419658654328175448732740174233462536318627304974901304879611754592414595424584583150083556383441822125774367707434853485934879928582766044524301250981714886307259655582231779422981992816273782776725286301634910009626255625507945094118006966534738106384384\n", + "564215134826848276252831832344252759525946974058862671355354703999819470970609520456416773316150761006247802274839317308656350897465480348466925072637254609949802609759223509184829190849169166300167112766883644251548735414869706971869759857165532089048602501963429772614519311164463558845963985632547565553450572603269820019252511251015890188236013933069476212768768\n", + "1128430269653696552505663664688505519051893948117725342710709407999638941941219040912833546632301522012495604549678634617312701794930960696933850145274509219899605219518447018369658381698338332600334225533767288503097470829739413943739519714331064178097205003926859545229038622328927117691927971265095131106901145206539640038505022502031780376472027866138952425537536\n", + "2256860539307393105011327329377011038103787896235450685421418815999277883882438081825667093264603044024991209099357269234625403589861921393867700290549018439799210439036894036739316763396676665200668451067534577006194941659478827887479039428662128356194410007853719090458077244657854235383855942530190262213802290413079280077010045004063560752944055732277904851075072\n", + "4513721078614786210022654658754022076207575792470901370842837631998555767764876163651334186529206088049982418198714538469250807179723842787735400581098036879598420878073788073478633526793353330401336902135069154012389883318957655774958078857324256712388820015707438180916154489315708470767711885060380524427604580826158560154020090008127121505888111464555809702150144\n", + "9027442157229572420045309317508044152415151584941802741685675263997111535529752327302668373058412176099964836397429076938501614359447685575470801162196073759196841756147576146957267053586706660802673804270138308024779766637915311549916157714648513424777640031414876361832308978631416941535423770120761048855209161652317120308040180016254243011776222929111619404300288\n", + "18054884314459144840090618635016088304830303169883605483371350527994223071059504654605336746116824352199929672794858153877003228718895371150941602324392147518393683512295152293914534107173413321605347608540276616049559533275830623099832315429297026849555280062829752723664617957262833883070847540241522097710418323304634240616080360032508486023552445858223238808600576\n", + "36109768628918289680181237270032176609660606339767210966742701055988446142119009309210673492233648704399859345589716307754006457437790742301883204648784295036787367024590304587829068214346826643210695217080553232099119066551661246199664630858594053699110560125659505447329235914525667766141695080483044195420836646609268481232160720065016972047104891716446477617201152\n", + "72219537257836579360362474540064353219321212679534421933485402111976892284238018618421346984467297408799718691179432615508012914875581484603766409297568590073574734049180609175658136428693653286421390434161106464198238133103322492399329261717188107398221120251319010894658471829051335532283390160966088390841673293218536962464321440130033944094209783432892955234402304\n", + "144439074515673158720724949080128706438642425359068843866970804223953784568476037236842693968934594817599437382358865231016025829751162969207532818595137180147149468098361218351316272857387306572842780868322212928396476266206644984798658523434376214796442240502638021789316943658102671064566780321932176781683346586437073924928642880260067888188419566865785910468804608\n", + "288878149031346317441449898160257412877284850718137687733941608447907569136952074473685387937869189635198874764717730462032051659502325938415065637190274360294298936196722436702632545714774613145685561736644425856792952532413289969597317046868752429592884481005276043578633887316205342129133560643864353563366693172874147849857285760520135776376839133731571820937609216\n", + "577756298062692634882899796320514825754569701436275375467883216895815138273904148947370775875738379270397749529435460924064103319004651876830131274380548720588597872393444873405265091429549226291371123473288851713585905064826579939194634093737504859185768962010552087157267774632410684258267121287728707126733386345748295699714571521040271552753678267463143641875218432\n", + "1155512596125385269765799592641029651509139402872550750935766433791630276547808297894741551751476758540795499058870921848128206638009303753660262548761097441177195744786889746810530182859098452582742246946577703427171810129653159878389268187475009718371537924021104174314535549264821368516534242575457414253466772691496591399429143042080543105507356534926287283750436864\n", + "2311025192250770539531599185282059303018278805745101501871532867583260553095616595789483103502953517081590998117741843696256413276018607507320525097522194882354391489573779493621060365718196905165484493893155406854343620259306319756778536374950019436743075848042208348629071098529642737033068485150914828506933545382993182798858286084161086211014713069852574567500873728\n", + "4622050384501541079063198370564118606036557611490203003743065735166521106191233191578966207005907034163181996235483687392512826552037215014641050195044389764708782979147558987242120731436393810330968987786310813708687240518612639513557072749900038873486151696084416697258142197059285474066136970301829657013867090765986365597716572168322172422029426139705149135001747456\n", + "9244100769003082158126396741128237212073115222980406007486131470333042212382466383157932414011814068326363992470967374785025653104074430029282100390088779529417565958295117974484241462872787620661937975572621627417374481037225279027114145499800077746972303392168833394516284394118570948132273940603659314027734181531972731195433144336644344844058852279410298270003494912\n", + "18488201538006164316252793482256474424146230445960812014972262940666084424764932766315864828023628136652727984941934749570051306208148860058564200780177559058835131916590235948968482925745575241323875951145243254834748962074450558054228290999600155493944606784337666789032568788237141896264547881207318628055468363063945462390866288673288689688117704558820596540006989824\n", + "36976403076012328632505586964512948848292460891921624029944525881332168849529865532631729656047256273305455969883869499140102612416297720117128401560355118117670263833180471897936965851491150482647751902290486509669497924148901116108456581999200310987889213568675333578065137576474283792529095762414637256110936726127890924781732577346577379376235409117641193080013979648\n", + "73952806152024657265011173929025897696584921783843248059889051762664337699059731065263459312094512546610911939767738998280205224832595440234256803120710236235340527666360943795873931702982300965295503804580973019338995848297802232216913163998400621975778427137350667156130275152948567585058191524829274512221873452255781849563465154693154758752470818235282386160027959296\n", + "147905612304049314530022347858051795393169843567686496119778103525328675398119462130526918624189025093221823879535477996560410449665190880468513606241420472470681055332721887591747863405964601930591007609161946038677991696595604464433826327996801243951556854274701334312260550305897135170116383049658549024443746904511563699126930309386309517504941636470564772320055918592\n", + "295811224608098629060044695716103590786339687135372992239556207050657350796238924261053837248378050186443647759070955993120820899330381760937027212482840944941362110665443775183495726811929203861182015218323892077355983393191208928867652655993602487903113708549402668624521100611794270340232766099317098048887493809023127398253860618772619035009883272941129544640111837184\n", + "591622449216197258120089391432207181572679374270745984479112414101314701592477848522107674496756100372887295518141911986241641798660763521874054424965681889882724221330887550366991453623858407722364030436647784154711966786382417857735305311987204975806227417098805337249042201223588540680465532198634196097774987618046254796507721237545238070019766545882259089280223674368\n", + "1183244898432394516240178782864414363145358748541491968958224828202629403184955697044215348993512200745774591036283823972483283597321527043748108849931363779765448442661775100733982907247716815444728060873295568309423933572764835715470610623974409951612454834197610674498084402447177081360931064397268392195549975236092509593015442475090476140039533091764518178560447348736\n", + "2366489796864789032480357565728828726290717497082983937916449656405258806369911394088430697987024401491549182072567647944966567194643054087496217699862727559530896885323550201467965814495433630889456121746591136618847867145529671430941221247948819903224909668395221348996168804894354162721862128794536784391099950472185019186030884950180952280079066183529036357120894697472\n", + "4732979593729578064960715131457657452581434994165967875832899312810517612739822788176861395974048802983098364145135295889933134389286108174992435399725455119061793770647100402935931628990867261778912243493182273237695734291059342861882442495897639806449819336790442697992337609788708325443724257589073568782199900944370038372061769900361904560158132367058072714241789394944\n", + "9465959187459156129921430262915314905162869988331935751665798625621035225479645576353722791948097605966196728290270591779866268778572216349984870799450910238123587541294200805871863257981734523557824486986364546475391468582118685723764884991795279612899638673580885395984675219577416650887448515178147137564399801888740076744123539800723809120316264734116145428483578789888\n", + "18931918374918312259842860525830629810325739976663871503331597251242070450959291152707445583896195211932393456580541183559732537557144432699969741598901820476247175082588401611743726515963469047115648973972729092950782937164237371447529769983590559225799277347161770791969350439154833301774897030356294275128799603777480153488247079601447618240632529468232290856967157579776\n", + "37863836749836624519685721051661259620651479953327743006663194502484140901918582305414891167792390423864786913161082367119465075114288865399939483197803640952494350165176803223487453031926938094231297947945458185901565874328474742895059539967181118451598554694323541583938700878309666603549794060712588550257599207554960306976494159202895236481265058936464581713934315159552\n", + "75727673499673249039371442103322519241302959906655486013326389004968281803837164610829782335584780847729573826322164734238930150228577730799878966395607281904988700330353606446974906063853876188462595895890916371803131748656949485790119079934362236903197109388647083167877401756619333207099588121425177100515198415109920613952988318405790472962530117872929163427868630319104\n", + "151455346999346498078742884206645038482605919813310972026652778009936563607674329221659564671169561695459147652644329468477860300457155461599757932791214563809977400660707212893949812127707752376925191791781832743606263497313898971580238159868724473806394218777294166335754803513238666414199176242850354201030396830219841227905976636811580945925060235745858326855737260638208\n", + "302910693998692996157485768413290076965211839626621944053305556019873127215348658443319129342339123390918295305288658936955720600914310923199515865582429127619954801321414425787899624255415504753850383583563665487212526994627797943160476319737448947612788437554588332671509607026477332828398352485700708402060793660439682455811953273623161891850120471491716653711474521276416\n", + "605821387997385992314971536826580153930423679253243888106611112039746254430697316886638258684678246781836590610577317873911441201828621846399031731164858255239909602642828851575799248510831009507700767167127330974425053989255595886320952639474897895225576875109176665343019214052954665656796704971401416804121587320879364911623906547246323783700240942983433307422949042552832\n", + "1211642775994771984629943073653160307860847358506487776213222224079492508861394633773276517369356493563673181221154635747822882403657243692798063462329716510479819205285657703151598497021662019015401534334254661948850107978511191772641905278949795790451153750218353330686038428105909331313593409942802833608243174641758729823247813094492647567400481885966866614845898085105664\n", + "2423285551989543969259886147306320615721694717012975552426444448158985017722789267546553034738712987127346362442309271495645764807314487385596126924659433020959638410571315406303196994043324038030803068668509323897700215957022383545283810557899591580902307500436706661372076856211818662627186819885605667216486349283517459646495626188985295134800963771933733229691796170211328\n", + "4846571103979087938519772294612641231443389434025951104852888896317970035445578535093106069477425974254692724884618542991291529614628974771192253849318866041919276821142630812606393988086648076061606137337018647795400431914044767090567621115799183161804615000873413322744153712423637325254373639771211334432972698567034919292991252377970590269601927543867466459383592340422656\n", + "9693142207958175877039544589225282462886778868051902209705777792635940070891157070186212138954851948509385449769237085982583059229257949542384507698637732083838553642285261625212787976173296152123212274674037295590800863828089534181135242231598366323609230001746826645488307424847274650508747279542422668865945397134069838585982504755941180539203855087734932918767184680845312\n", + "19386284415916351754079089178450564925773557736103804419411555585271880141782314140372424277909703897018770899538474171965166118458515899084769015397275464167677107284570523250425575952346592304246424549348074591181601727656179068362270484463196732647218460003493653290976614849694549301017494559084845337731890794268139677171965009511882361078407710175469865837534369361690624\n", + "38772568831832703508158178356901129851547115472207608838823111170543760283564628280744848555819407794037541799076948343930332236917031798169538030794550928335354214569141046500851151904693184608492849098696149182363203455312358136724540968926393465294436920006987306581953229699389098602034989118169690675463781588536279354343930019023764722156815420350939731675068738723381248\n", + "77545137663665407016316356713802259703094230944415217677646222341087520567129256561489697111638815588075083598153896687860664473834063596339076061589101856670708429138282093001702303809386369216985698197392298364726406910624716273449081937852786930588873840013974613163906459398778197204069978236339381350927563177072558708687860038047529444313630840701879463350137477446762496\n", + "155090275327330814032632713427604519406188461888830435355292444682175041134258513122979394223277631176150167196307793375721328947668127192678152123178203713341416858276564186003404607618772738433971396394784596729452813821249432546898163875705573861177747680027949226327812918797556394408139956472678762701855126354145117417375720076095058888627261681403758926700274954893524992\n", + "310180550654661628065265426855209038812376923777660870710584889364350082268517026245958788446555262352300334392615586751442657895336254385356304246356407426682833716553128372006809215237545476867942792789569193458905627642498865093796327751411147722355495360055898452655625837595112788816279912945357525403710252708290234834751440152190117777254523362807517853400549909787049984\n", + "620361101309323256130530853710418077624753847555321741421169778728700164537034052491917576893110524704600668785231173502885315790672508770712608492712814853365667433106256744013618430475090953735885585579138386917811255284997730187592655502822295444710990720111796905311251675190225577632559825890715050807420505416580469669502880304380235554509046725615035706801099819574099968\n", + "1240722202618646512261061707420836155249507695110643482842339557457400329074068104983835153786221049409201337570462347005770631581345017541425216985425629706731334866212513488027236860950181907471771171158276773835622510569995460375185311005644590889421981440223593810622503350380451155265119651781430101614841010833160939339005760608760471109018093451230071413602199639148199936\n", + "2481444405237293024522123414841672310499015390221286965684679114914800658148136209967670307572442098818402675140924694011541263162690035082850433970851259413462669732425026976054473721900363814943542342316553547671245021139990920750370622011289181778843962880447187621245006700760902310530239303562860203229682021666321878678011521217520942218036186902460142827204399278296399872\n", + "4962888810474586049044246829683344620998030780442573931369358229829601316296272419935340615144884197636805350281849388023082526325380070165700867941702518826925339464850053952108947443800727629887084684633107095342490042279981841500741244022578363557687925760894375242490013401521804621060478607125720406459364043332643757356023042435041884436072373804920285654408798556592799744\n", + "9925777620949172098088493659366689241996061560885147862738716459659202632592544839870681230289768395273610700563698776046165052650760140331401735883405037653850678929700107904217894887601455259774169369266214190684980084559963683001482488045156727115375851521788750484980026803043609242120957214251440812918728086665287514712046084870083768872144747609840571308817597113185599488\n", + "19851555241898344196176987318733378483992123121770295725477432919318405265185089679741362460579536790547221401127397552092330105301520280662803471766810075307701357859400215808435789775202910519548338738532428381369960169119927366002964976090313454230751703043577500969960053606087218484241914428502881625837456173330575029424092169740167537744289495219681142617635194226371198976\n", + "39703110483796688392353974637466756967984246243540591450954865838636810530370179359482724921159073581094442802254795104184660210603040561325606943533620150615402715718800431616871579550405821039096677477064856762739920338239854732005929952180626908461503406087155001939920107212174436968483828857005763251674912346661150058848184339480335075488578990439362285235270388452742397952\n", + "79406220967593376784707949274933513935968492487081182901909731677273621060740358718965449842318147162188885604509590208369320421206081122651213887067240301230805431437600863233743159100811642078193354954129713525479840676479709464011859904361253816923006812174310003879840214424348873936967657714011526503349824693322300117696368678960670150977157980878724570470540776905484795904\n", + "158812441935186753569415898549867027871936984974162365803819463354547242121480717437930899684636294324377771209019180416738640842412162245302427774134480602461610862875201726467486318201623284156386709908259427050959681352959418928023719808722507633846013624348620007759680428848697747873935315428023053006699649386644600235392737357921340301954315961757449140941081553810969591808\n", + "317624883870373507138831797099734055743873969948324731607638926709094484242961434875861799369272588648755542418038360833477281684824324490604855548268961204923221725750403452934972636403246568312773419816518854101919362705918837856047439617445015267692027248697240015519360857697395495747870630856046106013399298773289200470785474715842680603908631923514898281882163107621939183616\n", + "635249767740747014277663594199468111487747939896649463215277853418188968485922869751723598738545177297511084836076721666954563369648648981209711096537922409846443451500806905869945272806493136625546839633037708203838725411837675712094879234890030535384054497394480031038721715394790991495741261712092212026798597546578400941570949431685361207817263847029796563764326215243878367232\n", + "1270499535481494028555327188398936222975495879793298926430555706836377936971845739503447197477090354595022169672153443333909126739297297962419422193075844819692886903001613811739890545612986273251093679266075416407677450823675351424189758469780061070768108994788960062077443430789581982991482523424184424053597195093156801883141898863370722415634527694059593127528652430487756734464\n", + "2540999070962988057110654376797872445950991759586597852861111413672755873943691479006894394954180709190044339344306886667818253478594595924838844386151689639385773806003227623479781091225972546502187358532150832815354901647350702848379516939560122141536217989577920124154886861579163965982965046848368848107194390186313603766283797726741444831269055388119186255057304860975513468928\n", + "5081998141925976114221308753595744891901983519173195705722222827345511747887382958013788789908361418380088678688613773335636506957189191849677688772303379278771547612006455246959562182451945093004374717064301665630709803294701405696759033879120244283072435979155840248309773723158327931965930093696737696214388780372627207532567595453482889662538110776238372510114609721951026937856\n", + "10163996283851952228442617507191489783803967038346391411444445654691023495774765916027577579816722836760177357377227546671273013914378383699355377544606758557543095224012910493919124364903890186008749434128603331261419606589402811393518067758240488566144871958311680496619547446316655863931860187393475392428777560745254415065135190906965779325076221552476745020229219443902053875712\n", + "20327992567703904456885235014382979567607934076692782822888891309382046991549531832055155159633445673520354714754455093342546027828756767398710755089213517115086190448025820987838248729807780372017498868257206662522839213178805622787036135516480977132289743916623360993239094892633311727863720374786950784857555121490508830130270381813931558650152443104953490040458438887804107751424\n", + "40655985135407808913770470028765959135215868153385565645777782618764093983099063664110310319266891347040709429508910186685092055657513534797421510178427034230172380896051641975676497459615560744034997736514413325045678426357611245574072271032961954264579487833246721986478189785266623455727440749573901569715110242981017660260540763627863117300304886209906980080916877775608215502848\n", + "81311970270815617827540940057531918270431736306771131291555565237528187966198127328220620638533782694081418859017820373370184111315027069594843020356854068460344761792103283951352994919231121488069995473028826650091356852715222491148144542065923908529158975666493443972956379570533246911454881499147803139430220485962035320521081527255726234600609772419813960161833755551216431005696\n", + "162623940541631235655081880115063836540863472613542262583111130475056375932396254656441241277067565388162837718035640746740368222630054139189686040713708136920689523584206567902705989838462242976139990946057653300182713705430444982296289084131847817058317951332986887945912759141066493822909762998295606278860440971924070641042163054511452469201219544839627920323667511102432862011392\n", + "325247881083262471310163760230127673081726945227084525166222260950112751864792509312882482554135130776325675436071281493480736445260108278379372081427416273841379047168413135805411979676924485952279981892115306600365427410860889964592578168263695634116635902665973775891825518282132987645819525996591212557720881943848141282084326109022904938402439089679255840647335022204865724022784\n", + "650495762166524942620327520460255346163453890454169050332444521900225503729585018625764965108270261552651350872142562986961472890520216556758744162854832547682758094336826271610823959353848971904559963784230613200730854821721779929185156336527391268233271805331947551783651036564265975291639051993182425115441763887696282564168652218045809876804878179358511681294670044409731448045568\n", + "1300991524333049885240655040920510692326907780908338100664889043800451007459170037251529930216540523105302701744285125973922945781040433113517488325709665095365516188673652543221647918707697943809119927568461226401461709643443559858370312673054782536466543610663895103567302073128531950583278103986364850230883527775392565128337304436091619753609756358717023362589340088819462896091136\n", + "2601983048666099770481310081841021384653815561816676201329778087600902014918340074503059860433081046210605403488570251947845891562080866227034976651419330190731032377347305086443295837415395887618239855136922452802923419286887119716740625346109565072933087221327790207134604146257063901166556207972729700461767055550785130256674608872183239507219512717434046725178680177638925792182272\n", + "5203966097332199540962620163682042769307631123633352402659556175201804029836680149006119720866162092421210806977140503895691783124161732454069953302838660381462064754694610172886591674830791775236479710273844905605846838573774239433481250692219130145866174442655580414269208292514127802333112415945459400923534111101570260513349217744366479014439025434868093450357360355277851584364544\n", + "10407932194664399081925240327364085538615262247266704805319112350403608059673360298012239441732324184842421613954281007791383566248323464908139906605677320762924129509389220345773183349661583550472959420547689811211693677147548478866962501384438260291732348885311160828538416585028255604666224831890918801847068222203140521026698435488732958028878050869736186900714720710555703168729088\n", + "20815864389328798163850480654728171077230524494533409610638224700807216119346720596024478883464648369684843227908562015582767132496646929816279813211354641525848259018778440691546366699323167100945918841095379622423387354295096957733925002768876520583464697770622321657076833170056511209332449663781837603694136444406281042053396870977465916057756101739472373801429441421111406337458176\n", + "41631728778657596327700961309456342154461048989066819221276449401614432238693441192048957766929296739369686455817124031165534264993293859632559626422709283051696518037556881383092733398646334201891837682190759244846774708590193915467850005537753041166929395541244643314153666340113022418664899327563675207388272888812562084106793741954931832115512203478944747602858882842222812674916352\n", + "83263457557315192655401922618912684308922097978133638442552898803228864477386882384097915533858593478739372911634248062331068529986587719265119252845418566103393036075113762766185466797292668403783675364381518489693549417180387830935700011075506082333858791082489286628307332680226044837329798655127350414776545777625124168213587483909863664231024406957889495205717765684445625349832704\n", + "166526915114630385310803845237825368617844195956267276885105797606457728954773764768195831067717186957478745823268496124662137059973175438530238505690837132206786072150227525532370933594585336807567350728763036979387098834360775661871400022151012164667717582164978573256614665360452089674659597310254700829553091555250248336427174967819727328462048813915778990411435531368891250699665408\n", + "333053830229260770621607690475650737235688391912534553770211595212915457909547529536391662135434373914957491646536992249324274119946350877060477011381674264413572144300455051064741867189170673615134701457526073958774197668721551323742800044302024329335435164329957146513229330720904179349319194620509401659106183110500496672854349935639454656924097627831557980822871062737782501399330816\n", + "666107660458521541243215380951301474471376783825069107540423190425830915819095059072783324270868747829914983293073984498648548239892701754120954022763348528827144288600910102129483734378341347230269402915052147917548395337443102647485600088604048658670870328659914293026458661441808358698638389241018803318212366221000993345708699871278909313848195255663115961645742125475565002798661632\n", + "1332215320917043082486430761902602948942753567650138215080846380851661831638190118145566648541737495659829966586147968997297096479785403508241908045526697057654288577201820204258967468756682694460538805830104295835096790674886205294971200177208097317341740657319828586052917322883616717397276778482037606636424732442001986691417399742557818627696390511326231923291484250951130005597323264\n", + "2664430641834086164972861523805205897885507135300276430161692761703323663276380236291133297083474991319659933172295937994594192959570807016483816091053394115308577154403640408517934937513365388921077611660208591670193581349772410589942400354416194634683481314639657172105834645767233434794553556964075213272849464884003973382834799485115637255392781022652463846582968501902260011194646528\n", + "5328861283668172329945723047610411795771014270600552860323385523406647326552760472582266594166949982639319866344591875989188385919141614032967632182106788230617154308807280817035869875026730777842155223320417183340387162699544821179884800708832389269366962629279314344211669291534466869589107113928150426545698929768007946765669598970231274510785562045304927693165937003804520022389293056\n", + "10657722567336344659891446095220823591542028541201105720646771046813294653105520945164533188333899965278639732689183751978376771838283228065935264364213576461234308617614561634071739750053461555684310446640834366680774325399089642359769601417664778538733925258558628688423338583068933739178214227856300853091397859536015893531339197940462549021571124090609855386331874007609040044778586112\n", + "21315445134672689319782892190441647183084057082402211441293542093626589306211041890329066376667799930557279465378367503956753543676566456131870528728427152922468617235229123268143479500106923111368620893281668733361548650798179284719539202835329557077467850517117257376846677166137867478356428455712601706182795719072031787062678395880925098043142248181219710772663748015218080089557172224\n", + "42630890269345378639565784380883294366168114164804422882587084187253178612422083780658132753335599861114558930756735007913507087353132912263741057456854305844937234470458246536286959000213846222737241786563337466723097301596358569439078405670659114154935701034234514753693354332275734956712856911425203412365591438144063574125356791761850196086284496362439421545327496030436160179114344448\n", + "85261780538690757279131568761766588732336228329608845765174168374506357224844167561316265506671199722229117861513470015827014174706265824527482114913708611689874468940916493072573918000427692445474483573126674933446194603192717138878156811341318228309871402068469029507386708664551469913425713822850406824731182876288127148250713583523700392172568992724878843090654992060872320358228688896\n", + "170523561077381514558263137523533177464672456659217691530348336749012714449688335122632531013342399444458235723026940031654028349412531649054964229827417223379748937881832986145147836000855384890948967146253349866892389206385434277756313622682636456619742804136938059014773417329102939826851427645700813649462365752576254296501427167047400784345137985449757686181309984121744640716457377792\n", + "341047122154763029116526275047066354929344913318435383060696673498025428899376670245265062026684798888916471446053880063308056698825063298109928459654834446759497875763665972290295672001710769781897934292506699733784778412770868555512627245365272913239485608273876118029546834658205879653702855291401627298924731505152508593002854334094801568690275970899515372362619968243489281432914755584\n", + "682094244309526058233052550094132709858689826636870766121393346996050857798753340490530124053369597777832942892107760126616113397650126596219856919309668893518995751527331944580591344003421539563795868585013399467569556825541737111025254490730545826478971216547752236059093669316411759307405710582803254597849463010305017186005708668189603137380551941799030744725239936486978562865829511168\n", + "1364188488619052116466105100188265419717379653273741532242786693992101715597506680981060248106739195555665885784215520253232226795300253192439713838619337787037991503054663889161182688006843079127591737170026798935139113651083474222050508981461091652957942433095504472118187338632823518614811421165606509195698926020610034372011417336379206274761103883598061489450479872973957125731659022336\n", + "2728376977238104232932210200376530839434759306547483064485573387984203431195013361962120496213478391111331771568431040506464453590600506384879427677238675574075983006109327778322365376013686158255183474340053597870278227302166948444101017962922183305915884866191008944236374677265647037229622842331213018391397852041220068744022834672758412549522207767196122978900959745947914251463318044672\n", + "5456753954476208465864420400753061678869518613094966128971146775968406862390026723924240992426956782222663543136862081012928907181201012769758855354477351148151966012218655556644730752027372316510366948680107195740556454604333896888202035925844366611831769732382017888472749354531294074459245684662426036782795704082440137488045669345516825099044415534392245957801919491895828502926636089344\n", + "10913507908952416931728840801506123357739037226189932257942293551936813724780053447848481984853913564445327086273724162025857814362402025539517710708954702296303932024437311113289461504054744633020733897360214391481112909208667793776404071851688733223663539464764035776945498709062588148918491369324852073565591408164880274976091338691033650198088831068784491915603838983791657005853272178688\n", + "21827015817904833863457681603012246715478074452379864515884587103873627449560106895696963969707827128890654172547448324051715628724804051079035421417909404592607864048874622226578923008109489266041467794720428782962225818417335587552808143703377466447327078929528071553890997418125176297836982738649704147131182816329760549952182677382067300396177662137568983831207677967583314011706544357376\n", + "43654031635809667726915363206024493430956148904759729031769174207747254899120213791393927939415654257781308345094896648103431257449608102158070842835818809185215728097749244453157846016218978532082935589440857565924451636834671175105616287406754932894654157859056143107781994836250352595673965477299408294262365632659521099904365354764134600792355324275137967662415355935166628023413088714752\n", + "87308063271619335453830726412048986861912297809519458063538348415494509798240427582787855878831308515562616690189793296206862514899216204316141685671637618370431456195498488906315692032437957064165871178881715131848903273669342350211232574813509865789308315718112286215563989672500705191347930954598816588524731265319042199808730709528269201584710648550275935324830711870333256046826177429504\n", + "174616126543238670907661452824097973723824595619038916127076696830989019596480855165575711757662617031125233380379586592413725029798432408632283371343275236740862912390996977812631384064875914128331742357763430263697806547338684700422465149627019731578616631436224572431127979345001410382695861909197633177049462530638084399617461419056538403169421297100551870649661423740666512093652354859008\n", + "349232253086477341815322905648195947447649191238077832254153393661978039192961710331151423515325234062250466760759173184827450059596864817264566742686550473481725824781993955625262768129751828256663484715526860527395613094677369400844930299254039463157233262872449144862255958690002820765391723818395266354098925061276168799234922838113076806338842594201103741299322847481333024187304709718016\n", + "698464506172954683630645811296391894895298382476155664508306787323956078385923420662302847030650468124500933521518346369654900119193729634529133485373100946963451649563987911250525536259503656513326969431053721054791226189354738801689860598508078926314466525744898289724511917380005641530783447636790532708197850122552337598469845676226153612677685188402207482598645694962666048374609419436032\n", + "1396929012345909367261291622592783789790596764952311329016613574647912156771846841324605694061300936249001867043036692739309800238387459269058266970746201893926903299127975822501051072519007313026653938862107442109582452378709477603379721197016157852628933051489796579449023834760011283061566895273581065416395700245104675196939691352452307225355370376804414965197291389925332096749218838872064\n", + "2793858024691818734522583245185567579581193529904622658033227149295824313543693682649211388122601872498003734086073385478619600476774918538116533941492403787853806598255951645002102145038014626053307877724214884219164904757418955206759442394032315705257866102979593158898047669520022566123133790547162130832791400490209350393879382704904614450710740753608829930394582779850664193498437677744128\n", + "5587716049383637469045166490371135159162387059809245316066454298591648627087387365298422776245203744996007468172146770957239200953549837076233067882984807575707613196511903290004204290076029252106615755448429768438329809514837910413518884788064631410515732205959186317796095339040045132246267581094324261665582800980418700787758765409809228901421481507217659860789165559701328386996875355488256\n", + "11175432098767274938090332980742270318324774119618490632132908597183297254174774730596845552490407489992014936344293541914478401907099674152466135765969615151415226393023806580008408580152058504213231510896859536876659619029675820827037769576129262821031464411918372635592190678080090264492535162188648523331165601960837401575517530819618457802842963014435319721578331119402656773993750710976512\n", + "22350864197534549876180665961484540636649548239236981264265817194366594508349549461193691104980814979984029872688587083828956803814199348304932271531939230302830452786047613160016817160304117008426463021793719073753319238059351641654075539152258525642062928823836745271184381356160180528985070324377297046662331203921674803151035061639236915605685926028870639443156662238805313547987501421953024\n", + "44701728395069099752361331922969081273299096478473962528531634388733189016699098922387382209961629959968059745377174167657913607628398696609864543063878460605660905572095226320033634320608234016852926043587438147506638476118703283308151078304517051284125857647673490542368762712320361057970140648754594093324662407843349606302070123278473831211371852057741278886313324477610627095975002843906048\n", + "89403456790138199504722663845938162546598192956947925057063268777466378033398197844774764419923259919936119490754348335315827215256797393219729086127756921211321811144190452640067268641216468033705852087174876295013276952237406566616302156609034102568251715295346981084737525424640722115940281297509188186649324815686699212604140246556947662422743704115482557772626648955221254191950005687812096\n", + "178806913580276399009445327691876325093196385913895850114126537554932756066796395689549528839846519839872238981508696670631654430513594786439458172255513842422643622288380905280134537282432936067411704174349752590026553904474813133232604313218068205136503430590693962169475050849281444231880562595018376373298649631373398425208280493113895324845487408230965115545253297910442508383900011375624192\n", + "357613827160552798018890655383752650186392771827791700228253075109865512133592791379099057679693039679744477963017393341263308861027189572878916344511027684845287244576761810560269074564865872134823408348699505180053107808949626266465208626436136410273006861181387924338950101698562888463761125190036752746597299262746796850416560986227790649690974816461930231090506595820885016767800022751248384\n", + "715227654321105596037781310767505300372785543655583400456506150219731024267185582758198115359386079359488955926034786682526617722054379145757832689022055369690574489153523621120538149129731744269646816697399010360106215617899252532930417252872272820546013722362775848677900203397125776927522250380073505493194598525493593700833121972455581299381949632923860462181013191641770033535600045502496768\n", + "1430455308642211192075562621535010600745571087311166800913012300439462048534371165516396230718772158718977911852069573365053235444108758291515665378044110739381148978307047242241076298259463488539293633394798020720212431235798505065860834505744545641092027444725551697355800406794251553855044500760147010986389197050987187401666243944911162598763899265847720924362026383283540067071200091004993536\n", + "2860910617284422384151125243070021201491142174622333601826024600878924097068742331032792461437544317437955823704139146730106470888217516583031330756088221478762297956614094484482152596518926977078587266789596041440424862471597010131721669011489091282184054889451103394711600813588503107710089001520294021972778394101974374803332487889822325197527798531695441848724052766567080134142400182009987072\n", + "5721821234568844768302250486140042402982284349244667203652049201757848194137484662065584922875088634875911647408278293460212941776435033166062661512176442957524595913228188968964305193037853954157174533579192082880849724943194020263443338022978182564368109778902206789423201627177006215420178003040588043945556788203948749606664975779644650395055597063390883697448105533134160268284800364019974144\n", + "11443642469137689536604500972280084805964568698489334407304098403515696388274969324131169845750177269751823294816556586920425883552870066332125323024352885915049191826456377937928610386075707908314349067158384165761699449886388040526886676045956365128736219557804413578846403254354012430840356006081176087891113576407897499213329951559289300790111194126781767394896211066268320536569600728039948288\n", + "22887284938275379073209001944560169611929137396978668814608196807031392776549938648262339691500354539503646589633113173840851767105740132664250646048705771830098383652912755875857220772151415816628698134316768331523398899772776081053773352091912730257472439115608827157692806508708024861680712012162352175782227152815794998426659903118578601580222388253563534789792422132536641073139201456079896576\n", + "45774569876550758146418003889120339223858274793957337629216393614062785553099877296524679383000709079007293179266226347681703534211480265328501292097411543660196767305825511751714441544302831633257396268633536663046797799545552162107546704183825460514944878231217654315385613017416049723361424024324704351564454305631589996853319806237157203160444776507127069579584844265073282146278402912159793152\n", + "91549139753101516292836007778240678447716549587914675258432787228125571106199754593049358766001418158014586358532452695363407068422960530657002584194823087320393534611651023503428883088605663266514792537267073326093595599091104324215093408367650921029889756462435308630771226034832099446722848048649408703128908611263179993706639612474314406320889553014254139159169688530146564292556805824319586304\n", + "183098279506203032585672015556481356895433099175829350516865574456251142212399509186098717532002836316029172717064905390726814136845921061314005168389646174640787069223302047006857766177211326533029585074534146652187191198182208648430186816735301842059779512924870617261542452069664198893445696097298817406257817222526359987413279224948628812641779106028508278318339377060293128585113611648639172608\n", + "366196559012406065171344031112962713790866198351658701033731148912502284424799018372197435064005672632058345434129810781453628273691842122628010336779292349281574138446604094013715532354422653066059170149068293304374382396364417296860373633470603684119559025849741234523084904139328397786891392194597634812515634445052719974826558449897257625283558212057016556636678754120586257170227223297278345216\n", + "732393118024812130342688062225925427581732396703317402067462297825004568849598036744394870128011345264116690868259621562907256547383684245256020673558584698563148276893208188027431064708845306132118340298136586608748764792728834593720747266941207368239118051699482469046169808278656795573782784389195269625031268890105439949653116899794515250567116424114033113273357508241172514340454446594556690432\n", + "1464786236049624260685376124451850855163464793406634804134924595650009137699196073488789740256022690528233381736519243125814513094767368490512041347117169397126296553786416376054862129417690612264236680596273173217497529585457669187441494533882414736478236103398964938092339616557313591147565568778390539250062537780210879899306233799589030501134232848228066226546715016482345028680908893189113380864\n", + "2929572472099248521370752248903701710326929586813269608269849191300018275398392146977579480512045381056466763473038486251629026189534736981024082694234338794252593107572832752109724258835381224528473361192546346434995059170915338374882989067764829472956472206797929876184679233114627182295131137556781078500125075560421759798612467599178061002268465696456132453093430032964690057361817786378226761728\n", + "5859144944198497042741504497807403420653859173626539216539698382600036550796784293955158961024090762112933526946076972503258052379069473962048165388468677588505186215145665504219448517670762449056946722385092692869990118341830676749765978135529658945912944413595859752369358466229254364590262275113562157000250151120843519597224935198356122004536931392912264906186860065929380114723635572756453523456\n", + "11718289888396994085483008995614806841307718347253078433079396765200073101593568587910317922048181524225867053892153945006516104758138947924096330776937355177010372430291331008438897035341524898113893444770185385739980236683661353499531956271059317891825888827191719504738716932458508729180524550227124314000500302241687039194449870396712244009073862785824529812373720131858760229447271145512907046912\n", + "23436579776793988170966017991229613682615436694506156866158793530400146203187137175820635844096363048451734107784307890013032209516277895848192661553874710354020744860582662016877794070683049796227786889540370771479960473367322706999063912542118635783651777654383439009477433864917017458361049100454248628001000604483374078388899740793424488018147725571649059624747440263717520458894542291025814093824\n", + "46873159553587976341932035982459227365230873389012313732317587060800292406374274351641271688192726096903468215568615780026064419032555791696385323107749420708041489721165324033755588141366099592455573779080741542959920946734645413998127825084237271567303555308766878018954867729834034916722098200908497256002001208966748156777799481586848976036295451143298119249494880527435040917789084582051628187648\n", + "93746319107175952683864071964918454730461746778024627464635174121600584812748548703282543376385452193806936431137231560052128838065111583392770646215498841416082979442330648067511176282732199184911147558161483085919841893469290827996255650168474543134607110617533756037909735459668069833444196401816994512004002417933496313555598963173697952072590902286596238498989761054870081835578169164103256375296\n", + "187492638214351905367728143929836909460923493556049254929270348243201169625497097406565086752770904387613872862274463120104257676130223166785541292430997682832165958884661296135022352565464398369822295116322966171839683786938581655992511300336949086269214221235067512075819470919336139666888392803633989024008004835866992627111197926347395904145181804573192476997979522109740163671156338328206512750592\n", + "374985276428703810735456287859673818921846987112098509858540696486402339250994194813130173505541808775227745724548926240208515352260446333571082584861995365664331917769322592270044705130928796739644590232645932343679367573877163311985022600673898172538428442470135024151638941838672279333776785607267978048016009671733985254222395852694791808290363609146384953995959044219480327342312676656413025501184\n", + "749970552857407621470912575719347637843693974224197019717081392972804678501988389626260347011083617550455491449097852480417030704520892667142165169723990731328663835538645184540089410261857593479289180465291864687358735147754326623970045201347796345076856884940270048303277883677344558667553571214535956096032019343467970508444791705389583616580727218292769907991918088438960654684625353312826051002368\n", + "1499941105714815242941825151438695275687387948448394039434162785945609357003976779252520694022167235100910982898195704960834061409041785334284330339447981462657327671077290369080178820523715186958578360930583729374717470295508653247940090402695592690153713769880540096606555767354689117335107142429071912192064038686935941016889583410779167233161454436585539815983836176877921309369250706625652102004736\n", + "2999882211429630485883650302877390551374775896896788078868325571891218714007953558505041388044334470201821965796391409921668122818083570668568660678895962925314655342154580738160357641047430373917156721861167458749434940591017306495880180805391185380307427539761080193213111534709378234670214284858143824384128077373871882033779166821558334466322908873171079631967672353755842618738501413251304204009472\n", + "5999764422859260971767300605754781102749551793793576157736651143782437428015907117010082776088668940403643931592782819843336245636167141337137321357791925850629310684309161476320715282094860747834313443722334917498869881182034612991760361610782370760614855079522160386426223069418756469340428569716287648768256154747743764067558333643116668932645817746342159263935344707511685237477002826502608408018944\n", + "11999528845718521943534601211509562205499103587587152315473302287564874856031814234020165552177337880807287863185565639686672491272334282674274642715583851701258621368618322952641430564189721495668626887444669834997739762364069225983520723221564741521229710159044320772852446138837512938680857139432575297536512309495487528135116667286233337865291635492684318527870689415023370474954005653005216816037888\n", + "23999057691437043887069202423019124410998207175174304630946604575129749712063628468040331104354675761614575726371131279373344982544668565348549285431167703402517242737236645905282861128379442991337253774889339669995479524728138451967041446443129483042459420318088641545704892277675025877361714278865150595073024618990975056270233334572466675730583270985368637055741378830046740949908011306010433632075776\n", + "47998115382874087774138404846038248821996414350348609261893209150259499424127256936080662208709351523229151452742262558746689965089337130697098570862335406805034485474473291810565722256758885982674507549778679339990959049456276903934082892886258966084918840636177283091409784555350051754723428557730301190146049237981950112540466669144933351461166541970737274111482757660093481899816022612020867264151552\n", + "95996230765748175548276809692076497643992828700697218523786418300518998848254513872161324417418703046458302905484525117493379930178674261394197141724670813610068970948946583621131444513517771965349015099557358679981918098912553807868165785772517932169837681272354566182819569110700103509446857115460602380292098475963900225080933338289866702922333083941474548222965515320186963799632045224041734528303104\n", + "191992461531496351096553619384152995287985657401394437047572836601037997696509027744322648834837406092916605810969050234986759860357348522788394283449341627220137941897893167242262889027035543930698030199114717359963836197825107615736331571545035864339675362544709132365639138221400207018893714230921204760584196951927800450161866676579733405844666167882949096445931030640373927599264090448083469056606208\n", + "383984923062992702193107238768305990575971314802788874095145673202075995393018055488645297669674812185833211621938100469973519720714697045576788566898683254440275883795786334484525778054071087861396060398229434719927672395650215231472663143090071728679350725089418264731278276442800414037787428461842409521168393903855600900323733353159466811689332335765898192891862061280747855198528180896166938113212416\n", + "767969846125985404386214477536611981151942629605577748190291346404151990786036110977290595339349624371666423243876200939947039441429394091153577133797366508880551767591572668969051556108142175722792120796458869439855344791300430462945326286180143457358701450178836529462556552885600828075574856923684819042336787807711201800647466706318933623378664671531796385783724122561495710397056361792333876226424832\n", + "1535939692251970808772428955073223962303885259211155496380582692808303981572072221954581190678699248743332846487752401879894078882858788182307154267594733017761103535183145337938103112216284351445584241592917738879710689582600860925890652572360286914717402900357673058925113105771201656151149713847369638084673575615422403601294933412637867246757329343063592771567448245122991420794112723584667752452849664\n", + "3071879384503941617544857910146447924607770518422310992761165385616607963144144443909162381357398497486665692975504803759788157765717576364614308535189466035522207070366290675876206224432568702891168483185835477759421379165201721851781305144720573829434805800715346117850226211542403312302299427694739276169347151230844807202589866825275734493514658686127185543134896490245982841588225447169335504905699328\n", + "6143758769007883235089715820292895849215541036844621985522330771233215926288288887818324762714796994973331385951009607519576315531435152729228617070378932071044414140732581351752412448865137405782336966371670955518842758330403443703562610289441147658869611601430692235700452423084806624604598855389478552338694302461689614405179733650551468987029317372254371086269792980491965683176450894338671009811398656\n", + "12287517538015766470179431640585791698431082073689243971044661542466431852576577775636649525429593989946662771902019215039152631062870305458457234140757864142088828281465162703504824897730274811564673932743341911037685516660806887407125220578882295317739223202861384471400904846169613249209197710778957104677388604923379228810359467301102937974058634744508742172539585960983931366352901788677342019622797312\n", + "24575035076031532940358863281171583396862164147378487942089323084932863705153155551273299050859187979893325543804038430078305262125740610916914468281515728284177656562930325407009649795460549623129347865486683822075371033321613774814250441157764590635478446405722768942801809692339226498418395421557914209354777209846758457620718934602205875948117269489017484345079171921967862732705803577354684039245594624\n", + "49150070152063065880717726562343166793724328294756975884178646169865727410306311102546598101718375959786651087608076860156610524251481221833828936563031456568355313125860650814019299590921099246258695730973367644150742066643227549628500882315529181270956892811445537885603619384678452996836790843115828418709554419693516915241437869204411751896234538978034968690158343843935725465411607154709368078491189248\n", + "98300140304126131761435453124686333587448656589513951768357292339731454820612622205093196203436751919573302175216153720313221048502962443667657873126062913136710626251721301628038599181842198492517391461946735288301484133286455099257001764631058362541913785622891075771207238769356905993673581686231656837419108839387033830482875738408823503792469077956069937380316687687871450930823214309418736156982378496\n", + "196600280608252263522870906249372667174897313179027903536714584679462909641225244410186392406873503839146604350432307440626442097005924887335315746252125826273421252503442603256077198363684396985034782923893470576602968266572910198514003529262116725083827571245782151542414477538713811987347163372463313674838217678774067660965751476817647007584938155912139874760633375375742901861646428618837472313964756992\n", + "393200561216504527045741812498745334349794626358055807073429169358925819282450488820372784813747007678293208700864614881252884194011849774670631492504251652546842505006885206512154396727368793970069565847786941153205936533145820397028007058524233450167655142491564303084828955077427623974694326744926627349676435357548135321931502953635294015169876311824279749521266750751485803723292857237674944627929513984\n", + "786401122433009054091483624997490668699589252716111614146858338717851638564900977640745569627494015356586417401729229762505768388023699549341262985008503305093685010013770413024308793454737587940139131695573882306411873066291640794056014117048466900335310284983128606169657910154855247949388653489853254699352870715096270643863005907270588030339752623648559499042533501502971607446585714475349889255859027968\n", + "1572802244866018108182967249994981337399178505432223228293716677435703277129801955281491139254988030713172834803458459525011536776047399098682525970017006610187370020027540826048617586909475175880278263391147764612823746132583281588112028234096933800670620569966257212339315820309710495898777306979706509398705741430192541287726011814541176060679505247297118998085067003005943214893171428950699778511718055936\n", + "3145604489732036216365934499989962674798357010864446456587433354871406554259603910562982278509976061426345669606916919050023073552094798197365051940034013220374740040055081652097235173818950351760556526782295529225647492265166563176224056468193867601341241139932514424678631640619420991797554613959413018797411482860385082575452023629082352121359010494594237996170134006011886429786342857901399557023436111872\n", + "6291208979464072432731868999979925349596714021728892913174866709742813108519207821125964557019952122852691339213833838100046147104189596394730103880068026440749480080110163304194470347637900703521113053564591058451294984530333126352448112936387735202682482279865028849357263281238841983595109227918826037594822965720770165150904047258164704242718020989188475992340268012023772859572685715802799114046872223744\n", + "12582417958928144865463737999959850699193428043457785826349733419485626217038415642251929114039904245705382678427667676200092294208379192789460207760136052881498960160220326608388940695275801407042226107129182116902589969060666252704896225872775470405364964559730057698714526562477683967190218455837652075189645931441540330301808094516329408485436041978376951984680536024047545719145371431605598228093744447488\n", + "25164835917856289730927475999919701398386856086915571652699466838971252434076831284503858228079808491410765356855335352400184588416758385578920415520272105762997920320440653216777881390551602814084452214258364233805179938121332505409792451745550940810729929119460115397429053124955367934380436911675304150379291862883080660603616189032658816970872083956753903969361072048095091438290742863211196456187488894976\n", + "50329671835712579461854951999839402796773712173831143305398933677942504868153662569007716456159616982821530713710670704800369176833516771157840831040544211525995840640881306433555762781103205628168904428516728467610359876242665010819584903491101881621459858238920230794858106249910735868760873823350608300758583725766161321207232378065317633941744167913507807938722144096190182876581485726422392912374977789952\n", + "100659343671425158923709903999678805593547424347662286610797867355885009736307325138015432912319233965643061427421341409600738353667033542315681662081088423051991681281762612867111525562206411256337808857033456935220719752485330021639169806982203763242919716477840461589716212499821471737521747646701216601517167451532322642414464756130635267883488335827015615877444288192380365753162971452844785824749955579904\n", + "201318687342850317847419807999357611187094848695324573221595734711770019472614650276030865824638467931286122854842682819201476707334067084631363324162176846103983362563525225734223051124412822512675617714066913870441439504970660043278339613964407526485839432955680923179432424999642943475043495293402433203034334903064645284828929512261270535766976671654031231754888576384760731506325942905689571649499911159808\n", + "402637374685700635694839615998715222374189697390649146443191469423540038945229300552061731649276935862572245709685365638402953414668134169262726648324353692207966725127050451468446102248825645025351235428133827740882879009941320086556679227928815052971678865911361846358864849999285886950086990586804866406068669806129290569657859024522541071533953343308062463509777152769521463012651885811379143298999822319616\n", + "805274749371401271389679231997430444748379394781298292886382938847080077890458601104123463298553871725144491419370731276805906829336268338525453296648707384415933450254100902936892204497651290050702470856267655481765758019882640173113358455857630105943357731822723692717729699998571773900173981173609732812137339612258581139315718049045082143067906686616124927019554305539042926025303771622758286597999644639232\n", + "1610549498742802542779358463994860889496758789562596585772765877694160155780917202208246926597107743450288982838741462553611813658672536677050906593297414768831866900508201805873784408995302580101404941712535310963531516039765280346226716911715260211886715463645447385435459399997143547800347962347219465624274679224517162278631436098090164286135813373232249854039108611078085852050607543245516573195999289278464\n", + "3221098997485605085558716927989721778993517579125193171545531755388320311561834404416493853194215486900577965677482925107223627317345073354101813186594829537663733801016403611747568817990605160202809883425070621927063032079530560692453433823430520423773430927290894770870918799994287095600695924694438931248549358449034324557262872196180328572271626746464499708078217222156171704101215086491033146391998578556928\n", + "6442197994971210171117433855979443557987035158250386343091063510776640623123668808832987706388430973801155931354965850214447254634690146708203626373189659075327467602032807223495137635981210320405619766850141243854126064159061121384906867646861040847546861854581789541741837599988574191201391849388877862497098716898068649114525744392360657144543253492928999416156434444312343408202430172982066292783997157113856\n", + "12884395989942420342234867711958887115974070316500772686182127021553281246247337617665975412776861947602311862709931700428894509269380293416407252746379318150654935204065614446990275271962420640811239533700282487708252128318122242769813735293722081695093723709163579083483675199977148382402783698777755724994197433796137298229051488784721314289086506985857998832312868888624686816404860345964132585567994314227712\n", + "25768791979884840684469735423917774231948140633001545372364254043106562492494675235331950825553723895204623725419863400857789018538760586832814505492758636301309870408131228893980550543924841281622479067400564975416504256636244485539627470587444163390187447418327158166967350399954296764805567397555511449988394867592274596458102977569442628578173013971715997664625737777249373632809720691928265171135988628455424\n", + "51537583959769681368939470847835548463896281266003090744728508086213124984989350470663901651107447790409247450839726801715578037077521173665629010985517272602619740816262457787961101087849682563244958134801129950833008513272488971079254941174888326780374894836654316333934700799908593529611134795111022899976789735184549192916205955138885257156346027943431995329251475554498747265619441383856530342271977256910848\n", + "103075167919539362737878941695671096927792562532006181489457016172426249969978700941327803302214895580818494901679453603431156074155042347331258021971034545205239481632524915575922202175699365126489916269602259901666017026544977942158509882349776653560749789673308632667869401599817187059222269590222045799953579470369098385832411910277770514312692055886863990658502951108997494531238882767713060684543954513821696\n", + "206150335839078725475757883391342193855585125064012362978914032344852499939957401882655606604429791161636989803358907206862312148310084694662516043942069090410478963265049831151844404351398730252979832539204519803332034053089955884317019764699553307121499579346617265335738803199634374118444539180444091599907158940738196771664823820555541028625384111773727981317005902217994989062477765535426121369087909027643392\n", + "412300671678157450951515766782684387711170250128024725957828064689704999879914803765311213208859582323273979606717814413724624296620169389325032087884138180820957926530099662303688808702797460505959665078409039606664068106179911768634039529399106614242999158693234530671477606399268748236889078360888183199814317881476393543329647641111082057250768223547455962634011804435989978124955531070852242738175818055286784\n", + "824601343356314901903031533565368775422340500256049451915656129379409999759829607530622426417719164646547959213435628827449248593240338778650064175768276361641915853060199324607377617405594921011919330156818079213328136212359823537268079058798213228485998317386469061342955212798537496473778156721776366399628635762952787086659295282222164114501536447094911925268023608871979956249911062141704485476351636110573568\n", + "1649202686712629803806063067130737550844681000512098903831312258758819999519659215061244852835438329293095918426871257654898497186480677557300128351536552723283831706120398649214755234811189842023838660313636158426656272424719647074536158117596426456971996634772938122685910425597074992947556313443552732799257271525905574173318590564444328229003072894189823850536047217743959912499822124283408970952703272221147136\n", + "3298405373425259607612126134261475101689362001024197807662624517517639999039318430122489705670876658586191836853742515309796994372961355114600256703073105446567663412240797298429510469622379684047677320627272316853312544849439294149072316235192852913943993269545876245371820851194149985895112626887105465598514543051811148346637181128888656458006145788379647701072094435487919824999644248566817941905406544442294272\n", + "6596810746850519215224252268522950203378724002048395615325249035035279998078636860244979411341753317172383673707485030619593988745922710229200513406146210893135326824481594596859020939244759368095354641254544633706625089698878588298144632470385705827887986539091752490743641702388299971790225253774210931197029086103622296693274362257777312916012291576759295402144188870975839649999288497133635883810813088884588544\n", + "13193621493701038430448504537045900406757448004096791230650498070070559996157273720489958822683506634344767347414970061239187977491845420458401026812292421786270653648963189193718041878489518736190709282509089267413250179397757176596289264940771411655775973078183504981487283404776599943580450507548421862394058172207244593386548724515554625832024583153518590804288377741951679299998576994267271767621626177769177088\n", + "26387242987402076860897009074091800813514896008193582461300996140141119992314547440979917645367013268689534694829940122478375954983690840916802053624584843572541307297926378387436083756979037472381418565018178534826500358795514353192578529881542823311551946156367009962974566809553199887160901015096843724788116344414489186773097449031109251664049166307037181608576755483903358599997153988534543535243252355538354176\n", + "52774485974804153721794018148183601627029792016387164922601992280282239984629094881959835290734026537379069389659880244956751909967381681833604107249169687145082614595852756774872167513958074944762837130036357069653000717591028706385157059763085646623103892312734019925949133619106399774321802030193687449576232688828978373546194898062218503328098332614074363217153510967806717199994307977069087070486504711076708352\n", + "105548971949608307443588036296367203254059584032774329845203984560564479969258189763919670581468053074758138779319760489913503819934763363667208214498339374290165229191705513549744335027916149889525674260072714139306001435182057412770314119526171293246207784625468039851898267238212799548643604060387374899152465377657956747092389796124437006656196665228148726434307021935613434399988615954138174140973009422153416704\n", + "211097943899216614887176072592734406508119168065548659690407969121128959938516379527839341162936106149516277558639520979827007639869526727334416428996678748580330458383411027099488670055832299779051348520145428278612002870364114825540628239052342586492415569250936079703796534476425599097287208120774749798304930755315913494184779592248874013312393330456297452868614043871226868799977231908276348281946018844306833408\n", + "422195887798433229774352145185468813016238336131097319380815938242257919877032759055678682325872212299032555117279041959654015279739053454668832857993357497160660916766822054198977340111664599558102697040290856557224005740728229651081256478104685172984831138501872159407593068952851198194574416241549499596609861510631826988369559184497748026624786660912594905737228087742453737599954463816552696563892037688613666816\n", + "844391775596866459548704290370937626032476672262194638761631876484515839754065518111357364651744424598065110234558083919308030559478106909337665715986714994321321833533644108397954680223329199116205394080581713114448011481456459302162512956209370345969662277003744318815186137905702396389148832483098999193219723021263653976739118368995496053249573321825189811474456175484907475199908927633105393127784075377227333632\n", + "1688783551193732919097408580741875252064953344524389277523263752969031679508131036222714729303488849196130220469116167838616061118956213818675331431973429988642643667067288216795909360446658398232410788161163426228896022962912918604325025912418740691939324554007488637630372275811404792778297664966197998386439446042527307953478236737990992106499146643650379622948912350969814950399817855266210786255568150754454667264\n", + "3377567102387465838194817161483750504129906689048778555046527505938063359016262072445429458606977698392260440938232335677232122237912427637350662863946859977285287334134576433591818720893316796464821576322326852457792045925825837208650051824837481383878649108014977275260744551622809585556595329932395996772878892085054615906956473475981984212998293287300759245897824701939629900799635710532421572511136301508909334528\n", + "6755134204774931676389634322967501008259813378097557110093055011876126718032524144890858917213955396784520881876464671354464244475824855274701325727893719954570574668269152867183637441786633592929643152644653704915584091851651674417300103649674962767757298216029954550521489103245619171113190659864791993545757784170109231813912946951963968425996586574601518491795649403879259801599271421064843145022272603017818669056\n", + "13510268409549863352779268645935002016519626756195114220186110023752253436065048289781717834427910793569041763752929342708928488951649710549402651455787439909141149336538305734367274883573267185859286305289307409831168183703303348834600207299349925535514596432059909101042978206491238342226381319729583987091515568340218463627825893903927936851993173149203036983591298807758519603198542842129686290044545206035637338112\n", + "27020536819099726705558537291870004033039253512390228440372220047504506872130096579563435668855821587138083527505858685417856977903299421098805302911574879818282298673076611468734549767146534371718572610578614819662336367406606697669200414598699851071029192864119818202085956412982476684452762639459167974183031136680436927255651787807855873703986346298406073967182597615517039206397085684259372580089090412071274676224\n", + "54041073638199453411117074583740008066078507024780456880744440095009013744260193159126871337711643174276167055011717370835713955806598842197610605823149759636564597346153222937469099534293068743437145221157229639324672734813213395338400829197399702142058385728239636404171912825964953368905525278918335948366062273360873854511303575615711747407972692596812147934365195231034078412794171368518745160178180824142549352448\n", + "108082147276398906822234149167480016132157014049560913761488880190018027488520386318253742675423286348552334110023434741671427911613197684395221211646299519273129194692306445874938199068586137486874290442314459278649345469626426790676801658394799404284116771456479272808343825651929906737811050557836671896732124546721747709022607151231423494815945385193624295868730390462068156825588342737037490320356361648285098704896\n", + "216164294552797813644468298334960032264314028099121827522977760380036054977040772636507485350846572697104668220046869483342855823226395368790442423292599038546258389384612891749876398137172274973748580884628918557298690939252853581353603316789598808568233542912958545616687651303859813475622101115673343793464249093443495418045214302462846989631890770387248591737460780924136313651176685474074980640712723296570197409792\n", + "432328589105595627288936596669920064528628056198243655045955520760072109954081545273014970701693145394209336440093738966685711646452790737580884846585198077092516778769225783499752796274344549947497161769257837114597381878505707162707206633579197617136467085825917091233375302607719626951244202231346687586928498186886990836090428604925693979263781540774497183474921561848272627302353370948149961281425446593140394819584\n", + "864657178211191254577873193339840129057256112396487310091911041520144219908163090546029941403386290788418672880187477933371423292905581475161769693170396154185033557538451566999505592548689099894994323538515674229194763757011414325414413267158395234272934171651834182466750605215439253902488404462693375173856996373773981672180857209851387958527563081548994366949843123696545254604706741896299922562850893186280789639168\n", + "1729314356422382509155746386679680258114512224792974620183822083040288439816326181092059882806772581576837345760374955866742846585811162950323539386340792308370067115076903133999011185097378199789988647077031348458389527514022828650828826534316790468545868343303668364933501210430878507804976808925386750347713992747547963344361714419702775917055126163097988733899686247393090509209413483792599845125701786372561579278336\n", + "3458628712844765018311492773359360516229024449585949240367644166080576879632652362184119765613545163153674691520749911733485693171622325900647078772681584616740134230153806267998022370194756399579977294154062696916779055028045657301657653068633580937091736686607336729867002420861757015609953617850773500695427985495095926688723428839405551834110252326195977467799372494786181018418826967585199690251403572745123158556672\n", + "6917257425689530036622985546718721032458048899171898480735288332161153759265304724368239531227090326307349383041499823466971386343244651801294157545363169233480268460307612535996044740389512799159954588308125393833558110056091314603315306137267161874183473373214673459734004841723514031219907235701547001390855970990191853377446857678811103668220504652391954935598744989572362036837653935170399380502807145490246317113344\n", + "13834514851379060073245971093437442064916097798343796961470576664322307518530609448736479062454180652614698766082999646933942772686489303602588315090726338466960536920615225071992089480779025598319909176616250787667116220112182629206630612274534323748366946746429346919468009683447028062439814471403094002781711941980383706754893715357622207336441009304783909871197489979144724073675307870340798761005614290980492634226688\n", + "27669029702758120146491942186874884129832195596687593922941153328644615037061218897472958124908361305229397532165999293867885545372978607205176630181452676933921073841230450143984178961558051196639818353232501575334232440224365258413261224549068647496733893492858693838936019366894056124879628942806188005563423883960767413509787430715244414672882018609567819742394979958289448147350615740681597522011228581960985268453376\n", + "55338059405516240292983884373749768259664391193375187845882306657289230074122437794945916249816722610458795064331998587735771090745957214410353260362905353867842147682460900287968357923116102393279636706465003150668464880448730516826522449098137294993467786985717387677872038733788112249759257885612376011126847767921534827019574861430488829345764037219135639484789959916578896294701231481363195044022457163921970536906752\n", + "110676118811032480585967768747499536519328782386750375691764613314578460148244875589891832499633445220917590128663997175471542181491914428820706520725810707735684295364921800575936715846232204786559273412930006301336929760897461033653044898196274589986935573971434775355744077467576224499518515771224752022253695535843069654039149722860977658691528074438271278969579919833157792589402462962726390088044914327843941073813504\n", + "221352237622064961171935537494999073038657564773500751383529226629156920296489751179783664999266890441835180257327994350943084362983828857641413041451621415471368590729843601151873431692464409573118546825860012602673859521794922067306089796392549179973871147942869550711488154935152448999037031542449504044507391071686139308078299445721955317383056148876542557939159839666315585178804925925452780176089828655687882147627008\n", + "442704475244129922343871074989998146077315129547001502767058453258313840592979502359567329998533780883670360514655988701886168725967657715282826082903242830942737181459687202303746863384928819146237093651720025205347719043589844134612179592785098359947742295885739101422976309870304897998074063084899008089014782143372278616156598891443910634766112297753085115878319679332631170357609851850905560352179657311375764295254016\n", + "885408950488259844687742149979996292154630259094003005534116906516627681185959004719134659997067561767340721029311977403772337451935315430565652165806485661885474362919374404607493726769857638292474187303440050410695438087179688269224359185570196719895484591771478202845952619740609795996148126169798016178029564286744557232313197782887821269532224595506170231756639358665262340715219703701811120704359314622751528590508032\n", + "1770817900976519689375484299959992584309260518188006011068233813033255362371918009438269319994135123534681442058623954807544674903870630861131304331612971323770948725838748809214987453539715276584948374606880100821390876174359376538448718371140393439790969183542956405691905239481219591992296252339596032356059128573489114464626395565775642539064449191012340463513278717330524681430439407403622241408718629245503057181016064\n", + "3541635801953039378750968599919985168618521036376012022136467626066510724743836018876538639988270247069362884117247909615089349807741261722262608663225942647541897451677497618429974907079430553169896749213760201642781752348718753076897436742280786879581938367085912811383810478962439183984592504679192064712118257146978228929252791131551285078128898382024680927026557434661049362860878814807244482817437258491006114362032128\n", + "7083271603906078757501937199839970337237042072752024044272935252133021449487672037753077279976540494138725768234495819230178699615482523444525217326451885295083794903354995236859949814158861106339793498427520403285563504697437506153794873484561573759163876734171825622767620957924878367969185009358384129424236514293956457858505582263102570156257796764049361854053114869322098725721757629614488965634874516982012228724064256\n", + "14166543207812157515003874399679940674474084145504048088545870504266042898975344075506154559953080988277451536468991638460357399230965046889050434652903770590167589806709990473719899628317722212679586996855040806571127009394875012307589746969123147518327753468343651245535241915849756735938370018716768258848473028587912915717011164526205140312515593528098723708106229738644197451443515259228977931269749033964024457448128512\n", + "28333086415624315030007748799359881348948168291008096177091741008532085797950688151012309119906161976554903072937983276920714798461930093778100869305807541180335179613419980947439799256635444425359173993710081613142254018789750024615179493938246295036655506936687302491070483831699513471876740037433536517696946057175825831434022329052410280625031187056197447416212459477288394902887030518457955862539498067928048914896257024\n", + "56666172831248630060015497598719762697896336582016192354183482017064171595901376302024618239812323953109806145875966553841429596923860187556201738611615082360670359226839961894879598513270888850718347987420163226284508037579500049230358987876492590073311013873374604982140967663399026943753480074867073035393892114351651662868044658104820561250062374112394894832424918954576789805774061036915911725078996135856097829792514048\n", + "113332345662497260120030995197439525395792673164032384708366964034128343191802752604049236479624647906219612291751933107682859193847720375112403477223230164721340718453679923789759197026541777701436695974840326452569016075159000098460717975752985180146622027746749209964281935326798053887506960149734146070787784228703303325736089316209641122500124748224789789664849837909153579611548122073831823450157992271712195659585028096\n", + "226664691324994520240061990394879050791585346328064769416733928068256686383605505208098472959249295812439224583503866215365718387695440750224806954446460329442681436907359847579518394053083555402873391949680652905138032150318000196921435951505970360293244055493498419928563870653596107775013920299468292141575568457406606651472178632419282245000249496449579579329699675818307159223096244147663646900315984543424391319170056192\n", + "453329382649989040480123980789758101583170692656129538833467856136513372767211010416196945918498591624878449167007732430731436775390881500449613908892920658885362873814719695159036788106167110805746783899361305810276064300636000393842871903011940720586488110986996839857127741307192215550027840598936584283151136914813213302944357264838564490000498992899159158659399351636614318446192488295327293800631969086848782638340112384\n", + "906658765299978080960247961579516203166341385312259077666935712273026745534422020832393891836997183249756898334015464861462873550781763000899227817785841317770725747629439390318073576212334221611493567798722611620552128601272000787685743806023881441172976221973993679714255482614384431100055681197873168566302273829626426605888714529677128980000997985798318317318798703273228636892384976590654587601263938173697565276680224768\n", + "1813317530599956161920495923159032406332682770624518155333871424546053491068844041664787783673994366499513796668030929722925747101563526001798455635571682635541451495258878780636147152424668443222987135597445223241104257202544001575371487612047762882345952443947987359428510965228768862200111362395746337132604547659252853211777429059354257960001995971596636634637597406546457273784769953181309175202527876347395130553360449536\n", + "3626635061199912323840991846318064812665365541249036310667742849092106982137688083329575567347988732999027593336061859445851494203127052003596911271143365271082902990517757561272294304849336886445974271194890446482208514405088003150742975224095525764691904887895974718857021930457537724400222724791492674265209095318505706423554858118708515920003991943193273269275194813092914547569539906362618350405055752694790261106720899072\n", + "7253270122399824647681983692636129625330731082498072621335485698184213964275376166659151134695977465998055186672123718891702988406254104007193822542286730542165805981035515122544588609698673772891948542389780892964417028810176006301485950448191051529383809775791949437714043860915075448800445449582985348530418190637011412847109716237417031840007983886386546538550389626185829095139079812725236700810111505389580522213441798144\n", + "14506540244799649295363967385272259250661462164996145242670971396368427928550752333318302269391954931996110373344247437783405976812508208014387645084573461084331611962071030245089177219397347545783897084779561785928834057620352012602971900896382103058767619551583898875428087721830150897600890899165970697060836381274022825694219432474834063680015967772773093077100779252371658190278159625450473401620223010779161044426883596288\n", + "29013080489599298590727934770544518501322924329992290485341942792736855857101504666636604538783909863992220746688494875566811953625016416028775290169146922168663223924142060490178354438794695091567794169559123571857668115240704025205943801792764206117535239103167797750856175443660301795201781798331941394121672762548045651388438864949668127360031935545546186154201558504743316380556319250900946803240446021558322088853767192576\n", + "58026160979198597181455869541089037002645848659984580970683885585473711714203009333273209077567819727984441493376989751133623907250032832057550580338293844337326447848284120980356708877589390183135588339118247143715336230481408050411887603585528412235070478206335595501712350887320603590403563596663882788243345525096091302776877729899336254720063871091092372308403117009486632761112638501801893606480892043116644177707534385152\n", + "116052321958397194362911739082178074005291697319969161941367771170947423428406018666546418155135639455968882986753979502267247814500065664115101160676587688674652895696568241960713417755178780366271176678236494287430672460962816100823775207171056824470140956412671191003424701774641207180807127193327765576486691050192182605553755459798672509440127742182184744616806234018973265522225277003603787212961784086233288355415068770304\n", + "232104643916794388725823478164356148010583394639938323882735542341894846856812037333092836310271278911937765973507959004534495629000131328230202321353175377349305791393136483921426835510357560732542353356472988574861344921925632201647550414342113648940281912825342382006849403549282414361614254386655531152973382100384365211107510919597345018880255484364369489233612468037946531044450554007207574425923568172466576710830137540608\n", + "464209287833588777451646956328712296021166789279876647765471084683789693713624074666185672620542557823875531947015918009068991258000262656460404642706350754698611582786272967842853671020715121465084706712945977149722689843851264403295100828684227297880563825650684764013698807098564828723228508773311062305946764200768730422215021839194690037760510968728738978467224936075893062088901108014415148851847136344933153421660275081216\n", + "928418575667177554903293912657424592042333578559753295530942169367579387427248149332371345241085115647751063894031836018137982516000525312920809285412701509397223165572545935685707342041430242930169413425891954299445379687702528806590201657368454595761127651301369528027397614197129657446457017546622124611893528401537460844430043678389380075521021937457477956934449872151786124177802216028830297703694272689866306843320550162432\n", + "1856837151334355109806587825314849184084667157119506591061884338735158774854496298664742690482170231295502127788063672036275965032001050625841618570825403018794446331145091871371414684082860485860338826851783908598890759375405057613180403314736909191522255302602739056054795228394259314892914035093244249223787056803074921688860087356778760151042043874914955913868899744303572248355604432057660595407388545379732613686641100324864\n", + "3713674302668710219613175650629698368169334314239013182123768677470317549708992597329485380964340462591004255576127344072551930064002101251683237141650806037588892662290183742742829368165720971720677653703567817197781518750810115226360806629473818383044510605205478112109590456788518629785828070186488498447574113606149843377720174713557520302084087749829911827737799488607144496711208864115321190814777090759465227373282200649728\n", + "7427348605337420439226351301259396736338668628478026364247537354940635099417985194658970761928680925182008511152254688145103860128004202503366474283301612075177785324580367485485658736331441943441355307407135634395563037501620230452721613258947636766089021210410956224219180913577037259571656140372976996895148227212299686755440349427115040604168175499659823655475598977214288993422417728230642381629554181518930454746564401299456\n", + "14854697210674840878452702602518793472677337256956052728495074709881270198835970389317941523857361850364017022304509376290207720256008405006732948566603224150355570649160734970971317472662883886882710614814271268791126075003240460905443226517895273532178042420821912448438361827154074519143312280745953993790296454424599373510880698854230081208336350999319647310951197954428577986844835456461284763259108363037860909493128802598912\n", + "29709394421349681756905405205037586945354674513912105456990149419762540397671940778635883047714723700728034044609018752580415440512016810013465897133206448300711141298321469941942634945325767773765421229628542537582252150006480921810886453035790547064356084841643824896876723654308149038286624561491907987580592908849198747021761397708460162416672701998639294621902395908857155973689670912922569526518216726075721818986257605197824\n", + "59418788842699363513810810410075173890709349027824210913980298839525080795343881557271766095429447401456068089218037505160830881024033620026931794266412896601422282596642939883885269890651535547530842459257085075164504300012961843621772906071581094128712169683287649793753447308616298076573249122983815975161185817698397494043522795416920324833345403997278589243804791817714311947379341825845139053036433452151443637972515210395648\n", + "118837577685398727027621620820150347781418698055648421827960597679050161590687763114543532190858894802912136178436075010321661762048067240053863588532825793202844565193285879767770539781303071095061684918514170150329008600025923687243545812143162188257424339366575299587506894617232596153146498245967631950322371635396794988087045590833840649666690807994557178487609583635428623894758683651690278106072866904302887275945030420791296\n", + "237675155370797454055243241640300695562837396111296843655921195358100323181375526229087064381717789605824272356872150020643323524096134480107727177065651586405689130386571759535541079562606142190123369837028340300658017200051847374487091624286324376514848678733150599175013789234465192306292996491935263900644743270793589976174091181667681299333381615989114356975219167270857247789517367303380556212145733808605774551890060841582592\n", + "475350310741594908110486483280601391125674792222593687311842390716200646362751052458174128763435579211648544713744300041286647048192268960215454354131303172811378260773143519071082159125212284380246739674056680601316034400103694748974183248572648753029697357466301198350027578468930384612585992983870527801289486541587179952348182363335362598666763231978228713950438334541714495579034734606761112424291467617211549103780121683165184\n", + "950700621483189816220972966561202782251349584445187374623684781432401292725502104916348257526871158423297089427488600082573294096384537920430908708262606345622756521546287038142164318250424568760493479348113361202632068800207389497948366497145297506059394714932602396700055156937860769225171985967741055602578973083174359904696364726670725197333526463956457427900876669083428991158069469213522224848582935234423098207560243366330368\n", + "1901401242966379632441945933122405564502699168890374749247369562864802585451004209832696515053742316846594178854977200165146588192769075840861817416525212691245513043092574076284328636500849137520986958696226722405264137600414778995896732994290595012118789429865204793400110313875721538450343971935482111205157946166348719809392729453341450394667052927912914855801753338166857982316138938427044449697165870468846196415120486732660736\n", + "3802802485932759264883891866244811129005398337780749498494739125729605170902008419665393030107484633693188357709954400330293176385538151681723634833050425382491026086185148152568657273001698275041973917392453444810528275200829557991793465988581190024237578859730409586800220627751443076900687943870964222410315892332697439618785458906682900789334105855825829711603506676333715964632277876854088899394331740937692392830240973465321472\n", + "7605604971865518529767783732489622258010796675561498996989478251459210341804016839330786060214969267386376715419908800660586352771076303363447269666100850764982052172370296305137314546003396550083947834784906889621056550401659115983586931977162380048475157719460819173600441255502886153801375887741928444820631784665394879237570917813365801578668211711651659423207013352667431929264555753708177798788663481875384785660481946930642944\n", + "15211209943731037059535567464979244516021593351122997993978956502918420683608033678661572120429938534772753430839817601321172705542152606726894539332201701529964104344740592610274629092006793100167895669569813779242113100803318231967173863954324760096950315438921638347200882511005772307602751775483856889641263569330789758475141835626731603157336423423303318846414026705334863858529111507416355597577326963750769571320963893861285888\n", + "30422419887462074119071134929958489032043186702245995987957913005836841367216067357323144240859877069545506861679635202642345411084305213453789078664403403059928208689481185220549258184013586200335791339139627558484226201606636463934347727908649520193900630877843276694401765022011544615205503550967713779282527138661579516950283671253463206314672846846606637692828053410669727717058223014832711195154653927501539142641927787722571776\n", + "60844839774924148238142269859916978064086373404491991975915826011673682734432134714646288481719754139091013723359270405284690822168610426907578157328806806119856417378962370441098516368027172400671582678279255116968452403213272927868695455817299040387801261755686553388803530044023089230411007101935427558565054277323159033900567342506926412629345693693213275385656106821339455434116446029665422390309307855003078285283855575445143552\n", + "121689679549848296476284539719833956128172746808983983951831652023347365468864269429292576963439508278182027446718540810569381644337220853815156314657613612239712834757924740882197032736054344801343165356558510233936904806426545855737390911634598080775602523511373106777607060088046178460822014203870855117130108554646318067801134685013852825258691387386426550771312213642678910868232892059330844780618615710006156570567711150890287104\n", + "243379359099696592952569079439667912256345493617967967903663304046694730937728538858585153926879016556364054893437081621138763288674441707630312629315227224479425669515849481764394065472108689602686330713117020467873809612853091711474781823269196161551205047022746213555214120176092356921644028407741710234260217109292636135602269370027705650517382774772853101542624427285357821736465784118661689561237231420012313141135422301780574208\n", + "486758718199393185905138158879335824512690987235935935807326608093389461875457077717170307853758033112728109786874163242277526577348883415260625258630454448958851339031698963528788130944217379205372661426234040935747619225706183422949563646538392323102410094045492427110428240352184713843288056815483420468520434218585272271204538740055411301034765549545706203085248854570715643472931568237323379122474462840024626282270844603561148416\n", + "973517436398786371810276317758671649025381974471871871614653216186778923750914155434340615707516066225456219573748326484555053154697766830521250517260908897917702678063397927057576261888434758410745322852468081871495238451412366845899127293076784646204820188090984854220856480704369427686576113630966840937040868437170544542409077480110822602069531099091412406170497709141431286945863136474646758244948925680049252564541689207122296832\n", + "1947034872797572743620552635517343298050763948943743743229306432373557847501828310868681231415032132450912439147496652969110106309395533661042501034521817795835405356126795854115152523776869516821490645704936163742990476902824733691798254586153569292409640376181969708441712961408738855373152227261933681874081736874341089084818154960221645204139062198182824812340995418282862573891726272949293516489897851360098505129083378414244593664\n", + "3894069745595145487241105271034686596101527897887487486458612864747115695003656621737362462830064264901824878294993305938220212618791067322085002069043635591670810712253591708230305047553739033642981291409872327485980953805649467383596509172307138584819280752363939416883425922817477710746304454523867363748163473748682178169636309920443290408278124396365649624681990836565725147783452545898587032979795702720197010258166756828489187328\n", + "7788139491190290974482210542069373192203055795774974972917225729494231390007313243474724925660128529803649756589986611876440425237582134644170004138087271183341621424507183416460610095107478067285962582819744654971961907611298934767193018344614277169638561504727878833766851845634955421492608909047734727496326947497364356339272619840886580816556248792731299249363981673131450295566905091797174065959591405440394020516333513656978374656\n", + "15576278982380581948964421084138746384406111591549949945834451458988462780014626486949449851320257059607299513179973223752880850475164269288340008276174542366683242849014366832921220190214956134571925165639489309943923815222597869534386036689228554339277123009455757667533703691269910842985217818095469454992653894994728712678545239681773161633112497585462598498727963346262900591133810183594348131919182810880788041032667027313956749312\n", + "31152557964761163897928842168277492768812223183099899891668902917976925560029252973898899702640514119214599026359946447505761700950328538576680016552349084733366485698028733665842440380429912269143850331278978619887847630445195739068772073378457108678554246018911515335067407382539821685970435636190938909985307789989457425357090479363546323266224995170925196997455926692525801182267620367188696263838365621761576082065334054627913498624\n", + "62305115929522327795857684336554985537624446366199799783337805835953851120058505947797799405281028238429198052719892895011523401900657077153360033104698169466732971396057467331684880760859824538287700662557957239775695260890391478137544146756914217357108492037823030670134814765079643371940871272381877819970615579978914850714180958727092646532449990341850393994911853385051602364535240734377392527676731243523152164130668109255826997248\n", + "124610231859044655591715368673109971075248892732399599566675611671907702240117011895595598810562056476858396105439785790023046803801314154306720066209396338933465942792114934663369761521719649076575401325115914479551390521780782956275088293513828434714216984075646061340269629530159286743881742544763755639941231159957829701428361917454185293064899980683700787989823706770103204729070481468754785055353462487046304328261336218511653994496\n", + "249220463718089311183430737346219942150497785464799199133351223343815404480234023791191197621124112953716792210879571580046093607602628308613440132418792677866931885584229869326739523043439298153150802650231828959102781043561565912550176587027656869428433968151292122680539259060318573487763485089527511279882462319915659402856723834908370586129799961367401575979647413540206409458140962937509570110706924974092608656522672437023307988992\n", + "498440927436178622366861474692439884300995570929598398266702446687630808960468047582382395242248225907433584421759143160092187215205256617226880264837585355733863771168459738653479046086878596306301605300463657918205562087123131825100353174055313738856867936302584245361078518120637146975526970179055022559764924639831318805713447669816741172259599922734803151959294827080412818916281925875019140221413849948185217313045344874046615977984\n", + "996881854872357244733722949384879768601991141859196796533404893375261617920936095164764790484496451814867168843518286320184374430410513234453760529675170711467727542336919477306958092173757192612603210600927315836411124174246263650200706348110627477713735872605168490722157036241274293951053940358110045119529849279662637611426895339633482344519199845469606303918589654160825637832563851750038280442827699896370434626090689748093231955968\n", + "1993763709744714489467445898769759537203982283718393593066809786750523235841872190329529580968992903629734337687036572640368748860821026468907521059350341422935455084673838954613916184347514385225206421201854631672822248348492527300401412696221254955427471745210336981444314072482548587902107880716220090239059698559325275222853790679266964689038399690939212607837179308321651275665127703500076560885655399792740869252181379496186463911936\n", + "3987527419489428978934891797539519074407964567436787186133619573501046471683744380659059161937985807259468675374073145280737497721642052937815042118700682845870910169347677909227832368695028770450412842403709263345644496696985054600802825392442509910854943490420673962888628144965097175804215761432440180478119397118650550445707581358533929378076799381878425215674358616643302551330255407000153121771310799585481738504362758992372927823872\n", + "7975054838978857957869783595079038148815929134873574372267239147002092943367488761318118323875971614518937350748146290561474995443284105875630084237401365691741820338695355818455664737390057540900825684807418526691288993393970109201605650784885019821709886980841347925777256289930194351608431522864880360956238794237301100891415162717067858756153598763756850431348717233286605102660510814000306243542621599170963477008725517984745855647744\n", + "15950109677957715915739567190158076297631858269747148744534478294004185886734977522636236647751943229037874701496292581122949990886568211751260168474802731383483640677390711636911329474780115081801651369614837053382577986787940218403211301569770039643419773961682695851554512579860388703216863045729760721912477588474602201782830325434135717512307197527513700862697434466573210205321021628000612487085243198341926954017451035969491711295488\n", + "31900219355915431831479134380316152595263716539494297489068956588008371773469955045272473295503886458075749402992585162245899981773136423502520336949605462766967281354781423273822658949560230163603302739229674106765155973575880436806422603139540079286839547923365391703109025159720777406433726091459521443824955176949204403565660650868271435024614395055027401725394868933146420410642043256001224974170486396683853908034902071938983422590976\n", + "63800438711830863662958268760632305190527433078988594978137913176016743546939910090544946591007772916151498805985170324491799963546272847005040673899210925533934562709562846547645317899120460327206605478459348213530311947151760873612845206279080158573679095846730783406218050319441554812867452182919042887649910353898408807131321301736542870049228790110054803450789737866292840821284086512002449948340972793367707816069804143877966845181952\n", + "127600877423661727325916537521264610381054866157977189956275826352033487093879820181089893182015545832302997611970340648983599927092545694010081347798421851067869125419125693095290635798240920654413210956918696427060623894303521747225690412558160317147358191693461566812436100638883109625734904365838085775299820707796817614262642603473085740098457580220109606901579475732585681642568173024004899896681945586735415632139608287755933690363904\n", + "255201754847323454651833075042529220762109732315954379912551652704066974187759640362179786364031091664605995223940681297967199854185091388020162695596843702135738250838251386190581271596481841308826421913837392854121247788607043494451380825116320634294716383386923133624872201277766219251469808731676171550599641415593635228525285206946171480196915160440219213803158951465171363285136346048009799793363891173470831264279216575511867380727808\n", + "510403509694646909303666150085058441524219464631908759825103305408133948375519280724359572728062183329211990447881362595934399708370182776040325391193687404271476501676502772381162543192963682617652843827674785708242495577214086988902761650232641268589432766773846267249744402555532438502939617463352343101199282831187270457050570413892342960393830320880438427606317902930342726570272692096019599586727782346941662528558433151023734761455616\n", + "1020807019389293818607332300170116883048438929263817519650206610816267896751038561448719145456124366658423980895762725191868799416740365552080650782387374808542953003353005544762325086385927365235305687655349571416484991154428173977805523300465282537178865533547692534499488805111064877005879234926704686202398565662374540914101140827784685920787660641760876855212635805860685453140545384192039199173455564693883325057116866302047469522911232\n", + "2041614038778587637214664600340233766096877858527635039300413221632535793502077122897438290912248733316847961791525450383737598833480731104161301564774749617085906006706011089524650172771854730470611375310699142832969982308856347955611046600930565074357731067095385068998977610222129754011758469853409372404797131324749081828202281655569371841575321283521753710425271611721370906281090768384078398346911129387766650114233732604094939045822464\n", + "4083228077557175274429329200680467532193755717055270078600826443265071587004154245794876581824497466633695923583050900767475197666961462208322603129549499234171812013412022179049300345543709460941222750621398285665939964617712695911222093201861130148715462134190770137997955220444259508023516939706818744809594262649498163656404563311138743683150642567043507420850543223442741812562181536768156796693822258775533300228467465208189878091644928\n", + "8166456155114350548858658401360935064387511434110540157201652886530143174008308491589753163648994933267391847166101801534950395333922924416645206259098998468343624026824044358098600691087418921882445501242796571331879929235425391822444186403722260297430924268381540275995910440888519016047033879413637489619188525298996327312809126622277487366301285134087014841701086446885483625124363073536313593387644517551066600456934930416379756183289856\n", + "16332912310228701097717316802721870128775022868221080314403305773060286348016616983179506327297989866534783694332203603069900790667845848833290412518197996936687248053648088716197201382174837843764891002485593142663759858470850783644888372807444520594861848536763080551991820881777038032094067758827274979238377050597992654625618253244554974732602570268174029683402172893770967250248726147072627186775289035102133200913869860832759512366579712\n", + "32665824620457402195434633605443740257550045736442160628806611546120572696033233966359012654595979733069567388664407206139801581335691697666580825036395993873374496107296177432394402764349675687529782004971186285327519716941701567289776745614889041189723697073526161103983641763554076064188135517654549958476754101195985309251236506489109949465205140536348059366804345787541934500497452294145254373550578070204266401827739721665519024733159424\n", + "65331649240914804390869267210887480515100091472884321257613223092241145392066467932718025309191959466139134777328814412279603162671383395333161650072791987746748992214592354864788805528699351375059564009942372570655039433883403134579553491229778082379447394147052322207967283527108152128376271035309099916953508202391970618502473012978219898930410281072696118733608691575083869000994904588290508747101156140408532803655479443331038049466318848\n", + "130663298481829608781738534421774961030200182945768642515226446184482290784132935865436050618383918932278269554657628824559206325342766790666323300145583975493497984429184709729577611057398702750119128019884745141310078867766806269159106982459556164758894788294104644415934567054216304256752542070618199833907016404783941237004946025956439797860820562145392237467217383150167738001989809176581017494202312280817065607310958886662076098932637696\n", + "261326596963659217563477068843549922060400365891537285030452892368964581568265871730872101236767837864556539109315257649118412650685533581332646600291167950986995968858369419459155222114797405500238256039769490282620157735533612538318213964919112329517789576588209288831869134108432608513505084141236399667814032809567882474009892051912879595721641124290784474934434766300335476003979618353162034988404624561634131214621917773324152197865275392\n", + "522653193927318435126954137687099844120800731783074570060905784737929163136531743461744202473535675729113078218630515298236825301371067162665293200582335901973991937716738838918310444229594811000476512079538980565240315471067225076636427929838224659035579153176418577663738268216865217027010168282472799335628065619135764948019784103825759191443282248581568949868869532600670952007959236706324069976809249123268262429243835546648304395730550784\n", + "1045306387854636870253908275374199688241601463566149140121811569475858326273063486923488404947071351458226156437261030596473650602742134325330586401164671803947983875433477677836620888459189622000953024159077961130480630942134450153272855859676449318071158306352837155327476536433730434054020336564945598671256131238271529896039568207651518382886564497163137899737739065201341904015918473412648139953618498246536524858487671093296608791461101568\n", + "2090612775709273740507816550748399376483202927132298280243623138951716652546126973846976809894142702916452312874522061192947301205484268650661172802329343607895967750866955355673241776918379244001906048318155922260961261884268900306545711719352898636142316612705674310654953072867460868108040673129891197342512262476543059792079136415303036765773128994326275799475478130402683808031836946825296279907236996493073049716975342186593217582922203136\n", + "4181225551418547481015633101496798752966405854264596560487246277903433305092253947693953619788285405832904625749044122385894602410968537301322345604658687215791935501733910711346483553836758488003812096636311844521922523768537800613091423438705797272284633225411348621309906145734921736216081346259782394685024524953086119584158272830606073531546257988652551598950956260805367616063673893650592559814473992986146099433950684373186435165844406272\n", + "8362451102837094962031266202993597505932811708529193120974492555806866610184507895387907239576570811665809251498088244771789204821937074602644691209317374431583871003467821422692967107673516976007624193272623689043845047537075601226182846877411594544569266450822697242619812291469843472432162692519564789370049049906172239168316545661212147063092515977305103197901912521610735232127347787301185119628947985972292198867901368746372870331688812544\n", + "16724902205674189924062532405987195011865623417058386241948985111613733220369015790775814479153141623331618502996176489543578409643874149205289382418634748863167742006935642845385934215347033952015248386545247378087690095074151202452365693754823189089138532901645394485239624582939686944864325385039129578740098099812344478336633091322424294126185031954610206395803825043221470464254695574602370239257895971944584397735802737492745740663377625088\n", + "33449804411348379848125064811974390023731246834116772483897970223227466440738031581551628958306283246663237005992352979087156819287748298410578764837269497726335484013871285690771868430694067904030496773090494756175380190148302404904731387509646378178277065803290788970479249165879373889728650770078259157480196199624688956673266182644848588252370063909220412791607650086442940928509391149204740478515791943889168795471605474985491481326755250176\n", + "66899608822696759696250129623948780047462493668233544967795940446454932881476063163103257916612566493326474011984705958174313638575496596821157529674538995452670968027742571381543736861388135808060993546180989512350760380296604809809462775019292756356554131606581577940958498331758747779457301540156518314960392399249377913346532365289697176504740127818440825583215300172885881857018782298409480957031583887778337590943210949970982962653510500352\n", + "133799217645393519392500259247897560094924987336467089935591880892909865762952126326206515833225132986652948023969411916348627277150993193642315059349077990905341936055485142763087473722776271616121987092361979024701520760593209619618925550038585512713108263213163155881916996663517495558914603080313036629920784798498755826693064730579394353009480255636881651166430600345771763714037564596818961914063167775556675181886421899941965925307021000704\n", + "267598435290787038785000518495795120189849974672934179871183761785819731525904252652413031666450265973305896047938823832697254554301986387284630118698155981810683872110970285526174947445552543232243974184723958049403041521186419239237851100077171025426216526426326311763833993327034991117829206160626073259841569596997511653386129461158788706018960511273763302332861200691543527428075129193637923828126335551113350363772843799883931850614042001408\n", + "535196870581574077570001036991590240379699949345868359742367523571639463051808505304826063332900531946611792095877647665394509108603972774569260237396311963621367744221940571052349894891105086464487948369447916098806083042372838478475702200154342050852433052852652623527667986654069982235658412321252146519683139193995023306772258922317577412037921022547526604665722401383087054856150258387275847656252671102226700727545687599767863701228084002816\n", + "1070393741163148155140002073983180480759399898691736719484735047143278926103617010609652126665801063893223584191755295330789018217207945549138520474792623927242735488443881142104699789782210172928975896738895832197612166084745676956951404400308684101704866105705305247055335973308139964471316824642504293039366278387990046613544517844635154824075842045095053209331444802766174109712300516774551695312505342204453401455091375199535727402456168005632\n", + "2140787482326296310280004147966360961518799797383473438969470094286557852207234021219304253331602127786447168383510590661578036434415891098277040949585247854485470976887762284209399579564420345857951793477791664395224332169491353913902808800617368203409732211410610494110671946616279928942633649285008586078732556775980093227089035689270309648151684090190106418662889605532348219424601033549103390625010684408906802910182750399071454804912336011264\n", + "4281574964652592620560008295932721923037599594766946877938940188573115704414468042438608506663204255572894336767021181323156072868831782196554081899170495708970941953775524568418799159128840691715903586955583328790448664338982707827805617601234736406819464422821220988221343893232559857885267298570017172157465113551960186454178071378540619296303368180380212837325779211064696438849202067098206781250021368817813605820365500798142909609824672022528\n", + "8563149929305185241120016591865443846075199189533893755877880377146231408828936084877217013326408511145788673534042362646312145737663564393108163798340991417941883907551049136837598318257681383431807173911166657580897328677965415655611235202469472813638928845642441976442687786465119715770534597140034344314930227103920372908356142757081238592606736360760425674651558422129392877698404134196413562500042737635627211640731001596285819219649344045056\n", + "17126299858610370482240033183730887692150398379067787511755760754292462817657872169754434026652817022291577347068084725292624291475327128786216327596681982835883767815102098273675196636515362766863614347822333315161794657355930831311222470404938945627277857691284883952885375572930239431541069194280068688629860454207840745816712285514162477185213472721520851349303116844258785755396808268392827125000085475271254423281462003192571638439298688090112\n", + "34252599717220740964480066367461775384300796758135575023511521508584925635315744339508868053305634044583154694136169450585248582950654257572432655193363965671767535630204196547350393273030725533727228695644666630323589314711861662622444940809877891254555715382569767905770751145860478863082138388560137377259720908415681491633424571028324954370426945443041702698606233688517571510793616536785654250000170950542508846562924006385143276878597376180224\n", + "68505199434441481928960132734923550768601593516271150047023043017169851270631488679017736106611268089166309388272338901170497165901308515144865310386727931343535071260408393094700786546061451067454457391289333260647178629423723325244889881619755782509111430765139535811541502291720957726164276777120274754519441816831362983266849142056649908740853890886083405397212467377035143021587233073571308500000341901085017693125848012770286553757194752360448\n", + "137010398868882963857920265469847101537203187032542300094046086034339702541262977358035472213222536178332618776544677802340994331802617030289730620773455862687070142520816786189401573092122902134908914782578666521294357258847446650489779763239511565018222861530279071623083004583441915452328553554240549509038883633662725966533698284113299817481707781772166810794424934754070286043174466147142617000000683802170035386251696025540573107514389504720896\n", + "274020797737765927715840530939694203074406374065084600188092172068679405082525954716070944426445072356665237553089355604681988663605234060579461241546911725374140285041633572378803146184245804269817829565157333042588714517694893300979559526479023130036445723060558143246166009166883830904657107108481099018077767267325451933067396568226599634963415563544333621588849869508140572086348932294285234000001367604340070772503392051081146215028779009441792\n", + "548041595475531855431681061879388406148812748130169200376184344137358810165051909432141888852890144713330475106178711209363977327210468121158922483093823450748280570083267144757606292368491608539635659130314666085177429035389786601959119052958046260072891446121116286492332018333767661809314214216962198036155534534650903866134793136453199269926831127088667243177699739016281144172697864588570468000002735208680141545006784102162292430057558018883584\n", + "1096083190951063710863362123758776812297625496260338400752368688274717620330103818864283777705780289426660950212357422418727954654420936242317844966187646901496561140166534289515212584736983217079271318260629332170354858070779573203918238105916092520145782892242232572984664036667535323618628428433924396072311069069301807732269586272906398539853662254177334486355399478032562288345395729177140936000005470417360283090013568204324584860115116037767168\n", + "2192166381902127421726724247517553624595250992520676801504737376549435240660207637728567555411560578853321900424714844837455909308841872484635689932375293802993122280333068579030425169473966434158542636521258664340709716141559146407836476211832185040291565784484465145969328073335070647237256856867848792144622138138603615464539172545812797079707324508354668972710798956065124576690791458354281872000010940834720566180027136408649169720230232075534336\n", + "4384332763804254843453448495035107249190501985041353603009474753098870481320415275457135110823121157706643800849429689674911818617683744969271379864750587605986244560666137158060850338947932868317085273042517328681419432283118292815672952423664370080583131568968930291938656146670141294474513713735697584289244276277207230929078345091625594159414649016709337945421597912130249153381582916708563744000021881669441132360054272817298339440460464151068672\n", + "8768665527608509686906896990070214498381003970082707206018949506197740962640830550914270221646242315413287601698859379349823637235367489938542759729501175211972489121332274316121700677895865736634170546085034657362838864566236585631345904847328740161166263137937860583877312293340282588949027427471395168578488552554414461858156690183251188318829298033418675890843195824260498306763165833417127488000043763338882264720108545634596678880920928302137344\n", + "17537331055217019373813793980140428996762007940165414412037899012395481925281661101828540443292484630826575203397718758699647274470734979877085519459002350423944978242664548632243401355791731473268341092170069314725677729132473171262691809694657480322332526275875721167754624586680565177898054854942790337156977105108828923716313380366502376637658596066837351781686391648520996613526331666834254976000087526677764529440217091269193357761841856604274688\n", + "35074662110434038747627587960280857993524015880330828824075798024790963850563322203657080886584969261653150406795437517399294548941469959754171038918004700847889956485329097264486802711583462946536682184340138629451355458264946342525383619389314960644665052551751442335509249173361130355796109709885580674313954210217657847432626760733004753275317192133674703563372783297041993227052663333668509952000175053355529058880434182538386715523683713208549376\n", + "70149324220868077495255175920561715987048031760661657648151596049581927701126644407314161773169938523306300813590875034798589097882939919508342077836009401695779912970658194528973605423166925893073364368680277258902710916529892685050767238778629921289330105103502884671018498346722260711592219419771161348627908420435315694865253521466009506550634384267349407126745566594083986454105326667337019904000350106711058117760868365076773431047367426417098752\n", + "140298648441736154990510351841123431974096063521323315296303192099163855402253288814628323546339877046612601627181750069597178195765879839016684155672018803391559825941316389057947210846333851786146728737360554517805421833059785370101534477557259842578660210207005769342036996693444521423184438839542322697255816840870631389730507042932019013101268768534698814253491133188167972908210653334674039808000700213422116235521736730153546862094734852834197504\n", + "280597296883472309981020703682246863948192127042646630592606384198327710804506577629256647092679754093225203254363500139194356391531759678033368311344037606783119651882632778115894421692667703572293457474721109035610843666119570740203068955114519685157320420414011538684073993386889042846368877679084645394511633681741262779461014085864038026202537537069397628506982266376335945816421306669348079616001400426844232471043473460307093724189469705668395008\n", + "561194593766944619962041407364493727896384254085293261185212768396655421609013155258513294185359508186450406508727000278388712783063519356066736622688075213566239303765265556231788843385335407144586914949442218071221687332239141480406137910229039370314640840828023077368147986773778085692737755358169290789023267363482525558922028171728076052405075074138795257013964532752671891632842613338696159232002800853688464942086946920614187448378939411336790016\n", + "1122389187533889239924082814728987455792768508170586522370425536793310843218026310517026588370719016372900813017454000556777425566127038712133473245376150427132478607530531112463577686770670814289173829898884436142443374664478282960812275820458078740629281681656046154736295973547556171385475510716338581578046534726965051117844056343456152104810150148277590514027929065505343783265685226677392318464005601707376929884173893841228374896757878822673580032\n", + "2244778375067778479848165629457974911585537016341173044740851073586621686436052621034053176741438032745801626034908001113554851132254077424266946490752300854264957215061062224927155373541341628578347659797768872284886749328956565921624551640916157481258563363312092309472591947095112342770951021432677163156093069453930102235688112686912304209620300296555181028055858131010687566531370453354784636928011203414753859768347787682456749793515757645347160064\n", + "4489556750135556959696331258915949823171074032682346089481702147173243372872105242068106353482876065491603252069816002227109702264508154848533892981504601708529914430122124449854310747082683257156695319595537744569773498657913131843249103281832314962517126726624184618945183894190224685541902042865354326312186138907860204471376225373824608419240600593110362056111716262021375133062740906709569273856022406829507719536695575364913499587031515290694320128\n", + "8979113500271113919392662517831899646342148065364692178963404294346486745744210484136212706965752130983206504139632004454219404529016309697067785963009203417059828860244248899708621494165366514313390639191075489139546997315826263686498206563664629925034253453248369237890367788380449371083804085730708652624372277815720408942752450747649216838481201186220724112223432524042750266125481813419138547712044813659015439073391150729826999174063030581388640256\n", + "17958227000542227838785325035663799292684296130729384357926808588692973491488420968272425413931504261966413008279264008908438809058032619394135571926018406834119657720488497799417242988330733028626781278382150978279093994631652527372996413127329259850068506906496738475780735576760898742167608171461417305248744555631440817885504901495298433676962402372441448224446865048085500532250963626838277095424089627318030878146782301459653998348126061162777280512\n", + "35916454001084455677570650071327598585368592261458768715853617177385946982976841936544850827863008523932826016558528017816877618116065238788271143852036813668239315440976995598834485976661466057253562556764301956558187989263305054745992826254658519700137013812993476951561471153521797484335216342922834610497489111262881635771009802990596867353924804744882896448893730096171001064501927253676554190848179254636061756293564602919307996696252122325554561024\n", + "71832908002168911355141300142655197170737184522917537431707234354771893965953683873089701655726017047865652033117056035633755236232130477576542287704073627336478630881953991197668971953322932114507125113528603913116375978526610109491985652509317039400274027625986953903122942307043594968670432685845669220994978222525763271542019605981193734707849609489765792897787460192342002129003854507353108381696358509272123512587129205838615993392504244651109122048\n", + "143665816004337822710282600285310394341474369045835074863414468709543787931907367746179403311452034095731304066234112071267510472464260955153084575408147254672957261763907982395337943906645864229014250227057207826232751957053220218983971305018634078800548055251973907806245884614087189937340865371691338441989956445051526543084039211962387469415699218979531585795574920384684004258007709014706216763392717018544247025174258411677231986785008489302218244096\n", + "287331632008675645420565200570620788682948738091670149726828937419087575863814735492358806622904068191462608132468224142535020944928521910306169150816294509345914523527815964790675887813291728458028500454114415652465503914106440437967942610037268157601096110503947815612491769228174379874681730743382676883979912890103053086168078423924774938831398437959063171591149840769368008516015418029412433526785434037088494050348516823354463973570016978604436488192\n", + "574663264017351290841130401141241577365897476183340299453657874838175151727629470984717613245808136382925216264936448285070041889857043820612338301632589018691829047055631929581351775626583456916057000908228831304931007828212880875935885220074536315202192221007895631224983538456348759749363461486765353767959825780206106172336156847849549877662796875918126343182299681538736017032030836058824867053570868074176988100697033646708927947140033957208872976384\n", + "1149326528034702581682260802282483154731794952366680598907315749676350303455258941969435226491616272765850432529872896570140083779714087641224676603265178037383658094111263859162703551253166913832114001816457662609862015656425761751871770440149072630404384442015791262449967076912697519498726922973530707535919651560412212344672313695699099755325593751836252686364599363077472034064061672117649734107141736148353976201394067293417855894280067914417745952768\n", + "2298653056069405163364521604564966309463589904733361197814631499352700606910517883938870452983232545531700865059745793140280167559428175282449353206530356074767316188222527718325407102506333827664228003632915325219724031312851523503743540880298145260808768884031582524899934153825395038997453845947061415071839303120824424689344627391398199510651187503672505372729198726154944068128123344235299468214283472296707952402788134586835711788560135828835491905536\n", + "4597306112138810326729043209129932618927179809466722395629262998705401213821035767877740905966465091063401730119491586280560335118856350564898706413060712149534632376445055436650814205012667655328456007265830650439448062625703047007487081760596290521617537768063165049799868307650790077994907691894122830143678606241648849378689254782796399021302375007345010745458397452309888136256246688470598936428566944593415904805576269173671423577120271657670983811072\n", + "9194612224277620653458086418259865237854359618933444791258525997410802427642071535755481811932930182126803460238983172561120670237712701129797412826121424299069264752890110873301628410025335310656912014531661300878896125251406094014974163521192581043235075536126330099599736615301580155989815383788245660287357212483297698757378509565592798042604750014690021490916794904619776272512493376941197872857133889186831809611152538347342847154240543315341967622144\n", + "18389224448555241306916172836519730475708719237866889582517051994821604855284143071510963623865860364253606920477966345122241340475425402259594825652242848598138529505780221746603256820050670621313824029063322601757792250502812188029948327042385162086470151072252660199199473230603160311979630767576491320574714424966595397514757019131185596085209500029380042981833589809239552545024986753882395745714267778373663619222305076694685694308481086630683935244288\n", + "36778448897110482613832345673039460951417438475733779165034103989643209710568286143021927247731720728507213840955932690244482680950850804519189651304485697196277059011560443493206513640101341242627648058126645203515584501005624376059896654084770324172940302144505320398398946461206320623959261535152982641149428849933190795029514038262371192170419000058760085963667179618479105090049973507764791491428535556747327238444610153389371388616962173261367870488576\n", + "73556897794220965227664691346078921902834876951467558330068207979286419421136572286043854495463441457014427681911865380488965361901701609038379302608971394392554118023120886986413027280202682485255296116253290407031169002011248752119793308169540648345880604289010640796797892922412641247918523070305965282298857699866381590059028076524742384340838000117520171927334359236958210180099947015529582982857071113494654476889220306778742777233924346522735740977152\n", + "147113795588441930455329382692157843805669753902935116660136415958572838842273144572087708990926882914028855363823730760977930723803403218076758605217942788785108236046241773972826054560405364970510592232506580814062338004022497504239586616339081296691761208578021281593595785844825282495837046140611930564597715399732763180118056153049484768681676000235040343854668718473916420360199894031059165965714142226989308953778440613557485554467848693045471481954304\n", + "294227591176883860910658765384315687611339507805870233320272831917145677684546289144175417981853765828057710727647461521955861447606806436153517210435885577570216472092483547945652109120810729941021184465013161628124676008044995008479173232678162593383522417156042563187191571689650564991674092281223861129195430799465526360236112306098969537363352000470080687709337436947832840720399788062118331931428284453978617907556881227114971108935697386090942963908608\n", + "588455182353767721821317530768631375222679015611740466640545663834291355369092578288350835963707531656115421455294923043911722895213612872307034420871771155140432944184967095891304218241621459882042368930026323256249352016089990016958346465356325186767044834312085126374383143379301129983348184562447722258390861598931052720472224612197939074726704000940161375418674873895665681440799576124236663862856568907957235815113762454229942217871394772181885927817216\n", + "1176910364707535443642635061537262750445358031223480933281091327668582710738185156576701671927415063312230842910589846087823445790427225744614068841743542310280865888369934191782608436483242919764084737860052646512498704032179980033916692930712650373534089668624170252748766286758602259966696369124895444516781723197862105440944449224395878149453408001880322750837349747791331362881599152248473327725713137815914471630227524908459884435742789544363771855634432\n", + "2353820729415070887285270123074525500890716062446961866562182655337165421476370313153403343854830126624461685821179692175646891580854451489228137683487084620561731776739868383565216872966485839528169475720105293024997408064359960067833385861425300747068179337248340505497532573517204519933392738249790889033563446395724210881888898448791756298906816003760645501674699495582662725763198304496946655451426275631828943260455049816919768871485579088727543711268864\n", + "4707641458830141774570540246149051001781432124893923733124365310674330842952740626306806687709660253248923371642359384351293783161708902978456275366974169241123463553479736767130433745932971679056338951440210586049994816128719920135666771722850601494136358674496681010995065147034409039866785476499581778067126892791448421763777796897583512597813632007521291003349398991165325451526396608993893310902852551263657886520910099633839537742971158177455087422537728\n", + "9415282917660283549141080492298102003562864249787847466248730621348661685905481252613613375419320506497846743284718768702587566323417805956912550733948338482246927106959473534260867491865943358112677902880421172099989632257439840271333543445701202988272717348993362021990130294068818079733570952999163556134253785582896843527555593795167025195627264015042582006698797982330650903052793217987786621805705102527315773041820199267679075485942316354910174845075456\n", + "18830565835320567098282160984596204007125728499575694932497461242697323371810962505227226750838641012995693486569437537405175132646835611913825101467896676964493854213918947068521734983731886716225355805760842344199979264514879680542667086891402405976545434697986724043980260588137636159467141905998327112268507571165793687055111187590334050391254528030085164013397595964661301806105586435975573243611410205054631546083640398535358150971884632709820349690150912\n", + "37661131670641134196564321969192408014251456999151389864994922485394646743621925010454453501677282025991386973138875074810350265293671223827650202935793353928987708427837894137043469967463773432450711611521684688399958529029759361085334173782804811953090869395973448087960521176275272318934283811996654224537015142331587374110222375180668100782509056060170328026795191929322603612211172871951146487222820410109263092167280797070716301943769265419640699380301824\n", + "75322263341282268393128643938384816028502913998302779729989844970789293487243850020908907003354564051982773946277750149620700530587342447655300405871586707857975416855675788274086939934927546864901423223043369376799917058059518722170668347565609623906181738791946896175921042352550544637868567623993308449074030284663174748220444750361336201565018112120340656053590383858645207224422345743902292974445640820218526184334561594141432603887538530839281398760603648\n", + "150644526682564536786257287876769632057005827996605559459979689941578586974487700041817814006709128103965547892555500299241401061174684895310600811743173415715950833711351576548173879869855093729802846446086738753599834116119037444341336695131219247812363477583893792351842084705101089275737135247986616898148060569326349496440889500722672403130036224240681312107180767717290414448844691487804585948891281640437052368669123188282865207775077061678562797521207296\n", + "301289053365129073572514575753539264114011655993211118919959379883157173948975400083635628013418256207931095785111000598482802122349369790621201623486346831431901667422703153096347759739710187459605692892173477507199668232238074888682673390262438495624726955167787584703684169410202178551474270495973233796296121138652698992881779001445344806260072448481362624214361535434580828897689382975609171897782563280874104737338246376565730415550154123357125595042414592\n", + "602578106730258147145029151507078528228023311986422237839918759766314347897950800167271256026836512415862191570222001196965604244698739581242403246972693662863803334845406306192695519479420374919211385784346955014399336464476149777365346780524876991249453910335575169407368338820404357102948540991946467592592242277305397985763558002890689612520144896962725248428723070869161657795378765951218343795565126561748209474676492753131460831100308246714251190084829184\n", + "1205156213460516294290058303014157056456046623972844475679837519532628695795901600334542512053673024831724383140444002393931208489397479162484806493945387325727606669690812612385391038958840749838422771568693910028798672928952299554730693561049753982498907820671150338814736677640808714205897081983892935185184484554610795971527116005781379225040289793925450496857446141738323315590757531902436687591130253123496418949352985506262921662200616493428502380169658368\n", + "2410312426921032588580116606028314112912093247945688951359675039065257391591803200669085024107346049663448766280888004787862416978794958324969612987890774651455213339381625224770782077917681499676845543137387820057597345857904599109461387122099507964997815641342300677629473355281617428411794163967785870370368969109221591943054232011562758450080579587850900993714892283476646631181515063804873375182260506246992837898705971012525843324401232986857004760339316736\n", + "4820624853842065177160233212056628225824186495891377902719350078130514783183606401338170048214692099326897532561776009575724833957589916649939225975781549302910426678763250449541564155835362999353691086274775640115194691715809198218922774244199015929995631282684601355258946710563234856823588327935571740740737938218443183886108464023125516900161159175701801987429784566953293262363030127609746750364521012493985675797411942025051686648802465973714009520678633472\n", + "9641249707684130354320466424113256451648372991782755805438700156261029566367212802676340096429384198653795065123552019151449667915179833299878451951563098605820853357526500899083128311670725998707382172549551280230389383431618396437845548488398031859991262565369202710517893421126469713647176655871143481481475876436886367772216928046251033800322318351403603974859569133906586524726060255219493500729042024987971351594823884050103373297604931947428019041357266944\n", + "19282499415368260708640932848226512903296745983565511610877400312522059132734425605352680192858768397307590130247104038302899335830359666599756903903126197211641706715053001798166256623341451997414764345099102560460778766863236792875691096976796063719982525130738405421035786842252939427294353311742286962962951752873772735544433856092502067600644636702807207949719138267813173049452120510438987001458084049975942703189647768100206746595209863894856038082714533888\n", + "38564998830736521417281865696453025806593491967131023221754800625044118265468851210705360385717536794615180260494208076605798671660719333199513807806252394423283413430106003596332513246682903994829528690198205120921557533726473585751382193953592127439965050261476810842071573684505878854588706623484573925925903505747545471088867712185004135201289273405614415899438276535626346098904241020877974002916168099951885406379295536200413493190419727789712076165429067776\n", + "77129997661473042834563731392906051613186983934262046443509601250088236530937702421410720771435073589230360520988416153211597343321438666399027615612504788846566826860212007192665026493365807989659057380396410241843115067452947171502764387907184254879930100522953621684143147369011757709177413246969147851851807011495090942177735424370008270402578546811228831798876553071252692197808482041755948005832336199903770812758591072400826986380839455579424152330858135552\n", + "154259995322946085669127462785812103226373967868524092887019202500176473061875404842821441542870147178460721041976832306423194686642877332798055231225009577693133653720424014385330052986731615979318114760792820483686230134905894343005528775814368509759860201045907243368286294738023515418354826493938295703703614022990181884355470848740016540805157093622457663597753106142505384395616964083511896011664672399807541625517182144801653972761678911158848304661716271104\n", + "308519990645892171338254925571624206452747935737048185774038405000352946123750809685642883085740294356921442083953664612846389373285754665596110462450019155386267307440848028770660105973463231958636229521585640967372460269811788686011057551628737019519720402091814486736572589476047030836709652987876591407407228045980363768710941697480033081610314187244915327195506212285010768791233928167023792023329344799615083251034364289603307945523357822317696609323432542208\n", + "617039981291784342676509851143248412905495871474096371548076810000705892247501619371285766171480588713842884167907329225692778746571509331192220924900038310772534614881696057541320211946926463917272459043171281934744920539623577372022115103257474039039440804183628973473145178952094061673419305975753182814814456091960727537421883394960066163220628374489830654391012424570021537582467856334047584046658689599230166502068728579206615891046715644635393218646865084416\n", + "1234079962583568685353019702286496825810991742948192743096153620001411784495003238742571532342961177427685768335814658451385557493143018662384441849800076621545069229763392115082640423893852927834544918086342563869489841079247154744044230206514948078078881608367257946946290357904188123346838611951506365629628912183921455074843766789920132326441256748979661308782024849140043075164935712668095168093317379198460333004137457158413231782093431289270786437293730168832\n", + "2468159925167137370706039404572993651621983485896385486192307240002823568990006477485143064685922354855371536671629316902771114986286037324768883699600153243090138459526784230165280847787705855669089836172685127738979682158494309488088460413029896156157763216734515893892580715808376246693677223903012731259257824367842910149687533579840264652882513497959322617564049698280086150329871425336190336186634758396920666008274914316826463564186862578541572874587460337664\n", + "4936319850334274741412078809145987303243966971792770972384614480005647137980012954970286129371844709710743073343258633805542229972572074649537767399200306486180276919053568460330561695575411711338179672345370255477959364316988618976176920826059792312315526433469031787785161431616752493387354447806025462518515648735685820299375067159680529305765026995918645235128099396560172300659742850672380672373269516793841332016549828633652927128373725157083145749174920675328\n", + "9872639700668549482824157618291974606487933943585541944769228960011294275960025909940572258743689419421486146686517267611084459945144149299075534798400612972360553838107136920661123391150823422676359344690740510955918728633977237952353841652119584624631052866938063575570322863233504986774708895612050925037031297471371640598750134319361058611530053991837290470256198793120344601319485701344761344746539033587682664033099657267305854256747450314166291498349841350656\n", + "19745279401337098965648315236583949212975867887171083889538457920022588551920051819881144517487378838842972293373034535222168919890288298598151069596801225944721107676214273841322246782301646845352718689381481021911837457267954475904707683304239169249262105733876127151140645726467009973549417791224101850074062594942743281197500268638722117223060107983674580940512397586240689202638971402689522689493078067175365328066199314534611708513494900628332582996699682701312\n", + "39490558802674197931296630473167898425951735774342167779076915840045177103840103639762289034974757677685944586746069070444337839780576597196302139193602451889442215352428547682644493564603293690705437378762962043823674914535908951809415366608478338498524211467752254302281291452934019947098835582448203700148125189885486562395000537277444234446120215967349161881024795172481378405277942805379045378986156134350730656132398629069223417026989801256665165993399365402624\n", + "78981117605348395862593260946335796851903471548684335558153831680090354207680207279524578069949515355371889173492138140888675679561153194392604278387204903778884430704857095365288987129206587381410874757525924087647349829071817903618830733216956676997048422935504508604562582905868039894197671164896407400296250379770973124790001074554888468892240431934698323762049590344962756810555885610758090757972312268701461312264797258138446834053979602513330331986798730805248\n", + "157962235210696791725186521892671593703806943097368671116307663360180708415360414559049156139899030710743778346984276281777351359122306388785208556774409807557768861409714190730577974258413174762821749515051848175294699658143635807237661466433913353994096845871009017209125165811736079788395342329792814800592500759541946249580002149109776937784480863869396647524099180689925513621111771221516181515944624537402922624529594516276893668107959205026660663973597461610496\n", + "315924470421393583450373043785343187407613886194737342232615326720361416830720829118098312279798061421487556693968552563554702718244612777570417113548819615115537722819428381461155948516826349525643499030103696350589399316287271614475322932867826707988193691742018034418250331623472159576790684659585629601185001519083892499160004298219553875568961727738793295048198361379851027242223542443032363031889249074805845249059189032553787336215918410053321327947194923220992\n", + "631848940842787166900746087570686374815227772389474684465230653440722833661441658236196624559596122842975113387937105127109405436489225555140834227097639230231075445638856762922311897033652699051286998060207392701178798632574543228950645865735653415976387383484036068836500663246944319153581369319171259202370003038167784998320008596439107751137923455477586590096396722759702054484447084886064726063778498149611690498118378065107574672431836820106642655894389846441984\n", + "1263697881685574333801492175141372749630455544778949368930461306881445667322883316472393249119192245685950226775874210254218810872978451110281668454195278460462150891277713525844623794067305398102573996120414785402357597265149086457901291731471306831952774766968072137673001326493888638307162738638342518404740006076335569996640017192878215502275846910955173180192793445519404108968894169772129452127556996299223380996236756130215149344863673640213285311788779692883968\n", + "2527395763371148667602984350282745499260911089557898737860922613762891334645766632944786498238384491371900453551748420508437621745956902220563336908390556920924301782555427051689247588134610796205147992240829570804715194530298172915802583462942613663905549533936144275346002652987777276614325477276685036809480012152671139993280034385756431004551693821910346360385586891038808217937788339544258904255113992598446761992473512260430298689727347280426570623577559385767936\n", + "5054791526742297335205968700565490998521822179115797475721845227525782669291533265889572996476768982743800907103496841016875243491913804441126673816781113841848603565110854103378495176269221592410295984481659141609430389060596345831605166925885227327811099067872288550692005305975554553228650954553370073618960024305342279986560068771512862009103387643820692720771173782077616435875576679088517808510227985196893523984947024520860597379454694560853141247155118771535872\n", + "10109583053484594670411937401130981997043644358231594951443690455051565338583066531779145992953537965487601814206993682033750486983827608882253347633562227683697207130221708206756990352538443184820591968963318283218860778121192691663210333851770454655622198135744577101384010611951109106457301909106740147237920048610684559973120137543025724018206775287641385441542347564155232871751153358177035617020455970393787047969894049041721194758909389121706282494310237543071744\n", + "20219166106969189340823874802261963994087288716463189902887380910103130677166133063558291985907075930975203628413987364067500973967655217764506695267124455367394414260443416413513980705076886369641183937926636566437721556242385383326420667703540909311244396271489154202768021223902218212914603818213480294475840097221369119946240275086051448036413550575282770883084695128310465743502306716354071234040911940787574095939788098083442389517818778243412564988620475086143488\n", + "40438332213938378681647749604523927988174577432926379805774761820206261354332266127116583971814151861950407256827974728135001947935310435529013390534248910734788828520886832827027961410153772739282367875853273132875443112484770766652841335407081818622488792542978308405536042447804436425829207636426960588951680194442738239892480550172102896072827101150565541766169390256620931487004613432708142468081823881575148191879576196166884779035637556486825129977240950172286976\n", + "80876664427876757363295499209047855976349154865852759611549523640412522708664532254233167943628303723900814513655949456270003895870620871058026781068497821469577657041773665654055922820307545478564735751706546265750886224969541533305682670814163637244977585085956616811072084895608872851658415272853921177903360388885476479784961100344205792145654202301131083532338780513241862974009226865416284936163647763150296383759152392333769558071275112973650259954481900344573952\n", + "161753328855753514726590998418095711952698309731705519223099047280825045417329064508466335887256607447801629027311898912540007791741241742116053562136995642939155314083547331308111845640615090957129471503413092531501772449939083066611365341628327274489955170171913233622144169791217745703316830545707842355806720777770952959569922200688411584291308404602262167064677561026483725948018453730832569872327295526300592767518304784667539116142550225947300519908963800689147904\n", + "323506657711507029453181996836191423905396619463411038446198094561650090834658129016932671774513214895603258054623797825080015583482483484232107124273991285878310628167094662616223691281230181914258943006826185063003544899878166133222730683256654548979910340343826467244288339582435491406633661091415684711613441555541905919139844401376823168582616809204524334129355122052967451896036907461665139744654591052601185535036609569335078232285100451894601039817927601378295808\n", + "647013315423014058906363993672382847810793238926822076892396189123300181669316258033865343549026429791206516109247595650160031166964966968464214248547982571756621256334189325232447382562460363828517886013652370126007089799756332266445461366513309097959820680687652934488576679164870982813267322182831369423226883111083811838279688802753646337165233618409048668258710244105934903792073814923330279489309182105202371070073219138670156464570200903789202079635855202756591616\n", + "1294026630846028117812727987344765695621586477853644153784792378246600363338632516067730687098052859582413032218495191300320062333929933936928428497095965143513242512668378650464894765124920727657035772027304740252014179599512664532890922733026618195919641361375305868977153358329741965626534644365662738846453766222167623676559377605507292674330467236818097336517420488211869807584147629846660558978618364210404742140146438277340312929140401807578404159271710405513183232\n", + "2588053261692056235625455974689531391243172955707288307569584756493200726677265032135461374196105719164826064436990382600640124667859867873856856994191930287026485025336757300929789530249841455314071544054609480504028359199025329065781845466053236391839282722750611737954306716659483931253069288731325477692907532444335247353118755211014585348660934473636194673034840976423739615168295259693321117957236728420809484280292876554680625858280803615156808318543420811026366464\n", + "5176106523384112471250911949379062782486345911414576615139169512986401453354530064270922748392211438329652128873980765201280249335719735747713713988383860574052970050673514601859579060499682910628143088109218961008056718398050658131563690932106472783678565445501223475908613433318967862506138577462650955385815064888670494706237510422029170697321868947272389346069681952847479230336590519386642235914473456841618968560585753109361251716561607230313616637086841622052732928\n", + "10352213046768224942501823898758125564972691822829153230278339025972802906709060128541845496784422876659304257747961530402560498671439471495427427976767721148105940101347029203719158120999365821256286176218437922016113436796101316263127381864212945567357130891002446951817226866637935725012277154925301910771630129777340989412475020844058341394643737894544778692139363905694958460673181038773284471828946913683237937121171506218722503433123214460627233274173683244105465856\n", + "20704426093536449885003647797516251129945383645658306460556678051945605813418120257083690993568845753318608515495923060805120997342878942990854855953535442296211880202694058407438316241998731642512572352436875844032226873592202632526254763728425891134714261782004893903634453733275871450024554309850603821543260259554681978824950041688116682789287475789089557384278727811389916921346362077546568943657893827366475874242343012437445006866246428921254466548347366488210931712\n", + "41408852187072899770007295595032502259890767291316612921113356103891211626836240514167381987137691506637217030991846121610241994685757885981709711907070884592423760405388116814876632483997463285025144704873751688064453747184405265052509527456851782269428523564009787807268907466551742900049108619701207643086520519109363957649900083376233365578574951578179114768557455622779833842692724155093137887315787654732951748484686024874890013732492857842508933096694732976421863424\n", + "82817704374145799540014591190065004519781534582633225842226712207782423253672481028334763974275383013274434061983692243220483989371515771963419423814141769184847520810776233629753264967994926570050289409747503376128907494368810530105019054913703564538857047128019575614537814933103485800098217239402415286173041038218727915299800166752466731157149903156358229537114911245559667685385448310186275774631575309465903496969372049749780027464985715685017866193389465952843726848\n", + "165635408748291599080029182380130009039563069165266451684453424415564846507344962056669527948550766026548868123967384486440967978743031543926838847628283538369695041621552467259506529935989853140100578819495006752257814988737621060210038109827407129077714094256039151229075629866206971600196434478804830572346082076437455830599600333504933462314299806312716459074229822491119335370770896620372551549263150618931806993938744099499560054929971431370035732386778931905687453696\n", + "331270817496583198160058364760260018079126138330532903368906848831129693014689924113339055897101532053097736247934768972881935957486063087853677695256567076739390083243104934519013059871979706280201157638990013504515629977475242120420076219654814258155428188512078302458151259732413943200392868957609661144692164152874911661199200667009866924628599612625432918148459644982238670741541793240745103098526301237863613987877488198999120109859942862740071464773557863811374907392\n", + "662541634993166396320116729520520036158252276661065806737813697662259386029379848226678111794203064106195472495869537945763871914972126175707355390513134153478780166486209869038026119743959412560402315277980027009031259954950484240840152439309628516310856377024156604916302519464827886400785737915219322289384328305749823322398401334019733849257199225250865836296919289964477341483083586481490206197052602475727227975754976397998240219719885725480142929547115727622749814784\n", + "1325083269986332792640233459041040072316504553322131613475627395324518772058759696453356223588406128212390944991739075891527743829944252351414710781026268306957560332972419738076052239487918825120804630555960054018062519909900968481680304878619257032621712754048313209832605038929655772801571475830438644578768656611499646644796802668039467698514398450501731672593838579928954682966167172962980412394105204951454455951509952795996480439439771450960285859094231455245499629568\n", + "2650166539972665585280466918082080144633009106644263226951254790649037544117519392906712447176812256424781889983478151783055487659888504702829421562052536613915120665944839476152104478975837650241609261111920108036125039819801936963360609757238514065243425508096626419665210077859311545603142951660877289157537313222999293289593605336078935397028796901003463345187677159857909365932334345925960824788210409902908911903019905591992960878879542901920571718188462910490999259136\n", + "5300333079945331170560933836164160289266018213288526453902509581298075088235038785813424894353624512849563779966956303566110975319777009405658843124105073227830241331889678952304208957951675300483218522223840216072250079639603873926721219514477028130486851016193252839330420155718623091206285903321754578315074626445998586579187210672157870794057593802006926690375354319715818731864668691851921649576420819805817823806039811183985921757759085803841143436376925820981998518272\n", + "10600666159890662341121867672328320578532036426577052907805019162596150176470077571626849788707249025699127559933912607132221950639554018811317686248210146455660482663779357904608417915903350600966437044447680432144500159279207747853442439028954056260973702032386505678660840311437246182412571806643509156630149252891997173158374421344315741588115187604013853380750708639431637463729337383703843299152841639611635647612079622367971843515518171607682286872753851641963997036544\n", + "21201332319781324682243735344656641157064072853154105815610038325192300352940155143253699577414498051398255119867825214264443901279108037622635372496420292911320965327558715809216835831806701201932874088895360864289000318558415495706884878057908112521947404064773011357321680622874492364825143613287018313260298505783994346316748842688631483176230375208027706761501417278863274927458674767407686598305683279223271295224159244735943687031036343215364573745507703283927994073088\n", + "42402664639562649364487470689313282314128145706308211631220076650384600705880310286507399154828996102796510239735650428528887802558216075245270744992840585822641930655117431618433671663613402403865748177790721728578000637116830991413769756115816225043894808129546022714643361245748984729650287226574036626520597011567988692633497685377262966352460750416055413523002834557726549854917349534815373196611366558446542590448318489471887374062072686430729147491015406567855988146176\n", + "84805329279125298728974941378626564628256291412616423262440153300769201411760620573014798309657992205593020479471300857057775605116432150490541489985681171645283861310234863236867343327226804807731496355581443457156001274233661982827539512231632450087789616259092045429286722491497969459300574453148073253041194023135977385266995370754525932704921500832110827046005669115453099709834699069630746393222733116893085180896636978943774748124145372861458294982030813135711976292352\n", + "169610658558250597457949882757253129256512582825232846524880306601538402823521241146029596619315984411186040958942601714115551210232864300981082979971362343290567722620469726473734686654453609615462992711162886914312002548467323965655079024463264900175579232518184090858573444982995938918601148906296146506082388046271954770533990741509051865409843001664221654092011338230906199419669398139261492786445466233786170361793273957887549496248290745722916589964061626271423952584704\n", + "339221317116501194915899765514506258513025165650465693049760613203076805647042482292059193238631968822372081917885203428231102420465728601962165959942724686581135445240939452947469373308907219230925985422325773828624005096934647931310158048926529800351158465036368181717146889965991877837202297812592293012164776092543909541067981483018103730819686003328443308184022676461812398839338796278522985572890932467572340723586547915775098992496581491445833179928123252542847905169408\n", + "678442634233002389831799531029012517026050331300931386099521226406153611294084964584118386477263937644744163835770406856462204840931457203924331919885449373162270890481878905894938746617814438461851970844651547657248010193869295862620316097853059600702316930072736363434293779931983755674404595625184586024329552185087819082135962966036207461639372006656886616368045352923624797678677592557045971145781864935144681447173095831550197984993162982891666359856246505085695810338816\n", + "1356885268466004779663599062058025034052100662601862772199042452812307222588169929168236772954527875289488327671540813712924409681862914407848663839770898746324541780963757811789877493235628876923703941689303095314496020387738591725240632195706119201404633860145472726868587559863967511348809191250369172048659104370175638164271925932072414923278744013313773232736090705847249595357355185114091942291563729870289362894346191663100395969986325965783332719712493010171391620677632\n", + "2713770536932009559327198124116050068104201325203725544398084905624614445176339858336473545909055750578976655343081627425848819363725828815697327679541797492649083561927515623579754986471257753847407883378606190628992040775477183450481264391412238402809267720290945453737175119727935022697618382500738344097318208740351276328543851864144829846557488026627546465472181411694499190714710370228183884583127459740578725788692383326200791939972651931566665439424986020342783241355264\n", + "5427541073864019118654396248232100136208402650407451088796169811249228890352679716672947091818111501157953310686163254851697638727451657631394655359083594985298167123855031247159509972942515507694815766757212381257984081550954366900962528782824476805618535440581890907474350239455870045395236765001476688194636417480702552657087703728289659693114976053255092930944362823388998381429420740456367769166254919481157451577384766652401583879945303863133330878849972040685566482710528\n", + "10855082147728038237308792496464200272416805300814902177592339622498457780705359433345894183636223002315906621372326509703395277454903315262789310718167189970596334247710062494319019945885031015389631533514424762515968163101908733801925057565648953611237070881163781814948700478911740090790473530002953376389272834961405105314175407456579319386229952106510185861888725646777996762858841480912735538332509838962314903154769533304803167759890607726266661757699944081371132965421056\n", + "21710164295456076474617584992928400544833610601629804355184679244996915561410718866691788367272446004631813242744653019406790554909806630525578621436334379941192668495420124988638039891770062030779263067028849525031936326203817467603850115131297907222474141762327563629897400957823480181580947060005906752778545669922810210628350814913158638772459904213020371723777451293555993525717682961825471076665019677924629806309539066609606335519781215452533323515399888162742265930842112\n", + "43420328590912152949235169985856801089667221203259608710369358489993831122821437733383576734544892009263626485489306038813581109819613261051157242872668759882385336990840249977276079783540124061558526134057699050063872652407634935207700230262595814444948283524655127259794801915646960363161894120011813505557091339845620421256701629826317277544919808426040743447554902587111987051435365923650942153330039355849259612619078133219212671039562430905066647030799776325484531861684224\n", + "86840657181824305898470339971713602179334442406519217420738716979987662245642875466767153469089784018527252970978612077627162219639226522102314485745337519764770673981680499954552159567080248123117052268115398100127745304815269870415400460525191628889896567049310254519589603831293920726323788240023627011114182679691240842513403259652634555089839616852081486895109805174223974102870731847301884306660078711698519225238156266438425342079124861810133294061599552650969063723368448\n", + "173681314363648611796940679943427204358668884813038434841477433959975324491285750933534306938179568037054505941957224155254324439278453044204628971490675039529541347963360999909104319134160496246234104536230796200255490609630539740830800921050383257779793134098620509039179207662587841452647576480047254022228365359382481685026806519305269110179679233704162973790219610348447948205741463694603768613320157423397038450476312532876850684158249723620266588123199105301938127446736896\n", + "347362628727297223593881359886854408717337769626076869682954867919950648982571501867068613876359136074109011883914448310508648878556906088409257942981350079059082695926721999818208638268320992492468209072461592400510981219261079481661601842100766515559586268197241018078358415325175682905295152960094508044456730718764963370053613038610538220359358467408325947580439220696895896411482927389207537226640314846794076900952625065753701368316499447240533176246398210603876254893473792\n", + "694725257454594447187762719773708817434675539252153739365909735839901297965143003734137227752718272148218023767828896621017297757113812176818515885962700158118165391853443999636417276536641984984936418144923184801021962438522158963323203684201533031119172536394482036156716830650351365810590305920189016088913461437529926740107226077221076440718716934816651895160878441393791792822965854778415074453280629693588153801905250131507402736632998894481066352492796421207752509786947584\n", + "1389450514909188894375525439547417634869351078504307478731819471679802595930286007468274455505436544296436047535657793242034595514227624353637031771925400316236330783706887999272834553073283969969872836289846369602043924877044317926646407368403066062238345072788964072313433661300702731621180611840378032177826922875059853480214452154442152881437433869633303790321756882787583585645931709556830148906561259387176307603810500263014805473265997788962132704985592842415505019573895168\n", + "2778901029818377788751050879094835269738702157008614957463638943359605191860572014936548911010873088592872095071315586484069191028455248707274063543850800632472661567413775998545669106146567939939745672579692739204087849754088635853292814736806132124476690145577928144626867322601405463242361223680756064355653845750119706960428904308884305762874867739266607580643513765575167171291863419113660297813122518774352615207621000526029610946531995577924265409971185684831010039147790336\n", + "5557802059636755577502101758189670539477404314017229914927277886719210383721144029873097822021746177185744190142631172968138382056910497414548127087701601264945323134827551997091338212293135879879491345159385478408175699508177271706585629473612264248953380291155856289253734645202810926484722447361512128711307691500239413920857808617768611525749735478533215161287027531150334342583726838227320595626245037548705230415242001052059221893063991155848530819942371369662020078295580672\n", + "11115604119273511155004203516379341078954808628034459829854555773438420767442288059746195644043492354371488380285262345936276764113820994829096254175403202529890646269655103994182676424586271759758982690318770956816351399016354543413171258947224528497906760582311712578507469290405621852969444894723024257422615383000478827841715617235537223051499470957066430322574055062300668685167453676454641191252490075097410460830484002104118443786127982311697061639884742739324040156591161344\n", + "22231208238547022310008407032758682157909617256068919659709111546876841534884576119492391288086984708742976760570524691872553528227641989658192508350806405059781292539310207988365352849172543519517965380637541913632702798032709086826342517894449056995813521164623425157014938580811243705938889789446048514845230766000957655683431234471074446102998941914132860645148110124601337370334907352909282382504980150194820921660968004208236887572255964623394123279769485478648080313182322688\n", + "44462416477094044620016814065517364315819234512137839319418223093753683069769152238984782576173969417485953521141049383745107056455283979316385016701612810119562585078620415976730705698345087039035930761275083827265405596065418173652685035788898113991627042329246850314029877161622487411877779578892097029690461532001915311366862468942148892205997883828265721290296220249202674740669814705818564765009960300389641843321936008416473775144511929246788246559538970957296160626364645376\n", + "88924832954188089240033628131034728631638469024275678638836446187507366139538304477969565152347938834971907042282098767490214112910567958632770033403225620239125170157240831953461411396690174078071861522550167654530811192130836347305370071577796227983254084658493700628059754323244974823755559157784194059380923064003830622733724937884297784411995767656531442580592440498405349481339629411637129530019920600779283686643872016832947550289023858493576493119077941914592321252729290752\n", + "177849665908376178480067256262069457263276938048551357277672892375014732279076608955939130304695877669943814084564197534980428225821135917265540066806451240478250340314481663906922822793380348156143723045100335309061622384261672694610740143155592455966508169316987401256119508646489949647511118315568388118761846128007661245467449875768595568823991535313062885161184880996810698962679258823274259060039841201558567373287744033665895100578047716987152986238155883829184642505458581504\n", + "355699331816752356960134512524138914526553876097102714555345784750029464558153217911878260609391755339887628169128395069960856451642271834531080133612902480956500680628963327813845645586760696312287446090200670618123244768523345389221480286311184911933016338633974802512239017292979899295022236631136776237523692256015322490934899751537191137647983070626125770322369761993621397925358517646548518120079682403117134746575488067331790201156095433974305972476311767658369285010917163008\n", + "711398663633504713920269025048277829053107752194205429110691569500058929116306435823756521218783510679775256338256790139921712903284543669062160267225804961913001361257926655627691291173521392624574892180401341236246489537046690778442960572622369823866032677267949605024478034585959798590044473262273552475047384512030644981869799503074382275295966141252251540644739523987242795850717035293097036240159364806234269493150976134663580402312190867948611944952623535316738570021834326016\n", + "1422797327267009427840538050096555658106215504388410858221383139000117858232612871647513042437567021359550512676513580279843425806569087338124320534451609923826002722515853311255382582347042785249149784360802682472492979074093381556885921145244739647732065354535899210048956069171919597180088946524547104950094769024061289963739599006148764550591932282504503081289479047974485591701434070586194072480318729612468538986301952269327160804624381735897223889905247070633477140043668652032\n", + "2845594654534018855681076100193111316212431008776821716442766278000235716465225743295026084875134042719101025353027160559686851613138174676248641068903219847652005445031706622510765164694085570498299568721605364944985958148186763113771842290489479295464130709071798420097912138343839194360177893049094209900189538048122579927479198012297529101183864565009006162578958095948971183402868141172388144960637459224937077972603904538654321609248763471794447779810494141266954280087337304064\n", + "5691189309068037711362152200386222632424862017553643432885532556000471432930451486590052169750268085438202050706054321119373703226276349352497282137806439695304010890063413245021530329388171140996599137443210729889971916296373526227543684580978958590928261418143596840195824276687678388720355786098188419800379076096245159854958396024595058202367729130018012325157916191897942366805736282344776289921274918449874155945207809077308643218497526943588895559620988282533908560174674608128\n", + "11382378618136075422724304400772445264849724035107286865771065112000942865860902973180104339500536170876404101412108642238747406452552698704994564275612879390608021780126826490043060658776342281993198274886421459779943832592747052455087369161957917181856522836287193680391648553375356777440711572196376839600758152192490319709916792049190116404735458260036024650315832383795884733611472564689552579842549836899748311890415618154617286436995053887177791119241976565067817120349349216256\n", + "22764757236272150845448608801544890529699448070214573731542130224001885731721805946360208679001072341752808202824217284477494812905105397409989128551225758781216043560253652980086121317552684563986396549772842919559887665185494104910174738323915834363713045672574387360783297106750713554881423144392753679201516304384980639419833584098380232809470916520072049300631664767591769467222945129379105159685099673799496623780831236309234572873990107774355582238483953130135634240698698432512\n", + "45529514472544301690897217603089781059398896140429147463084260448003771463443611892720417358002144683505616405648434568954989625810210794819978257102451517562432087120507305960172242635105369127972793099545685839119775330370988209820349476647831668727426091345148774721566594213501427109762846288785507358403032608769961278839667168196760465618941833040144098601263329535183538934445890258758210319370199347598993247561662472618469145747980215548711164476967906260271268481397396865024\n", + "91059028945088603381794435206179562118797792280858294926168520896007542926887223785440834716004289367011232811296869137909979251620421589639956514204903035124864174241014611920344485270210738255945586199091371678239550660741976419640698953295663337454852182690297549443133188427002854219525692577571014716806065217539922557679334336393520931237883666080288197202526659070367077868891780517516420638740398695197986495123324945236938291495960431097422328953935812520542536962794793730048\n", + "182118057890177206763588870412359124237595584561716589852337041792015085853774447570881669432008578734022465622593738275819958503240843179279913028409806070249728348482029223840688970540421476511891172398182743356479101321483952839281397906591326674909704365380595098886266376854005708439051385155142029433612130435079845115358668672787041862475767332160576394405053318140734155737783561035032841277480797390395972990246649890473876582991920862194844657907871625041085073925589587460096\n", + "364236115780354413527177740824718248475191169123433179704674083584030171707548895141763338864017157468044931245187476551639917006481686358559826056819612140499456696964058447681377941080842953023782344796365486712958202642967905678562795813182653349819408730761190197772532753708011416878102770310284058867224260870159690230717337345574083724951534664321152788810106636281468311475567122070065682554961594780791945980493299780947753165983841724389689315815743250082170147851179174920192\n", + "728472231560708827054355481649436496950382338246866359409348167168060343415097790283526677728034314936089862490374953103279834012963372717119652113639224280998913393928116895362755882161685906047564689592730973425916405285935811357125591626365306699638817461522380395545065507416022833756205540620568117734448521740319380461434674691148167449903069328642305577620213272562936622951134244140131365109923189561583891960986599561895506331967683448779378631631486500164340295702358349840384\n", + "1456944463121417654108710963298872993900764676493732718818696334336120686830195580567053355456068629872179724980749906206559668025926745434239304227278448561997826787856233790725511764323371812095129379185461946851832810571871622714251183252730613399277634923044760791090131014832045667512411081241136235468897043480638760922869349382296334899806138657284611155240426545125873245902268488280262730219846379123167783921973199123791012663935366897558757263262973000328680591404716699680768\n", + "2913888926242835308217421926597745987801529352987465437637392668672241373660391161134106710912137259744359449961499812413119336051853490868478608454556897123995653575712467581451023528646743624190258758370923893703665621143743245428502366505461226798555269846089521582180262029664091335024822162482272470937794086961277521845738698764592669799612277314569222310480853090251746491804536976560525460439692758246335567843946398247582025327870733795117514526525946000657361182809433399361536\n", + "5827777852485670616434843853195491975603058705974930875274785337344482747320782322268213421824274519488718899922999624826238672103706981736957216909113794247991307151424935162902047057293487248380517516741847787407331242287486490857004733010922453597110539692179043164360524059328182670049644324964544941875588173922555043691477397529185339599224554629138444620961706180503492983609073953121050920879385516492671135687892796495164050655741467590235029053051892001314722365618866798723072\n", + "11655555704971341232869687706390983951206117411949861750549570674688965494641564644536426843648549038977437799845999249652477344207413963473914433818227588495982614302849870325804094114586974496761035033483695574814662484574972981714009466021844907194221079384358086328721048118656365340099288649929089883751176347845110087382954795058370679198449109258276889241923412361006985967218147906242101841758771032985342271375785592990328101311482935180470058106103784002629444731237733597446144\n", + "23311111409942682465739375412781967902412234823899723501099141349377930989283129289072853687297098077954875599691998499304954688414827926947828867636455176991965228605699740651608188229173948993522070066967391149629324969149945963428018932043689814388442158768716172657442096237312730680198577299858179767502352695690220174765909590116741358396898218516553778483846824722013971934436295812484203683517542065970684542751571185980656202622965870360940116212207568005258889462475467194892288\n", + "46622222819885364931478750825563935804824469647799447002198282698755861978566258578145707374594196155909751199383996998609909376829655853895657735272910353983930457211399481303216376458347897987044140133934782299258649938299891926856037864087379628776884317537432345314884192474625461360397154599716359535004705391380440349531819180233482716793796437033107556967693649444027943868872591624968407367035084131941369085503142371961312405245931740721880232424415136010517778924950934389784576\n", + "93244445639770729862957501651127871609648939295598894004396565397511723957132517156291414749188392311819502398767993997219818753659311707791315470545820707967860914422798962606432752916695795974088280267869564598517299876599783853712075728174759257553768635074864690629768384949250922720794309199432719070009410782760880699063638360466965433587592874066215113935387298888055887737745183249936814734070168263882738171006284743922624810491863481443760464848830272021035557849901868779569152\n", + "186488891279541459725915003302255743219297878591197788008793130795023447914265034312582829498376784623639004797535987994439637507318623415582630941091641415935721828845597925212865505833391591948176560535739129197034599753199567707424151456349518515107537270149729381259536769898501845441588618398865438140018821565521761398127276720933930867175185748132430227870774597776111775475490366499873629468140336527765476342012569487845249620983726962887520929697660544042071115699803737559138304\n", + "372977782559082919451830006604511486438595757182395576017586261590046895828530068625165658996753569247278009595071975988879275014637246831165261882183282831871443657691195850425731011666783183896353121071478258394069199506399135414848302912699037030215074540299458762519073539797003690883177236797730876280037643131043522796254553441867861734350371496264860455741549195552223550950980732999747258936280673055530952684025138975690499241967453925775041859395321088084142231399607475118276608\n", + "745955565118165838903660013209022972877191514364791152035172523180093791657060137250331317993507138494556019190143951977758550029274493662330523764366565663742887315382391700851462023333566367792706242142956516788138399012798270829696605825398074060430149080598917525038147079594007381766354473595461752560075286262087045592509106883735723468700742992529720911483098391104447101901961465999494517872561346111061905368050277951380998483934907851550083718790642176168284462799214950236553216\n", + "1491911130236331677807320026418045945754383028729582304070345046360187583314120274500662635987014276989112038380287903955517100058548987324661047528733131327485774630764783401702924046667132735585412484285913033576276798025596541659393211650796148120860298161197835050076294159188014763532708947190923505120150572524174091185018213767471446937401485985059441822966196782208894203803922931998989035745122692222123810736100555902761996967869815703100167437581284352336568925598429900473106432\n", + "2983822260472663355614640052836091891508766057459164608140690092720375166628240549001325271974028553978224076760575807911034200117097974649322095057466262654971549261529566803405848093334265471170824968571826067152553596051193083318786423301592296241720596322395670100152588318376029527065417894381847010240301145048348182370036427534942893874802971970118883645932393564417788407607845863997978071490245384444247621472201111805523993935739631406200334875162568704673137851196859800946212864\n", + "5967644520945326711229280105672183783017532114918329216281380185440750333256481098002650543948057107956448153521151615822068400234195949298644190114932525309943098523059133606811696186668530942341649937143652134305107192102386166637572846603184592483441192644791340200305176636752059054130835788763694020480602290096696364740072855069885787749605943940237767291864787128835576815215691727995956142980490768888495242944402223611047987871479262812400669750325137409346275702393719601892425728\n", + "11935289041890653422458560211344367566035064229836658432562760370881500666512962196005301087896114215912896307042303231644136800468391898597288380229865050619886197046118267213623392373337061884683299874287304268610214384204772333275145693206369184966882385289582680400610353273504118108261671577527388040961204580193392729480145710139771575499211887880475534583729574257671153630431383455991912285960981537776990485888804447222095975742958525624801339500650274818692551404787439203784851456\n", + "23870578083781306844917120422688735132070128459673316865125520741763001333025924392010602175792228431825792614084606463288273600936783797194576760459730101239772394092236534427246784746674123769366599748574608537220428768409544666550291386412738369933764770579165360801220706547008236216523343155054776081922409160386785458960291420279543150998423775760951069167459148515342307260862766911983824571921963075553980971777608894444191951485917051249602679001300549637385102809574878407569702912\n", + "47741156167562613689834240845377470264140256919346633730251041483526002666051848784021204351584456863651585228169212926576547201873567594389153520919460202479544788184473068854493569493348247538733199497149217074440857536819089333100582772825476739867529541158330721602441413094016472433046686310109552163844818320773570917920582840559086301996847551521902138334918297030684614521725533823967649143843926151107961943555217788888383902971834102499205358002601099274770205619149756815139405824\n", + "95482312335125227379668481690754940528280513838693267460502082967052005332103697568042408703168913727303170456338425853153094403747135188778307041838920404959089576368946137708987138986696495077466398994298434148881715073638178666201165545650953479735059082316661443204882826188032944866093372620219104327689636641547141835841165681118172603993695103043804276669836594061369229043451067647935298287687852302215923887110435577776767805943668204998410716005202198549540411238299513630278811648\n", + "190964624670250454759336963381509881056561027677386534921004165934104010664207395136084817406337827454606340912676851706306188807494270377556614083677840809918179152737892275417974277973392990154932797988596868297763430147276357332402331091301906959470118164633322886409765652376065889732186745240438208655379273283094283671682331362236345207987390206087608553339673188122738458086902135295870596575375704604431847774220871155553535611887336409996821432010404397099080822476599027260557623296\n", + "381929249340500909518673926763019762113122055354773069842008331868208021328414790272169634812675654909212681825353703412612377614988540755113228167355681619836358305475784550835948555946785980309865595977193736595526860294552714664804662182603813918940236329266645772819531304752131779464373490480876417310758546566188567343364662724472690415974780412175217106679346376245476916173804270591741193150751409208863695548441742311107071223774672819993642864020808794198161644953198054521115246592\n", + "763858498681001819037347853526039524226244110709546139684016663736416042656829580544339269625351309818425363650707406825224755229977081510226456334711363239672716610951569101671897111893571960619731191954387473191053720589105429329609324365207627837880472658533291545639062609504263558928746980961752834621517093132377134686729325448945380831949560824350434213358692752490953832347608541183482386301502818417727391096883484622214142447549345639987285728041617588396323289906396109042230493184\n", + "1527716997362003638074695707052079048452488221419092279368033327472832085313659161088678539250702619636850727301414813650449510459954163020452912669422726479345433221903138203343794223787143921239462383908774946382107441178210858659218648730415255675760945317066583091278125219008527117857493961923505669243034186264754269373458650897890761663899121648700868426717385504981907664695217082366964772603005636835454782193766969244428284895098691279974571456083235176792646579812792218084460986368\n", + "3055433994724007276149391414104158096904976442838184558736066654945664170627318322177357078501405239273701454602829627300899020919908326040905825338845452958690866443806276406687588447574287842478924767817549892764214882356421717318437297460830511351521890634133166182556250438017054235714987923847011338486068372529508538746917301795781523327798243297401736853434771009963815329390434164733929545206011273670909564387533938488856569790197382559949142912166470353585293159625584436168921972736\n", + "6110867989448014552298782828208316193809952885676369117472133309891328341254636644354714157002810478547402909205659254601798041839816652081811650677690905917381732887612552813375176895148575684957849535635099785528429764712843434636874594921661022703043781268266332365112500876034108471429975847694022676972136745059017077493834603591563046655596486594803473706869542019927630658780868329467859090412022547341819128775067876977713139580394765119898285824332940707170586319251168872337843945472\n", + "12221735978896029104597565656416632387619905771352738234944266619782656682509273288709428314005620957094805818411318509203596083679633304163623301355381811834763465775225105626750353790297151369915699071270199571056859529425686869273749189843322045406087562536532664730225001752068216942859951695388045353944273490118034154987669207183126093311192973189606947413739084039855261317561736658935718180824045094683638257550135753955426279160789530239796571648665881414341172638502337744675687890944\n", + "24443471957792058209195131312833264775239811542705476469888533239565313365018546577418856628011241914189611636822637018407192167359266608327246602710763623669526931550450211253500707580594302739831398142540399142113719058851373738547498379686644090812175125073065329460450003504136433885719903390776090707888546980236068309975338414366252186622385946379213894827478168079710522635123473317871436361648090189367276515100271507910852558321579060479593143297331762828682345277004675489351375781888\n", + "48886943915584116418390262625666529550479623085410952939777066479130626730037093154837713256022483828379223273645274036814384334718533216654493205421527247339053863100900422507001415161188605479662796285080798284227438117702747477094996759373288181624350250146130658920900007008272867771439806781552181415777093960472136619950676828732504373244771892758427789654956336159421045270246946635742872723296180378734553030200543015821705116643158120959186286594663525657364690554009350978702751563776\n", + "97773887831168232836780525251333059100959246170821905879554132958261253460074186309675426512044967656758446547290548073628768669437066433308986410843054494678107726201800845014002830322377210959325592570161596568454876235405494954189993518746576363248700500292261317841800014016545735542879613563104362831554187920944273239901353657465008746489543785516855579309912672318842090540493893271485745446592360757469106060401086031643410233286316241918372573189327051314729381108018701957405503127552\n", + "195547775662336465673561050502666118201918492341643811759108265916522506920148372619350853024089935313516893094581096147257537338874132866617972821686108989356215452403601690028005660644754421918651185140323193136909752470810989908379987037493152726497401000584522635683600028033091471085759227126208725663108375841888546479802707314930017492979087571033711158619825344637684181080987786542971490893184721514938212120802172063286820466572632483836745146378654102629458762216037403914811006255104\n", + "391095551324672931347122101005332236403836984683287623518216531833045013840296745238701706048179870627033786189162192294515074677748265733235945643372217978712430904807203380056011321289508843837302370280646386273819504941621979816759974074986305452994802001169045271367200056066182942171518454252417451326216751683777092959605414629860034985958175142067422317239650689275368362161975573085942981786369443029876424241604344126573640933145264967673490292757308205258917524432074807829622012510208\n", + "782191102649345862694244202010664472807673969366575247036433063666090027680593490477403412096359741254067572378324384589030149355496531466471891286744435957424861809614406760112022642579017687674604740561292772547639009883243959633519948149972610905989604002338090542734400112132365884343036908504834902652433503367554185919210829259720069971916350284134844634479301378550736724323951146171885963572738886059752848483208688253147281866290529935346980585514616410517835048864149615659244025020416\n", + "1564382205298691725388488404021328945615347938733150494072866127332180055361186980954806824192719482508135144756648769178060298710993062932943782573488871914849723619228813520224045285158035375349209481122585545095278019766487919267039896299945221811979208004676181085468800224264731768686073817009669805304867006735108371838421658519440139943832700568269689268958602757101473448647902292343771927145477772119505696966417376506294563732581059870693961171029232821035670097728299231318488050040832\n", + "3128764410597383450776976808042657891230695877466300988145732254664360110722373961909613648385438965016270289513297538356120597421986125865887565146977743829699447238457627040448090570316070750698418962245171090190556039532975838534079792599890443623958416009352362170937600448529463537372147634019339610609734013470216743676843317038880279887665401136539378537917205514202946897295804584687543854290955544239011393932834753012589127465162119741387922342058465642071340195456598462636976100081664\n", + "6257528821194766901553953616085315782461391754932601976291464509328720221444747923819227296770877930032540579026595076712241194843972251731775130293955487659398894476915254080896181140632141501396837924490342180381112079065951677068159585199780887247916832018704724341875200897058927074744295268038679221219468026940433487353686634077760559775330802273078757075834411028405893794591609169375087708581911088478022787865669506025178254930324239482775844684116931284142680390913196925273952200163328\n", + "12515057642389533803107907232170631564922783509865203952582929018657440442889495847638454593541755860065081158053190153424482389687944503463550260587910975318797788953830508161792362281264283002793675848980684360762224158131903354136319170399561774495833664037409448683750401794117854149488590536077358442438936053880866974707373268155521119550661604546157514151668822056811787589183218338750175417163822176956045575731339012050356509860648478965551689368233862568285360781826393850547904400326656\n", + "25030115284779067606215814464341263129845567019730407905165858037314880885778991695276909187083511720130162316106380306848964779375889006927100521175821950637595577907661016323584724562528566005587351697961368721524448316263806708272638340799123548991667328074818897367500803588235708298977181072154716884877872107761733949414746536311042239101323209092315028303337644113623575178366436677500350834327644353912091151462678024100713019721296957931103378736467725136570721563652787701095808800653312\n", + "50060230569558135212431628928682526259691134039460815810331716074629761771557983390553818374167023440260324632212760613697929558751778013854201042351643901275191155815322032647169449125057132011174703395922737443048896632527613416545276681598247097983334656149637794735001607176471416597954362144309433769755744215523467898829493072622084478202646418184630056606675288227247150356732873355000701668655288707824182302925356048201426039442593915862206757472935450273141443127305575402191617601306624\n", + "100120461139116270424863257857365052519382268078921631620663432149259523543115966781107636748334046880520649264425521227395859117503556027708402084703287802550382311630644065294338898250114264022349406791845474886097793265055226833090553363196494195966669312299275589470003214352942833195908724288618867539511488431046935797658986145244168956405292836369260113213350576454494300713465746710001403337310577415648364605850712096402852078885187831724413514945870900546282886254611150804383235202613248\n", + "200240922278232540849726515714730105038764536157843263241326864298519047086231933562215273496668093761041298528851042454791718235007112055416804169406575605100764623261288130588677796500228528044698813583690949772195586530110453666181106726392988391933338624598551178940006428705885666391817448577237735079022976862093871595317972290488337912810585672738520226426701152908988601426931493420002806674621154831296729211701424192805704157770375663448827029891741801092565772509222301608766470405226496\n", + "400481844556465081699453031429460210077529072315686526482653728597038094172463867124430546993336187522082597057702084909583436470014224110833608338813151210201529246522576261177355593000457056089397627167381899544391173060220907332362213452785976783866677249197102357880012857411771332783634897154475470158045953724187743190635944580976675825621171345477040452853402305817977202853862986840005613349242309662593458423402848385611408315540751326897654059783483602185131545018444603217532940810452992\n", + "800963689112930163398906062858920420155058144631373052965307457194076188344927734248861093986672375044165194115404169819166872940028448221667216677626302420403058493045152522354711186000914112178795254334763799088782346120441814664724426905571953567733354498394204715760025714823542665567269794308950940316091907448375486381271889161953351651242342690954080905706804611635954405707725973680011226698484619325186916846805696771222816631081502653795308119566967204370263090036889206435065881620905984\n", + "1601927378225860326797812125717840840310116289262746105930614914388152376689855468497722187973344750088330388230808339638333745880056896443334433355252604840806116986090305044709422372001828224357590508669527598177564692240883629329448853811143907135466708996788409431520051429647085331134539588617901880632183814896750972762543778323906703302484685381908161811413609223271908811415451947360022453396969238650373833693611393542445633262163005307590616239133934408740526180073778412870131763241811968\n", + "3203854756451720653595624251435681680620232578525492211861229828776304753379710936995444375946689500176660776461616679276667491760113792886668866710505209681612233972180610089418844744003656448715181017339055196355129384481767258658897707622287814270933417993576818863040102859294170662269079177235803761264367629793501945525087556647813406604969370763816323622827218446543817622830903894720044906793938477300747667387222787084891266524326010615181232478267868817481052360147556825740263526483623936\n", + "6407709512903441307191248502871363361240465157050984423722459657552609506759421873990888751893379000353321552923233358553334983520227585773337733421010419363224467944361220178837689488007312897430362034678110392710258768963534517317795415244575628541866835987153637726080205718588341324538158354471607522528735259587003891050175113295626813209938741527632647245654436893087635245661807789440089813587876954601495334774445574169782533048652021230362464956535737634962104720295113651480527052967247872\n", + "12815419025806882614382497005742726722480930314101968847444919315105219013518843747981777503786758000706643105846466717106669967040455171546675466842020838726448935888722440357675378976014625794860724069356220785420517537927069034635590830489151257083733671974307275452160411437176682649076316708943215045057470519174007782100350226591253626419877483055265294491308873786175270491323615578880179627175753909202990669548891148339565066097304042460724929913071475269924209440590227302961054105934495744\n", + "25630838051613765228764994011485453444961860628203937694889838630210438027037687495963555007573516001413286211692933434213339934080910343093350933684041677452897871777444880715350757952029251589721448138712441570841035075854138069271181660978302514167467343948614550904320822874353365298152633417886430090114941038348015564200700453182507252839754966110530588982617747572350540982647231157760359254351507818405981339097782296679130132194608084921449859826142950539848418881180454605922108211868991488\n", + "51261676103227530457529988022970906889923721256407875389779677260420876054075374991927110015147032002826572423385866868426679868161820686186701867368083354905795743554889761430701515904058503179442896277424883141682070151708276138542363321956605028334934687897229101808641645748706730596305266835772860180229882076696031128401400906365014505679509932221061177965235495144701081965294462315520718508703015636811962678195564593358260264389216169842899719652285901079696837762360909211844216423737982976\n", + "102523352206455060915059976045941813779847442512815750779559354520841752108150749983854220030294064005653144846771733736853359736323641372373403734736166709811591487109779522861403031808117006358885792554849766283364140303416552277084726643913210056669869375794458203617283291497413461192610533671545720360459764153392062256802801812730029011359019864442122355930470990289402163930588924631041437017406031273623925356391129186716520528778432339685799439304571802159393675524721818423688432847475965952\n", + "205046704412910121830119952091883627559694885025631501559118709041683504216301499967708440060588128011306289693543467473706719472647282744746807469472333419623182974219559045722806063616234012717771585109699532566728280606833104554169453287826420113339738751588916407234566582994826922385221067343091440720919528306784124513605603625460058022718039728884244711860941980578804327861177849262082874034812062547247850712782258373433041057556864679371598878609143604318787351049443636847376865694951931904\n", + "410093408825820243660239904183767255119389770051263003118237418083367008432602999935416880121176256022612579387086934947413438945294565489493614938944666839246365948439118091445612127232468025435543170219399065133456561213666209108338906575652840226679477503177832814469133165989653844770442134686182881441839056613568249027211207250920116045436079457768489423721883961157608655722355698524165748069624125094495701425564516746866082115113729358743197757218287208637574702098887273694753731389903863808\n", + "820186817651640487320479808367534510238779540102526006236474836166734016865205999870833760242352512045225158774173869894826877890589130978987229877889333678492731896878236182891224254464936050871086340438798130266913122427332418216677813151305680453358955006355665628938266331979307689540884269372365762883678113227136498054422414501840232090872158915536978847443767922315217311444711397048331496139248250188991402851129033493732164230227458717486395514436574417275149404197774547389507462779807727616\n", + "1640373635303280974640959616735069020477559080205052012472949672333468033730411999741667520484705024090450317548347739789653755781178261957974459755778667356985463793756472365782448508929872101742172680877596260533826244854664836433355626302611360906717910012711331257876532663958615379081768538744731525767356226454272996108844829003680464181744317831073957694887535844630434622889422794096662992278496500377982805702258066987464328460454917434972791028873148834550298808395549094779014925559615455232\n", + "3280747270606561949281919233470138040955118160410104024945899344666936067460823999483335040969410048180900635096695479579307511562356523915948919511557334713970927587512944731564897017859744203484345361755192521067652489709329672866711252605222721813435820025422662515753065327917230758163537077489463051534712452908545992217689658007360928363488635662147915389775071689260869245778845588193325984556993000755965611404516133974928656920909834869945582057746297669100597616791098189558029851119230910464\n", + "6561494541213123898563838466940276081910236320820208049891798689333872134921647998966670081938820096361801270193390959158615023124713047831897839023114669427941855175025889463129794035719488406968690723510385042135304979418659345733422505210445443626871640050845325031506130655834461516327074154978926103069424905817091984435379316014721856726977271324295830779550143378521738491557691176386651969113986001511931222809032267949857313841819669739891164115492595338201195233582196379116059702238461820928\n", + "13122989082426247797127676933880552163820472641640416099783597378667744269843295997933340163877640192723602540386781918317230046249426095663795678046229338855883710350051778926259588071438976813937381447020770084270609958837318691466845010420890887253743280101690650063012261311668923032654148309957852206138849811634183968870758632029443713453954542648591661559100286757043476983115382352773303938227972003023862445618064535899714627683639339479782328230985190676402390467164392758232119404476923641856\n", + "26245978164852495594255353867761104327640945283280832199567194757335488539686591995866680327755280385447205080773563836634460092498852191327591356092458677711767420700103557852519176142877953627874762894041540168541219917674637382933690020841781774507486560203381300126024522623337846065308296619915704412277699623268367937741517264058887426907909085297183323118200573514086953966230764705546607876455944006047724891236129071799429255367278678959564656461970381352804780934328785516464238808953847283712\n", + "52491956329704991188510707735522208655281890566561664399134389514670977079373183991733360655510560770894410161547127673268920184997704382655182712184917355423534841400207115705038352285755907255749525788083080337082439835349274765867380041683563549014973120406762600252049045246675692130616593239831408824555399246536735875483034528117774853815818170594366646236401147028173907932461529411093215752911888012095449782472258143598858510734557357919129312923940762705609561868657571032928477617907694567424\n", + "104983912659409982377021415471044417310563781133123328798268779029341954158746367983466721311021121541788820323094255346537840369995408765310365424369834710847069682800414231410076704571511814511499051576166160674164879670698549531734760083367127098029946240813525200504098090493351384261233186479662817649110798493073471750966069056235549707631636341188733292472802294056347815864923058822186431505823776024190899564944516287197717021469114715838258625847881525411219123737315142065856955235815389134848\n", + "209967825318819964754042830942088834621127562266246657596537558058683908317492735966933442622042243083577640646188510693075680739990817530620730848739669421694139365600828462820153409143023629022998103152332321348329759341397099063469520166734254196059892481627050401008196180986702768522466372959325635298221596986146943501932138112471099415263272682377466584945604588112695631729846117644372863011647552048381799129889032574395434042938229431676517251695763050822438247474630284131713910471630778269696\n", + "419935650637639929508085661884177669242255124532493315193075116117367816634985471933866885244084486167155281292377021386151361479981635061241461697479338843388278731201656925640306818286047258045996206304664642696659518682794198126939040333468508392119784963254100802016392361973405537044932745918651270596443193972293887003864276224942198830526545364754933169891209176225391263459692235288745726023295104096763598259778065148790868085876458863353034503391526101644876494949260568263427820943261556539392\n", + "839871301275279859016171323768355338484510249064986630386150232234735633269970943867733770488168972334310562584754042772302722959963270122482923394958677686776557462403313851280613636572094516091992412609329285393319037365588396253878080666937016784239569926508201604032784723946811074089865491837302541192886387944587774007728552449884397661053090729509866339782418352450782526919384470577491452046590208193527196519556130297581736171752917726706069006783052203289752989898521136526855641886523113078784\n", + "1679742602550559718032342647536710676969020498129973260772300464469471266539941887735467540976337944668621125169508085544605445919926540244965846789917355373553114924806627702561227273144189032183984825218658570786638074731176792507756161333874033568479139853016403208065569447893622148179730983674605082385772775889175548015457104899768795322106181459019732679564836704901565053838768941154982904093180416387054393039112260595163472343505835453412138013566104406579505979797042273053711283773046226157568\n", + "3359485205101119436064685295073421353938040996259946521544600928938942533079883775470935081952675889337242250339016171089210891839853080489931693579834710747106229849613255405122454546288378064367969650437317141573276149462353585015512322667748067136958279706032806416131138895787244296359461967349210164771545551778351096030914209799537590644212362918039465359129673409803130107677537882309965808186360832774108786078224521190326944687011670906824276027132208813159011959594084546107422567546092452315136\n", + "6718970410202238872129370590146842707876081992519893043089201857877885066159767550941870163905351778674484500678032342178421783679706160979863387159669421494212459699226510810244909092576756128735939300874634283146552298924707170031024645335496134273916559412065612832262277791574488592718923934698420329543091103556702192061828419599075181288424725836078930718259346819606260215355075764619931616372721665548217572156449042380653889374023341813648552054264417626318023919188169092214845135092184904630272\n", + "13437940820404477744258741180293685415752163985039786086178403715755770132319535101883740327810703557348969001356064684356843567359412321959726774319338842988424919398453021620489818185153512257471878601749268566293104597849414340062049290670992268547833118824131225664524555583148977185437847869396840659086182207113404384123656839198150362576849451672157861436518693639212520430710151529239863232745443331096435144312898084761307778748046683627297104108528835252636047838376338184429690270184369809260544\n", + "26875881640808955488517482360587370831504327970079572172356807431511540264639070203767480655621407114697938002712129368713687134718824643919453548638677685976849838796906043240979636370307024514943757203498537132586209195698828680124098581341984537095666237648262451329049111166297954370875695738793681318172364414226808768247313678396300725153698903344315722873037387278425040861420303058479726465490886662192870288625796169522615557496093367254594208217057670505272095676752676368859380540368739618521088\n", + "53751763281617910977034964721174741663008655940159144344713614863023080529278140407534961311242814229395876005424258737427374269437649287838907097277355371953699677593812086481959272740614049029887514406997074265172418391397657360248197162683969074191332475296524902658098222332595908741751391477587362636344728828453617536494627356792601450307397806688631445746074774556850081722840606116959452930981773324385740577251592339045231114992186734509188416434115341010544191353505352737718761080737479237042176\n", + "107503526563235821954069929442349483326017311880318288689427229726046161058556280815069922622485628458791752010848517474854748538875298575677814194554710743907399355187624172963918545481228098059775028813994148530344836782795314720496394325367938148382664950593049805316196444665191817483502782955174725272689457656907235072989254713585202900614795613377262891492149549113700163445681212233918905861963546648771481154503184678090462229984373469018376832868230682021088382707010705475437522161474958474084352\n", + "215007053126471643908139858884698966652034623760636577378854459452092322117112561630139845244971256917583504021697034949709497077750597151355628389109421487814798710375248345927837090962456196119550057627988297060689673565590629440992788650735876296765329901186099610632392889330383634967005565910349450545378915313814470145978509427170405801229591226754525782984299098227400326891362424467837811723927093297542962309006369356180924459968746938036753665736461364042176765414021410950875044322949916948168704\n", + "430014106252943287816279717769397933304069247521273154757708918904184644234225123260279690489942513835167008043394069899418994155501194302711256778218842975629597420750496691855674181924912392239100115255976594121379347131181258881985577301471752593530659802372199221264785778660767269934011131820698901090757830627628940291957018854340811602459182453509051565968598196454800653782724848935675623447854186595085924618012738712361848919937493876073507331472922728084353530828042821901750088645899833896337408\n", + "860028212505886575632559435538795866608138495042546309515417837808369288468450246520559380979885027670334016086788139798837988311002388605422513556437685951259194841500993383711348363849824784478200230511953188242758694262362517763971154602943505187061319604744398442529571557321534539868022263641397802181515661255257880583914037708681623204918364907018103131937196392909601307565449697871351246895708373190171849236025477424723697839874987752147014662945845456168707061656085643803500177291799667792674816\n", + "1720056425011773151265118871077591733216276990085092619030835675616738576936900493041118761959770055340668032173576279597675976622004777210845027112875371902518389683001986767422696727699649568956400461023906376485517388524725035527942309205887010374122639209488796885059143114643069079736044527282795604363031322510515761167828075417363246409836729814036206263874392785819202615130899395742702493791416746380343698472050954849447395679749975504294029325891690912337414123312171287607000354583599335585349632\n", + "3440112850023546302530237742155183466432553980170185238061671351233477153873800986082237523919540110681336064347152559195351953244009554421690054225750743805036779366003973534845393455399299137912800922047812752971034777049450071055884618411774020748245278418977593770118286229286138159472089054565591208726062645021031522335656150834726492819673459628072412527748785571638405230261798791485404987582833492760687396944101909698894791359499951008588058651783381824674828246624342575214000709167198671170699264\n", + "6880225700047092605060475484310366932865107960340370476123342702466954307747601972164475047839080221362672128694305118390703906488019108843380108451501487610073558732007947069690786910798598275825601844095625505942069554098900142111769236823548041496490556837955187540236572458572276318944178109131182417452125290042063044671312301669452985639346919256144825055497571143276810460523597582970809975165666985521374793888203819397789582718999902017176117303566763649349656493248685150428001418334397342341398528\n", + "13760451400094185210120950968620733865730215920680740952246685404933908615495203944328950095678160442725344257388610236781407812976038217686760216903002975220147117464015894139381573821597196551651203688191251011884139108197800284223538473647096082992981113675910375080473144917144552637888356218262364834904250580084126089342624603338905971278693838512289650110995142286553620921047195165941619950331333971042749587776407638795579165437999804034352234607133527298699312986497370300856002836668794684682797056\n", + "27520902800188370420241901937241467731460431841361481904493370809867817230990407888657900191356320885450688514777220473562815625952076435373520433806005950440294234928031788278763147643194393103302407376382502023768278216395600568447076947294192165985962227351820750160946289834289105275776712436524729669808501160168252178685249206677811942557387677024579300221990284573107241842094390331883239900662667942085499175552815277591158330875999608068704469214267054597398625972994740601712005673337589369365594112\n", + "55041805600376740840483803874482935462920863682722963808986741619735634461980815777315800382712641770901377029554440947125631251904152870747040867612011900880588469856063576557526295286388786206604814752765004047536556432791201136894153894588384331971924454703641500321892579668578210551553424873049459339617002320336504357370498413355623885114775354049158600443980569146214483684188780663766479801325335884170998351105630555182316661751999216137408938428534109194797251945989481203424011346675178738731188224\n", + "110083611200753481680967607748965870925841727365445927617973483239471268923961631554631600765425283541802754059108881894251262503808305741494081735224023801761176939712127153115052590572777572413209629505530008095073112865582402273788307789176768663943848909407283000643785159337156421103106849746098918679234004640673008714740996826711247770229550708098317200887961138292428967368377561327532959602650671768341996702211261110364633323503998432274817876857068218389594503891978962406848022693350357477462376448\n", + "220167222401506963361935215497931741851683454730891855235946966478942537847923263109263201530850567083605508118217763788502525007616611482988163470448047603522353879424254306230105181145555144826419259011060016190146225731164804547576615578353537327887697818814566001287570318674312842206213699492197837358468009281346017429481993653422495540459101416196634401775922276584857934736755122655065919205301343536683993404422522220729266647007996864549635753714136436779189007783957924813696045386700714954924752896\n", + "440334444803013926723870430995863483703366909461783710471893932957885075695846526218526403061701134167211016236435527577005050015233222965976326940896095207044707758848508612460210362291110289652838518022120032380292451462329609095153231156707074655775395637629132002575140637348625684412427398984395674716936018562692034858963987306844991080918202832393268803551844553169715869473510245310131838410602687073367986808845044441458533294015993729099271507428272873558378015567915849627392090773401429909849505792\n", + "880668889606027853447740861991726967406733818923567420943787865915770151391693052437052806123402268334422032472871055154010100030466445931952653881792190414089415517697017224920420724582220579305677036044240064760584902924659218190306462313414149311550791275258264005150281274697251368824854797968791349433872037125384069717927974613689982161836405664786537607103689106339431738947020490620263676821205374146735973617690088882917066588031987458198543014856545747116756031135831699254784181546802859819699011584\n", + "1761337779212055706895481723983453934813467637847134841887575731831540302783386104874105612246804536668844064945742110308020200060932891863905307763584380828178831035394034449840841449164441158611354072088480129521169805849318436380612924626828298623101582550516528010300562549394502737649709595937582698867744074250768139435855949227379964323672811329573075214207378212678863477894040981240527353642410748293471947235380177765834133176063974916397086029713091494233512062271663398509568363093605719639398023168\n", + "3522675558424111413790963447966907869626935275694269683775151463663080605566772209748211224493609073337688129891484220616040400121865783727810615527168761656357662070788068899681682898328882317222708144176960259042339611698636872761225849253656597246203165101033056020601125098789005475299419191875165397735488148501536278871711898454759928647345622659146150428414756425357726955788081962481054707284821496586943894470760355531668266352127949832794172059426182988467024124543326797019136726187211439278796046336\n", + "7045351116848222827581926895933815739253870551388539367550302927326161211133544419496422448987218146675376259782968441232080800243731567455621231054337523312715324141576137799363365796657764634445416288353920518084679223397273745522451698507313194492406330202066112041202250197578010950598838383750330795470976297003072557743423796909519857294691245318292300856829512850715453911576163924962109414569642993173887788941520711063336532704255899665588344118852365976934048249086653594038273452374422878557592092672\n", + "14090702233696445655163853791867631478507741102777078735100605854652322422267088838992844897974436293350752519565936882464161600487463134911242462108675046625430648283152275598726731593315529268890832576707841036169358446794547491044903397014626388984812660404132224082404500395156021901197676767500661590941952594006145115486847593819039714589382490636584601713659025701430907823152327849924218829139285986347775577883041422126673065408511799331176688237704731953868096498173307188076546904748845757115184185344\n", + "28181404467392891310327707583735262957015482205554157470201211709304644844534177677985689795948872586701505039131873764928323200974926269822484924217350093250861296566304551197453463186631058537781665153415682072338716893589094982089806794029252777969625320808264448164809000790312043802395353535001323181883905188012290230973695187638079429178764981273169203427318051402861815646304655699848437658278571972695551155766082844253346130817023598662353376475409463907736192996346614376153093809497691514230368370688\n", + "56362808934785782620655415167470525914030964411108314940402423418609289689068355355971379591897745173403010078263747529856646401949852539644969848434700186501722593132609102394906926373262117075563330306831364144677433787178189964179613588058505555939250641616528896329618001580624087604790707070002646363767810376024580461947390375276158858357529962546338406854636102805723631292609311399696875316557143945391102311532165688506692261634047197324706752950818927815472385992693228752306187618995383028460736741376\n", + "112725617869571565241310830334941051828061928822216629880804846837218579378136710711942759183795490346806020156527495059713292803899705079289939696869400373003445186265218204789813852746524234151126660613662728289354867574356379928359227176117011111878501283233057792659236003161248175209581414140005292727535620752049160923894780750552317716715059925092676813709272205611447262585218622799393750633114287890782204623064331377013384523268094394649413505901637855630944771985386457504612375237990766056921473482752\n", + "225451235739143130482621660669882103656123857644433259761609693674437158756273421423885518367590980693612040313054990119426585607799410158579879393738800746006890372530436409579627705493048468302253321227325456578709735148712759856718454352234022223757002566466115585318472006322496350419162828280010585455071241504098321847789561501104635433430119850185353627418544411222894525170437245598787501266228575781564409246128662754026769046536188789298827011803275711261889543970772915009224750475981532113842946965504\n", + "450902471478286260965243321339764207312247715288866519523219387348874317512546842847771036735181961387224080626109980238853171215598820317159758787477601492013780745060872819159255410986096936604506642454650913157419470297425519713436908704468044447514005132932231170636944012644992700838325656560021170910142483008196643695579123002209270866860239700370707254837088822445789050340874491197575002532457151563128818492257325508053538093072377578597654023606551422523779087941545830018449500951963064227685893931008\n", + "901804942956572521930486642679528414624495430577733039046438774697748635025093685695542073470363922774448161252219960477706342431197640634319517574955202984027561490121745638318510821972193873209013284909301826314838940594851039426873817408936088895028010265864462341273888025289985401676651313120042341820284966016393287391158246004418541733720479400741414509674177644891578100681748982395150005064914303126257636984514651016107076186144755157195308047213102845047558175883091660036899001903926128455371787862016\n", + "1803609885913145043860973285359056829248990861155466078092877549395497270050187371391084146940727845548896322504439920955412684862395281268639035149910405968055122980243491276637021643944387746418026569818603652629677881189702078853747634817872177790056020531728924682547776050579970803353302626240084683640569932032786574782316492008837083467440958801482829019348355289783156201363497964790300010129828606252515273969029302032214152372289510314390616094426205690095116351766183320073798003807852256910743575724032\n", + "3607219771826290087721946570718113658497981722310932156185755098790994540100374742782168293881455691097792645008879841910825369724790562537278070299820811936110245960486982553274043287888775492836053139637207305259355762379404157707495269635744355580112041063457849365095552101159941606706605252480169367281139864065573149564632984017674166934881917602965658038696710579566312402726995929580600020259657212505030547938058604064428304744579020628781232188852411380190232703532366640147596007615704513821487151448064\n", + "7214439543652580175443893141436227316995963444621864312371510197581989080200749485564336587762911382195585290017759683821650739449581125074556140599641623872220491920973965106548086575777550985672106279274414610518711524758808315414990539271488711160224082126915698730191104202319883213413210504960338734562279728131146299129265968035348333869763835205931316077393421159132624805453991859161200040519314425010061095876117208128856609489158041257562464377704822760380465407064733280295192015231409027642974302896128\n", + "14428879087305160350887786282872454633991926889243728624743020395163978160401498971128673175525822764391170580035519367643301478899162250149112281199283247744440983841947930213096173151555101971344212558548829221037423049517616630829981078542977422320448164253831397460382208404639766426826421009920677469124559456262292598258531936070696667739527670411862632154786842318265249610907983718322400081038628850020122191752234416257713218978316082515124928755409645520760930814129466560590384030462818055285948605792256\n", + "28857758174610320701775572565744909267983853778487457249486040790327956320802997942257346351051645528782341160071038735286602957798324500298224562398566495488881967683895860426192346303110203942688425117097658442074846099035233261659962157085954844640896328507662794920764416809279532853652842019841354938249118912524585196517063872141393335479055340823725264309573684636530499221815967436644800162077257700040244383504468832515426437956632165030249857510819291041521861628258933121180768060925636110571897211584512\n", + "57715516349220641403551145131489818535967707556974914498972081580655912641605995884514692702103291057564682320142077470573205915596649000596449124797132990977763935367791720852384692606220407885376850234195316884149692198070466523319924314171909689281792657015325589841528833618559065707305684039682709876498237825049170393034127744282786670958110681647450528619147369273060998443631934873289600324154515400080488767008937665030852875913264330060499715021638582083043723256517866242361536121851272221143794423169024\n", + "115431032698441282807102290262979637071935415113949828997944163161311825283211991769029385404206582115129364640284154941146411831193298001192898249594265981955527870735583441704769385212440815770753700468390633768299384396140933046639848628343819378563585314030651179683057667237118131414611368079365419752996475650098340786068255488565573341916221363294901057238294738546121996887263869746579200648309030800160977534017875330061705751826528660120999430043277164166087446513035732484723072243702544442287588846338048\n", + "230862065396882565614204580525959274143870830227899657995888326322623650566423983538058770808413164230258729280568309882292823662386596002385796499188531963911055741471166883409538770424881631541507400936781267536598768792281866093279697256687638757127170628061302359366115334474236262829222736158730839505992951300196681572136510977131146683832442726589802114476589477092243993774527739493158401296618061600321955068035750660123411503653057320241998860086554328332174893026071464969446144487405088884575177692676096\n", + "461724130793765131228409161051918548287741660455799315991776652645247301132847967076117541616826328460517458561136619764585647324773192004771592998377063927822111482942333766819077540849763263083014801873562535073197537584563732186559394513375277514254341256122604718732230668948472525658445472317461679011985902600393363144273021954262293367664885453179604228953178954184487987549055478986316802593236123200643910136071501320246823007306114640483997720173108656664349786052142929938892288974810177769150355385352192\n", + "923448261587530262456818322103837096575483320911598631983553305290494602265695934152235083233652656921034917122273239529171294649546384009543185996754127855644222965884667533638155081699526526166029603747125070146395075169127464373118789026750555028508682512245209437464461337896945051316890944634923358023971805200786726288546043908524586735329770906359208457906357908368975975098110957972633605186472246401287820272143002640493646014612229280967995440346217313328699572104285859877784577949620355538300710770704384\n", + "1846896523175060524913636644207674193150966641823197263967106610580989204531391868304470166467305313842069834244546479058342589299092768019086371993508255711288445931769335067276310163399053052332059207494250140292790150338254928746237578053501110057017365024490418874928922675793890102633781889269846716047943610401573452577092087817049173470659541812718416915812715816737951950196221915945267210372944492802575640544286005280987292029224458561935990880692434626657399144208571719755569155899240711076601421541408768\n", + "3693793046350121049827273288415348386301933283646394527934213221161978409062783736608940332934610627684139668489092958116685178598185536038172743987016511422576891863538670134552620326798106104664118414988500280585580300676509857492475156107002220114034730048980837749857845351587780205267563778539693432095887220803146905154184175634098346941319083625436833831625431633475903900392443831890534420745888985605151281088572010561974584058448917123871981761384869253314798288417143439511138311798481422153202843082817536\n", + "7387586092700242099654546576830696772603866567292789055868426442323956818125567473217880665869221255368279336978185916233370357196371072076345487974033022845153783727077340269105240653596212209328236829977000561171160601353019714984950312214004440228069460097961675499715690703175560410535127557079386864191774441606293810308368351268196693882638167250873667663250863266951807800784887663781068841491777971210302562177144021123949168116897834247743963522769738506629596576834286879022276623596962844306405686165635072\n", + "14775172185400484199309093153661393545207733134585578111736852884647913636251134946435761331738442510736558673956371832466740714392742144152690975948066045690307567454154680538210481307192424418656473659954001122342321202706039429969900624428008880456138920195923350999431381406351120821070255114158773728383548883212587620616736702536393387765276334501747335326501726533903615601569775327562137682983555942420605124354288042247898336233795668495487927045539477013259193153668573758044553247193925688612811372331270144\n", + "29550344370800968398618186307322787090415466269171156223473705769295827272502269892871522663476885021473117347912743664933481428785484288305381951896132091380615134908309361076420962614384848837312947319908002244684642405412078859939801248856017760912277840391846701998862762812702241642140510228317547456767097766425175241233473405072786775530552669003494670653003453067807231203139550655124275365967111884841210248708576084495796672467591336990975854091078954026518386307337147516089106494387851377225622744662540288\n", + "59100688741601936797236372614645574180830932538342312446947411538591654545004539785743045326953770042946234695825487329866962857570968576610763903792264182761230269816618722152841925228769697674625894639816004489369284810824157719879602497712035521824555680783693403997725525625404483284281020456635094913534195532850350482466946810145573551061105338006989341306006906135614462406279101310248550731934223769682420497417152168991593344935182673981951708182157908053036772614674295032178212988775702754451245489325080576\n", + "118201377483203873594472745229291148361661865076684624893894823077183309090009079571486090653907540085892469391650974659733925715141937153221527807584528365522460539633237444305683850457539395349251789279632008978738569621648315439759204995424071043649111361567386807995451051250808966568562040913270189827068391065700700964933893620291147102122210676013978682612013812271228924812558202620497101463868447539364840994834304337983186689870365347963903416364315816106073545229348590064356425977551405508902490978650161152\n", + "236402754966407747188945490458582296723323730153369249787789646154366618180018159142972181307815080171784938783301949319467851430283874306443055615169056731044921079266474888611367700915078790698503578559264017957477139243296630879518409990848142087298222723134773615990902102501617933137124081826540379654136782131401401929867787240582294204244421352027957365224027624542457849625116405240994202927736895078729681989668608675966373379740730695927806832728631632212147090458697180128712851955102811017804981957300322304\n", + "472805509932815494377890980917164593446647460306738499575579292308733236360036318285944362615630160343569877566603898638935702860567748612886111230338113462089842158532949777222735401830157581397007157118528035914954278486593261759036819981696284174596445446269547231981804205003235866274248163653080759308273564262802803859735574481164588408488842704055914730448055249084915699250232810481988405855473790157459363979337217351932746759481461391855613665457263264424294180917394360257425703910205622035609963914600644608\n", + "945611019865630988755781961834329186893294920613476999151158584617466472720072636571888725231260320687139755133207797277871405721135497225772222460676226924179684317065899554445470803660315162794014314237056071829908556973186523518073639963392568349192890892539094463963608410006471732548496327306161518616547128525605607719471148962329176816977685408111829460896110498169831398500465620963976811710947580314918727958674434703865493518962922783711227330914526528848588361834788720514851407820411244071219927829201289216\n", + "1891222039731261977511563923668658373786589841226953998302317169234932945440145273143777450462520641374279510266415594555742811442270994451544444921352453848359368634131799108890941607320630325588028628474112143659817113946373047036147279926785136698385781785078188927927216820012943465096992654612323037233094257051211215438942297924658353633955370816223658921792220996339662797000931241927953623421895160629837455917348869407730987037925845567422454661829053057697176723669577441029702815640822488142439855658402578432\n", + "3782444079462523955023127847337316747573179682453907996604634338469865890880290546287554900925041282748559020532831189111485622884541988903088889842704907696718737268263598217781883214641260651176057256948224287319634227892746094072294559853570273396771563570156377855854433640025886930193985309224646074466188514102422430877884595849316707267910741632447317843584441992679325594001862483855907246843790321259674911834697738815461974075851691134844909323658106115394353447339154882059405631281644976284879711316805156864\n", + "7564888158925047910046255694674633495146359364907815993209268676939731781760581092575109801850082565497118041065662378222971245769083977806177779685409815393437474536527196435563766429282521302352114513896448574639268455785492188144589119707140546793543127140312755711708867280051773860387970618449292148932377028204844861755769191698633414535821483264894635687168883985358651188003724967711814493687580642519349823669395477630923948151703382269689818647316212230788706894678309764118811262563289952569759422633610313728\n", + "15129776317850095820092511389349266990292718729815631986418537353879463563521162185150219603700165130994236082131324756445942491538167955612355559370819630786874949073054392871127532858565042604704229027792897149278536911570984376289178239414281093587086254280625511423417734560103547720775941236898584297864754056409689723511538383397266829071642966529789271374337767970717302376007449935423628987375161285038699647338790955261847896303406764539379637294632424461577413789356619528237622525126579905139518845267220627456\n", + "30259552635700191640185022778698533980585437459631263972837074707758927127042324370300439207400330261988472164262649512891884983076335911224711118741639261573749898146108785742255065717130085209408458055585794298557073823141968752578356478828562187174172508561251022846835469120207095441551882473797168595729508112819379447023076766794533658143285933059578542748675535941434604752014899870847257974750322570077399294677581910523695792606813529078759274589264848923154827578713239056475245050253159810279037690534441254912\n", + "60519105271400383280370045557397067961170874919262527945674149415517854254084648740600878414800660523976944328525299025783769966152671822449422237483278523147499796292217571484510131434260170418816916111171588597114147646283937505156712957657124374348345017122502045693670938240414190883103764947594337191459016225638758894046153533589067316286571866119157085497351071882869209504029799741694515949500645140154798589355163821047391585213627058157518549178529697846309655157426478112950490100506319620558075381068882509824\n", + "121038210542800766560740091114794135922341749838525055891348298831035708508169297481201756829601321047953888657050598051567539932305343644898844474966557046294999592584435142969020262868520340837633832222343177194228295292567875010313425915314248748696690034245004091387341876480828381766207529895188674382918032451277517788092307067178134632573143732238314170994702143765738419008059599483389031899001290280309597178710327642094783170427254116315037098357059395692619310314852956225900980201012639241116150762137765019648\n", + "242076421085601533121480182229588271844683499677050111782696597662071417016338594962403513659202642095907777314101196103135079864610687289797688949933114092589999185168870285938040525737040681675267664444686354388456590585135750020626851830628497497393380068490008182774683752961656763532415059790377348765836064902555035576184614134356269265146287464476628341989404287531476838016119198966778063798002580560619194357420655284189566340854508232630074196714118791385238620629705912451801960402025278482232301524275530039296\n", + "484152842171203066242960364459176543689366999354100223565393195324142834032677189924807027318405284191815554628202392206270159729221374579595377899866228185179998370337740571876081051474081363350535328889372708776913181170271500041253703661256994994786760136980016365549367505923313527064830119580754697531672129805110071152369228268712538530292574928953256683978808575062953676032238397933556127596005161121238388714841310568379132681709016465260148393428237582770477241259411824903603920804050556964464603048551060078592\n", + "968305684342406132485920728918353087378733998708200447130786390648285668065354379849614054636810568383631109256404784412540319458442749159190755799732456370359996740675481143752162102948162726701070657778745417553826362340543000082507407322513989989573520273960032731098735011846627054129660239161509395063344259610220142304738456537425077060585149857906513367957617150125907352064476795867112255192010322242476777429682621136758265363418032930520296786856475165540954482518823649807207841608101113928929206097102120157184\n", + "1936611368684812264971841457836706174757467997416400894261572781296571336130708759699228109273621136767262218512809568825080638916885498318381511599464912740719993481350962287504324205896325453402141315557490835107652724681086000165014814645027979979147040547920065462197470023693254108259320478323018790126688519220440284609476913074850154121170299715813026735915234300251814704128953591734224510384020644484953554859365242273516530726836065861040593573712950331081908965037647299614415683216202227857858412194204240314368\n", + "3873222737369624529943682915673412349514935994832801788523145562593142672261417519398456218547242273534524437025619137650161277833770996636763023198929825481439986962701924575008648411792650906804282631114981670215305449362172000330029629290055959958294081095840130924394940047386508216518640956646037580253377038440880569218953826149700308242340599431626053471830468600503629408257907183468449020768041288969907109718730484547033061453672131722081187147425900662163817930075294599228831366432404455715716824388408480628736\n", + "7746445474739249059887365831346824699029871989665603577046291125186285344522835038796912437094484547069048874051238275300322555667541993273526046397859650962879973925403849150017296823585301813608565262229963340430610898724344000660059258580111919916588162191680261848789880094773016433037281913292075160506754076881761138437907652299400616484681198863252106943660937201007258816515814366936898041536082577939814219437460969094066122907344263444162374294851801324327635860150589198457662732864808911431433648776816961257472\n", + "15492890949478498119774731662693649398059743979331207154092582250372570689045670077593824874188969094138097748102476550600645111335083986547052092795719301925759947850807698300034593647170603627217130524459926680861221797448688001320118517160223839833176324383360523697579760189546032866074563826584150321013508153763522276875815304598801232969362397726504213887321874402014517633031628733873796083072165155879628438874921938188132245814688526888324748589703602648655271720301178396915325465729617822862867297553633922514944\n", + "30985781898956996239549463325387298796119487958662414308185164500745141378091340155187649748377938188276195496204953101201290222670167973094104185591438603851519895701615396600069187294341207254434261048919853361722443594897376002640237034320447679666352648766721047395159520379092065732149127653168300642027016307527044553751630609197602465938724795453008427774643748804029035266063257467747592166144330311759256877749843876376264491629377053776649497179407205297310543440602356793830650931459235645725734595107267845029888\n", + "61971563797913992479098926650774597592238975917324828616370329001490282756182680310375299496755876376552390992409906202402580445340335946188208371182877207703039791403230793200138374588682414508868522097839706723444887189794752005280474068640895359332705297533442094790319040758184131464298255306336601284054032615054089107503261218395204931877449590906016855549287497608058070532126514935495184332288660623518513755499687752752528983258754107553298994358814410594621086881204713587661301862918471291451469190214535690059776\n", + "123943127595827984958197853301549195184477951834649657232740658002980565512365360620750598993511752753104781984819812404805160890680671892376416742365754415406079582806461586400276749177364829017737044195679413446889774379589504010560948137281790718665410595066884189580638081516368262928596510612673202568108065230108178215006522436790409863754899181812033711098574995216116141064253029870990368664577321247037027510999375505505057966517508215106597988717628821189242173762409427175322603725836942582902938380429071380119552\n", + "247886255191655969916395706603098390368955903669299314465481316005961131024730721241501197987023505506209563969639624809610321781361343784752833484731508830812159165612923172800553498354729658035474088391358826893779548759179008021121896274563581437330821190133768379161276163032736525857193021225346405136216130460216356430013044873580819727509798363624067422197149990432232282128506059741980737329154642494074055021998751011010115933035016430213195977435257642378484347524818854350645207451673885165805876760858142760239104\n", + "495772510383311939832791413206196780737911807338598628930962632011922262049461442483002395974047011012419127939279249619220643562722687569505666969463017661624318331225846345601106996709459316070948176782717653787559097518358016042243792549127162874661642380267536758322552326065473051714386042450692810272432260920432712860026089747161639455019596727248134844394299980864464564257012119483961474658309284988148110043997502022020231866070032860426391954870515284756968695049637708701290414903347770331611753521716285520478208\n", + "991545020766623879665582826412393561475823614677197257861925264023844524098922884966004791948094022024838255878558499238441287125445375139011333938926035323248636662451692691202213993418918632141896353565435307575118195036716032084487585098254325749323284760535073516645104652130946103428772084901385620544864521840865425720052179494323278910039193454496269688788599961728929128514024238967922949316618569976296220087995004044040463732140065720852783909741030569513937390099275417402580829806695540663223507043432571040956416\n", + "1983090041533247759331165652824787122951647229354394515723850528047689048197845769932009583896188044049676511757116998476882574250890750278022667877852070646497273324903385382404427986837837264283792707130870615150236390073432064168975170196508651498646569521070147033290209304261892206857544169802771241089729043681730851440104358988646557820078386908992539377577199923457858257028048477935845898633237139952592440175990008088080927464280131441705567819482061139027874780198550834805161659613391081326447014086865142081912832\n", + "3966180083066495518662331305649574245903294458708789031447701056095378096395691539864019167792376088099353023514233996953765148501781500556045335755704141292994546649806770764808855973675674528567585414261741230300472780146864128337950340393017302997293139042140294066580418608523784413715088339605542482179458087363461702880208717977293115640156773817985078755154399846915716514056096955871691797266474279905184880351980016176161854928560262883411135638964122278055749560397101669610323319226782162652894028173730284163825664\n", + "7932360166132991037324662611299148491806588917417578062895402112190756192791383079728038335584752176198706047028467993907530297003563001112090671511408282585989093299613541529617711947351349057135170828523482460600945560293728256675900680786034605994586278084280588133160837217047568827430176679211084964358916174726923405760417435954586231280313547635970157510308799693831433028112193911743383594532948559810369760703960032352323709857120525766822271277928244556111499120794203339220646638453564325305788056347460568327651328\n", + "15864720332265982074649325222598296983613177834835156125790804224381512385582766159456076671169504352397412094056935987815060594007126002224181343022816565171978186599227083059235423894702698114270341657046964921201891120587456513351801361572069211989172556168561176266321674434095137654860353358422169928717832349453846811520834871909172462560627095271940315020617599387662866056224387823486767189065897119620739521407920064704647419714241051533644542555856489112222998241588406678441293276907128650611576112694921136655302656\n", + "31729440664531964149298650445196593967226355669670312251581608448763024771165532318912153342339008704794824188113871975630121188014252004448362686045633130343956373198454166118470847789405396228540683314093929842403782241174913026703602723144138423978345112337122352532643348868190275309720706716844339857435664698907693623041669743818344925121254190543880630041235198775325732112448775646973534378131794239241479042815840129409294839428482103067289085111712978224445996483176813356882586553814257301223152225389842273310605312\n", + "63458881329063928298597300890393187934452711339340624503163216897526049542331064637824306684678017409589648376227743951260242376028504008896725372091266260687912746396908332236941695578810792457081366628187859684807564482349826053407205446288276847956690224674244705065286697736380550619441413433688679714871329397815387246083339487636689850242508381087761260082470397550651464224897551293947068756263588478482958085631680258818589678856964206134578170223425956448891992966353626713765173107628514602446304450779684546621210624\n", + "126917762658127856597194601780786375868905422678681249006326433795052099084662129275648613369356034819179296752455487902520484752057008017793450744182532521375825492793816664473883391157621584914162733256375719369615128964699652106814410892576553695913380449348489410130573395472761101238882826867377359429742658795630774492166678975273379700485016762175522520164940795101302928449795102587894137512527176956965916171263360517637179357713928412269156340446851912897783985932707253427530346215257029204892608901559369093242421248\n", + "253835525316255713194389203561572751737810845357362498012652867590104198169324258551297226738712069638358593504910975805040969504114016035586901488365065042751650985587633328947766782315243169828325466512751438739230257929399304213628821785153107391826760898696978820261146790945522202477765653734754718859485317591261548984333357950546759400970033524351045040329881590202605856899590205175788275025054353913931832342526721035274358715427856824538312680893703825795567971865414506855060692430514058409785217803118738186484842496\n", + "507671050632511426388778407123145503475621690714724996025305735180208396338648517102594453477424139276717187009821951610081939008228032071173802976730130085503301971175266657895533564630486339656650933025502877478460515858798608427257643570306214783653521797393957640522293581891044404955531307469509437718970635182523097968666715901093518801940067048702090080659763180405211713799180410351576550050108707827863664685053442070548717430855713649076625361787407651591135943730829013710121384861028116819570435606237476372969684992\n", + "1015342101265022852777556814246291006951243381429449992050611470360416792677297034205188906954848278553434374019643903220163878016456064142347605953460260171006603942350533315791067129260972679313301866051005754956921031717597216854515287140612429567307043594787915281044587163782088809911062614939018875437941270365046195937333431802187037603880134097404180161319526360810423427598360820703153100100217415655727329370106884141097434861711427298153250723574815303182271887461658027420242769722056233639140871212474952745939369984\n", + "2030684202530045705555113628492582013902486762858899984101222940720833585354594068410377813909696557106868748039287806440327756032912128284695211906920520342013207884701066631582134258521945358626603732102011509913842063435194433709030574281224859134614087189575830562089174327564177619822125229878037750875882540730092391874666863604374075207760268194808360322639052721620846855196721641406306200200434831311454658740213768282194869723422854596306501447149630606364543774923316054840485539444112467278281742424949905491878739968\n", + "4061368405060091411110227256985164027804973525717799968202445881441667170709188136820755627819393114213737496078575612880655512065824256569390423813841040684026415769402133263164268517043890717253207464204023019827684126870388867418061148562449718269228174379151661124178348655128355239644250459756075501751765081460184783749333727208748150415520536389616720645278105443241693710393443282812612400400869662622909317480427536564389739446845709192613002894299261212729087549846632109680971078888224934556563484849899810983757479936\n", + "8122736810120182822220454513970328055609947051435599936404891762883334341418376273641511255638786228427474992157151225761311024131648513138780847627682081368052831538804266526328537034087781434506414928408046039655368253740777734836122297124899436538456348758303322248356697310256710479288500919512151003503530162920369567498667454417496300831041072779233441290556210886483387420786886565625224800801739325245818634960855073128779478893691418385226005788598522425458175099693264219361942157776449869113126969699799621967514959872\n", + "16245473620240365644440909027940656111219894102871199872809783525766668682836752547283022511277572456854949984314302451522622048263297026277561695255364162736105663077608533052657074068175562869012829856816092079310736507481555469672244594249798873076912697516606644496713394620513420958577001839024302007007060325840739134997334908834992601662082145558466882581112421772966774841573773131250449601603478650491637269921710146257558957787382836770452011577197044850916350199386528438723884315552899738226253939399599243935029919744\n", + "32490947240480731288881818055881312222439788205742399745619567051533337365673505094566045022555144913709899968628604903045244096526594052555123390510728325472211326155217066105314148136351125738025659713632184158621473014963110939344489188499597746153825395033213288993426789241026841917154003678048604014014120651681478269994669817669985203324164291116933765162224843545933549683147546262500899203206957300983274539843420292515117915574765673540904023154394089701832700398773056877447768631105799476452507878799198487870059839488\n", + "64981894480961462577763636111762624444879576411484799491239134103066674731347010189132090045110289827419799937257209806090488193053188105110246781021456650944422652310434132210628296272702251476051319427264368317242946029926221878688978376999195492307650790066426577986853578482053683834308007356097208028028241303362956539989339635339970406648328582233867530324449687091867099366295092525001798406413914601966549079686840585030235831149531347081808046308788179403665400797546113754895537262211598952905015757598396975740119678976\n", + "129963788961922925155527272223525248889759152822969598982478268206133349462694020378264180090220579654839599874514419612180976386106376210220493562042913301888845304620868264421256592545404502952102638854528736634485892059852443757377956753998390984615301580132853155973707156964107367668616014712194416056056482606725913079978679270679940813296657164467735060648899374183734198732590185050003596812827829203933098159373681170060471662299062694163616092617576358807330801595092227509791074524423197905810031515196793951480239357952\n", + "259927577923845850311054544447050497779518305645939197964956536412266698925388040756528360180441159309679199749028839224361952772212752420440987124085826603777690609241736528842513185090809005904205277709057473268971784119704887514755913507996781969230603160265706311947414313928214735337232029424388832112112965213451826159957358541359881626593314328935470121297798748367468397465180370100007193625655658407866196318747362340120943324598125388327232185235152717614661603190184455019582149048846395811620063030393587902960478715904\n", + "519855155847691700622109088894100995559036611291878395929913072824533397850776081513056720360882318619358399498057678448723905544425504840881974248171653207555381218483473057685026370181618011808410555418114946537943568239409775029511827015993563938461206320531412623894828627856429470674464058848777664224225930426903652319914717082719763253186628657870940242595597496734936794930360740200014387251311316815732392637494724680241886649196250776654464370470305435229323206380368910039164298097692791623240126060787175805920957431808\n", + "1039710311695383401244218177788201991118073222583756791859826145649066795701552163026113440721764637238716798996115356897447811088851009681763948496343306415110762436966946115370052740363236023616821110836229893075887136478819550059023654031987127876922412641062825247789657255712858941348928117697555328448451860853807304639829434165439526506373257315741880485191194993469873589860721480400028774502622633631464785274989449360483773298392501553308928740940610870458646412760737820078328596195385583246480252121574351611841914863616\n", + "2079420623390766802488436355576403982236146445167513583719652291298133591403104326052226881443529274477433597992230713794895622177702019363527896992686612830221524873933892230740105480726472047233642221672459786151774272957639100118047308063974255753844825282125650495579314511425717882697856235395110656896903721707614609279658868330879053012746514631483760970382389986939747179721442960800057549005245267262929570549978898720967546596785003106617857481881221740917292825521475640156657192390771166492960504243148703223683829727232\n", + "4158841246781533604976872711152807964472292890335027167439304582596267182806208652104453762887058548954867195984461427589791244355404038727055793985373225660443049747867784461480210961452944094467284443344919572303548545915278200236094616127948511507689650564251300991158629022851435765395712470790221313793807443415229218559317736661758106025493029262967521940764779973879494359442885921600115098010490534525859141099957797441935093193570006213235714963762443481834585651042951280313314384781542332985921008486297406447367659454464\n", + "8317682493563067209953745422305615928944585780670054334878609165192534365612417304208907525774117097909734391968922855179582488710808077454111587970746451320886099495735568922960421922905888188934568886689839144607097091830556400472189232255897023015379301128502601982317258045702871530791424941580442627587614886830458437118635473323516212050986058525935043881529559947758988718885771843200230196020981069051718282199915594883870186387140012426471429927524886963669171302085902560626628769563084665971842016972594812894735318908928\n", + "16635364987126134419907490844611231857889171561340108669757218330385068731224834608417815051548234195819468783937845710359164977421616154908223175941492902641772198991471137845920843845811776377869137773379678289214194183661112800944378464511794046030758602257005203964634516091405743061582849883160885255175229773660916874237270946647032424101972117051870087763059119895517977437771543686400460392041962138103436564399831189767740372774280024852942859855049773927338342604171805121253257539126169331943684033945189625789470637817856\n", + "33270729974252268839814981689222463715778343122680217339514436660770137462449669216835630103096468391638937567875691420718329954843232309816446351882985805283544397982942275691841687691623552755738275546759356578428388367322225601888756929023588092061517204514010407929269032182811486123165699766321770510350459547321833748474541893294064848203944234103740175526118239791035954875543087372800920784083924276206873128799662379535480745548560049705885719710099547854676685208343610242506515078252338663887368067890379251578941275635712\n", + "66541459948504537679629963378444927431556686245360434679028873321540274924899338433671260206192936783277875135751382841436659909686464619632892703765971610567088795965884551383683375383247105511476551093518713156856776734644451203777513858047176184123034409028020815858538064365622972246331399532643541020700919094643667496949083786588129696407888468207480351052236479582071909751086174745601841568167848552413746257599324759070961491097120099411771439420199095709353370416687220485013030156504677327774736135780758503157882551271424\n", + "133082919897009075359259926756889854863113372490720869358057746643080549849798676867342520412385873566555750271502765682873319819372929239265785407531943221134177591931769102767366750766494211022953102187037426313713553469288902407555027716094352368246068818056041631717076128731245944492662799065287082041401838189287334993898167573176259392815776936414960702104472959164143819502172349491203683136335697104827492515198649518141922982194240198823542878840398191418706740833374440970026060313009354655549472271561517006315765102542848\n", + "266165839794018150718519853513779709726226744981441738716115493286161099699597353734685040824771747133111500543005531365746639638745858478531570815063886442268355183863538205534733501532988422045906204374074852627427106938577804815110055432188704736492137636112083263434152257462491888985325598130574164082803676378574669987796335146352518785631553872829921404208945918328287639004344698982407366272671394209654985030397299036283845964388480397647085757680796382837413481666748881940052120626018709311098944543123034012631530205085696\n", + "532331679588036301437039707027559419452453489962883477432230986572322199399194707469370081649543494266223001086011062731493279277491716957063141630127772884536710367727076411069467003065976844091812408748149705254854213877155609630220110864377409472984275272224166526868304514924983777970651196261148328165607352757149339975592670292705037571263107745659842808417891836656575278008689397964814732545342788419309970060794598072567691928776960795294171515361592765674826963333497763880104241252037418622197889086246068025263060410171392\n", + "1064663359176072602874079414055118838904906979925766954864461973144644398798389414938740163299086988532446002172022125462986558554983433914126283260255545769073420735454152822138934006131953688183624817496299410509708427754311219260440221728754818945968550544448333053736609029849967555941302392522296656331214705514298679951185340585410075142526215491319685616835783673313150556017378795929629465090685576838619940121589196145135383857553921590588343030723185531349653926666995527760208482504074837244395778172492136050526120820342784\n", + "2129326718352145205748158828110237677809813959851533909728923946289288797596778829877480326598173977064892004344044250925973117109966867828252566520511091538146841470908305644277868012263907376367249634992598821019416855508622438520880443457509637891937101088896666107473218059699935111882604785044593312662429411028597359902370681170820150285052430982639371233671567346626301112034757591859258930181371153677239880243178392290270767715107843181176686061446371062699307853333991055520416965008149674488791556344984272101052241640685568\n", + "4258653436704290411496317656220475355619627919703067819457847892578577595193557659754960653196347954129784008688088501851946234219933735656505133041022183076293682941816611288555736024527814752734499269985197642038833711017244877041760886915019275783874202177793332214946436119399870223765209570089186625324858822057194719804741362341640300570104861965278742467343134693252602224069515183718517860362742307354479760486356784580541535430215686362353372122892742125398615706667982111040833930016299348977583112689968544202104483281371136\n", + "8517306873408580822992635312440950711239255839406135638915695785157155190387115319509921306392695908259568017376177003703892468439867471313010266082044366152587365883633222577111472049055629505468998539970395284077667422034489754083521773830038551567748404355586664429892872238799740447530419140178373250649717644114389439609482724683280601140209723930557484934686269386505204448139030367437035720725484614708959520972713569161083070860431372724706744245785484250797231413335964222081667860032598697955166225379937088404208966562742272\n", + "17034613746817161645985270624881901422478511678812271277831391570314310380774230639019842612785391816519136034752354007407784936879734942626020532164088732305174731767266445154222944098111259010937997079940790568155334844068979508167043547660077103135496808711173328859785744477599480895060838280356746501299435288228778879218965449366561202280419447861114969869372538773010408896278060734874071441450969229417919041945427138322166141720862745449413488491570968501594462826671928444163335720065197395910332450759874176808417933125484544\n", + "34069227493634323291970541249763802844957023357624542555662783140628620761548461278039685225570783633038272069504708014815569873759469885252041064328177464610349463534532890308445888196222518021875994159881581136310669688137959016334087095320154206270993617422346657719571488955198961790121676560713493002598870576457557758437930898733122404560838895722229939738745077546020817792556121469748142882901938458835838083890854276644332283441725490898826976983141937003188925653343856888326671440130394791820664901519748353616835866250969088\n", + "68138454987268646583941082499527605689914046715249085111325566281257241523096922556079370451141567266076544139009416029631139747518939770504082128656354929220698927069065780616891776392445036043751988319763162272621339376275918032668174190640308412541987234844693315439142977910397923580243353121426986005197741152915115516875861797466244809121677791444459879477490155092041635585112242939496285765803876917671676167781708553288664566883450981797653953966283874006377851306687713776653342880260789583641329803039496707233671732501938176\n", + "136276909974537293167882164999055211379828093430498170222651132562514483046193845112158740902283134532153088278018832059262279495037879541008164257312709858441397854138131561233783552784890072087503976639526324545242678752551836065336348381280616825083974469689386630878285955820795847160486706242853972010395482305830231033751723594932489618243355582888919758954980310184083271170224485878992571531607753835343352335563417106577329133766901963595307907932567748012755702613375427553306685760521579167282659606078993414467343465003876352\n", + "272553819949074586335764329998110422759656186860996340445302265125028966092387690224317481804566269064306176556037664118524558990075759082016328514625419716882795708276263122467567105569780144175007953279052649090485357505103672130672696762561233650167948939378773261756571911641591694320973412485707944020790964611660462067503447189864979236486711165777839517909960620368166542340448971757985143063215507670686704671126834213154658267533803927190615815865135496025511405226750855106613371521043158334565319212157986828934686930007752704\n", + "545107639898149172671528659996220845519312373721992680890604530250057932184775380448634963609132538128612353112075328237049117980151518164032657029250839433765591416552526244935134211139560288350015906558105298180970715010207344261345393525122467300335897878757546523513143823283183388641946824971415888041581929223320924135006894379729958472973422331555679035819921240736333084680897943515970286126431015341373409342253668426309316535067607854381231631730270992051022810453501710213226743042086316669130638424315973657869373860015505408\n", + "1090215279796298345343057319992441691038624747443985361781209060500115864369550760897269927218265076257224706224150656474098235960303036328065314058501678867531182833105052489870268422279120576700031813116210596361941430020414688522690787050244934600671795757515093047026287646566366777283893649942831776083163858446641848270013788759459916945946844663111358071639842481472666169361795887031940572252862030682746818684507336852618633070135215708762463263460541984102045620907003420426453486084172633338261276848631947315738747720031010816\n", + "2180430559592596690686114639984883382077249494887970723562418121000231728739101521794539854436530152514449412448301312948196471920606072656130628117003357735062365666210104979740536844558241153400063626232421192723882860040829377045381574100489869201343591515030186094052575293132733554567787299885663552166327716893283696540027577518919833891893689326222716143279684962945332338723591774063881144505724061365493637369014673705237266140270431417524926526921083968204091241814006840852906972168345266676522553697263894631477495440062021632\n", + "4360861119185193381372229279969766764154498989775941447124836242000463457478203043589079708873060305028898824896602625896392943841212145312261256234006715470124731332420209959481073689116482306800127252464842385447765720081658754090763148200979738402687183030060372188105150586265467109135574599771327104332655433786567393080055155037839667783787378652445432286559369925890664677447183548127762289011448122730987274738029347410474532280540862835049853053842167936408182483628013681705813944336690533353045107394527789262954990880124043264\n", + "8721722238370386762744458559939533528308997979551882894249672484000926914956406087178159417746120610057797649793205251792785887682424290624522512468013430940249462664840419918962147378232964613600254504929684770895531440163317508181526296401959476805374366060120744376210301172530934218271149199542654208665310867573134786160110310075679335567574757304890864573118739851781329354894367096255524578022896245461974549476058694820949064561081725670099706107684335872816364967256027363411627888673381066706090214789055578525909981760248086528\n", + "17443444476740773525488917119879067056617995959103765788499344968001853829912812174356318835492241220115595299586410503585571775364848581249045024936026861880498925329680839837924294756465929227200509009859369541791062880326635016363052592803918953610748732120241488752420602345061868436542298399085308417330621735146269572320220620151358671135149514609781729146237479703562658709788734192511049156045792490923949098952117389641898129122163451340199412215368671745632729934512054726823255777346762133412180429578111157051819963520496173056\n", + "34886888953481547050977834239758134113235991918207531576998689936003707659825624348712637670984482440231190599172821007171143550729697162498090049872053723760997850659361679675848589512931858454401018019718739083582125760653270032726105185607837907221497464240482977504841204690123736873084596798170616834661243470292539144640441240302717342270299029219563458292474959407125317419577468385022098312091584981847898197904234779283796258244326902680398824430737343491265459869024109453646511554693524266824360859156222314103639927040992346112\n", + "69773777906963094101955668479516268226471983836415063153997379872007415319651248697425275341968964880462381198345642014342287101459394324996180099744107447521995701318723359351697179025863716908802036039437478167164251521306540065452210371215675814442994928480965955009682409380247473746169193596341233669322486940585078289280882480605434684540598058439126916584949918814250634839154936770044196624183169963695796395808469558567592516488653805360797648861474686982530919738048218907293023109387048533648721718312444628207279854081984692224\n", + "139547555813926188203911336959032536452943967672830126307994759744014830639302497394850550683937929760924762396691284028684574202918788649992360199488214895043991402637446718703394358051727433817604072078874956334328503042613080130904420742431351628885989856961931910019364818760494947492338387192682467338644973881170156578561764961210869369081196116878253833169899837628501269678309873540088393248366339927391592791616939117135185032977307610721595297722949373965061839476096437814586046218774097067297443436624889256414559708163969384448\n", + "279095111627852376407822673918065072905887935345660252615989519488029661278604994789701101367875859521849524793382568057369148405837577299984720398976429790087982805274893437406788716103454867635208144157749912668657006085226160261808841484862703257771979713923863820038729637520989894984676774385364934677289947762340313157123529922421738738162392233756507666339799675257002539356619747080176786496732679854783185583233878234270370065954615221443190595445898747930123678952192875629172092437548194134594886873249778512829119416327938768896\n", + "558190223255704752815645347836130145811775870691320505231979038976059322557209989579402202735751719043699049586765136114738296811675154599969440797952859580175965610549786874813577432206909735270416288315499825337314012170452320523617682969725406515543959427847727640077459275041979789969353548770729869354579895524680626314247059844843477476324784467513015332679599350514005078713239494160353572993465359709566371166467756468540740131909230442886381190891797495860247357904385751258344184875096388269189773746499557025658238832655877537792\n", + "1116380446511409505631290695672260291623551741382641010463958077952118645114419979158804405471503438087398099173530272229476593623350309199938881595905719160351931221099573749627154864413819470540832576630999650674628024340904641047235365939450813031087918855695455280154918550083959579938707097541459738709159791049361252628494119689686954952649568935026030665359198701028010157426478988320707145986930719419132742332935512937081480263818460885772762381783594991720494715808771502516688369750192776538379547492999114051316477665311755075584\n", + "2232760893022819011262581391344520583247103482765282020927916155904237290228839958317608810943006876174796198347060544458953187246700618399877763191811438320703862442199147499254309728827638941081665153261999301349256048681809282094470731878901626062175837711390910560309837100167919159877414195082919477418319582098722505256988239379373909905299137870052061330718397402056020314852957976641414291973861438838265484665871025874162960527636921771545524763567189983440989431617543005033376739500385553076759094985998228102632955330623510151168\n", + "4465521786045638022525162782689041166494206965530564041855832311808474580457679916635217621886013752349592396694121088917906374493401236799755526383622876641407724884398294998508619457655277882163330306523998602698512097363618564188941463757803252124351675422781821120619674200335838319754828390165838954836639164197445010513976478758747819810598275740104122661436794804112040629705915953282828583947722877676530969331742051748325921055273843543091049527134379966881978863235086010066753479000771106153518189971996456205265910661247020302336\n", + "8931043572091276045050325565378082332988413931061128083711664623616949160915359833270435243772027504699184793388242177835812748986802473599511052767245753282815449768796589997017238915310555764326660613047997205397024194727237128377882927515606504248703350845563642241239348400671676639509656780331677909673278328394890021027952957517495639621196551480208245322873589608224081259411831906565657167895445755353061938663484103496651842110547687086182099054268759933763957726470172020133506958001542212307036379943992912410531821322494040604672\n", + "17862087144182552090100651130756164665976827862122256167423329247233898321830719666540870487544055009398369586776484355671625497973604947199022105534491506565630899537593179994034477830621111528653321226095994410794048389454474256755765855031213008497406701691127284482478696801343353279019313560663355819346556656789780042055905915034991279242393102960416490645747179216448162518823663813131314335790891510706123877326968206993303684221095374172364198108537519867527915452940344040267013916003084424614072759887985824821063642644988081209344\n", + "35724174288365104180201302261512329331953655724244512334846658494467796643661439333081740975088110018796739173552968711343250995947209894398044211068983013131261799075186359988068955661242223057306642452191988821588096778908948513511531710062426016994813403382254568964957393602686706558038627121326711638693113313579560084111811830069982558484786205920832981291494358432896325037647327626262628671581783021412247754653936413986607368442190748344728396217075039735055830905880688080534027832006168849228145519775971649642127285289976162418688\n", + "71448348576730208360402604523024658663907311448489024669693316988935593287322878666163481950176220037593478347105937422686501991894419788796088422137966026262523598150372719976137911322484446114613284904383977643176193557817897027023063420124852033989626806764509137929914787205373413116077254242653423277386226627159120168223623660139965116969572411841665962582988716865792650075294655252525257343163566042824495509307872827973214736884381496689456792434150079470111661811761376161068055664012337698456291039551943299284254570579952324837376\n", + "142896697153460416720805209046049317327814622896978049339386633977871186574645757332326963900352440075186956694211874845373003983788839577592176844275932052525047196300745439952275822644968892229226569808767955286352387115635794054046126840249704067979253613529018275859829574410746826232154508485306846554772453254318240336447247320279930233939144823683331925165977433731585300150589310505050514686327132085648991018615745655946429473768762993378913584868300158940223323623522752322136111328024675396912582079103886598568509141159904649674752\n", + "285793394306920833441610418092098634655629245793956098678773267955742373149291514664653927800704880150373913388423749690746007967577679155184353688551864105050094392601490879904551645289937784458453139617535910572704774231271588108092253680499408135958507227058036551719659148821493652464309016970613693109544906508636480672894494640559860467878289647366663850331954867463170600301178621010101029372654264171297982037231491311892858947537525986757827169736600317880446647247045504644272222656049350793825164158207773197137018282319809299349504\n", + "571586788613841666883220836184197269311258491587912197357546535911484746298583029329307855601409760300747826776847499381492015935155358310368707377103728210100188785202981759809103290579875568916906279235071821145409548462543176216184507360998816271917014454116073103439318297642987304928618033941227386219089813017272961345788989281119720935756579294733327700663909734926341200602357242020202058745308528342595964074462982623785717895075051973515654339473200635760893294494091009288544445312098701587650328316415546394274036564639618598699008\n", + "1143173577227683333766441672368394538622516983175824394715093071822969492597166058658615711202819520601495653553694998762984031870310716620737414754207456420200377570405963519618206581159751137833812558470143642290819096925086352432369014721997632543834028908232146206878636595285974609857236067882454772438179626034545922691577978562239441871513158589466655401327819469852682401204714484040404117490617056685191928148925965247571435790150103947031308678946401271521786588988182018577088890624197403175300656632831092788548073129279237197398016\n", + "2286347154455366667532883344736789077245033966351648789430186143645938985194332117317231422405639041202991307107389997525968063740621433241474829508414912840400755140811927039236413162319502275667625116940287284581638193850172704864738029443995265087668057816464292413757273190571949219714472135764909544876359252069091845383155957124478883743026317178933310802655638939705364802409428968080808234981234113370383856297851930495142871580300207894062617357892802543043573177976364037154177781248394806350601313265662185577096146258558474394796032\n", + "4572694308910733335065766689473578154490067932703297578860372287291877970388664234634462844811278082405982614214779995051936127481242866482949659016829825680801510281623854078472826324639004551335250233880574569163276387700345409729476058887990530175336115632928584827514546381143898439428944271529819089752718504138183690766311914248957767486052634357866621605311277879410729604818857936161616469962468226740767712595703860990285743160600415788125234715785605086087146355952728074308355562496789612701202626531324371154192292517116948789592064\n", + "9145388617821466670131533378947156308980135865406595157720744574583755940777328469268925689622556164811965228429559990103872254962485732965899318033659651361603020563247708156945652649278009102670500467761149138326552775400690819458952117775981060350672231265857169655029092762287796878857888543059638179505437008276367381532623828497915534972105268715733243210622555758821459209637715872323232939924936453481535425191407721980571486321200831576250469431571210172174292711905456148616711124993579225402405253062648742308384585034233897579184128\n", + "18290777235642933340263066757894312617960271730813190315441489149167511881554656938537851379245112329623930456859119980207744509924971465931798636067319302723206041126495416313891305298556018205341000935522298276653105550801381638917904235551962120701344462531714339310058185524575593757715777086119276359010874016552734763065247656995831069944210537431466486421245111517642918419275431744646465879849872906963070850382815443961142972642401663152500938863142420344348585423810912297233422249987158450804810506125297484616769170068467795158368256\n", + "36581554471285866680526133515788625235920543461626380630882978298335023763109313877075702758490224659247860913718239960415489019849942931863597272134638605446412082252990832627782610597112036410682001871044596553306211101602763277835808471103924241402688925063428678620116371049151187515431554172238552718021748033105469526130495313991662139888421074862932972842490223035285836838550863489292931759699745813926141700765630887922285945284803326305001877726284840688697170847621824594466844499974316901609621012250594969233538340136935590316736512\n", + "73163108942571733361052267031577250471841086923252761261765956596670047526218627754151405516980449318495721827436479920830978039699885863727194544269277210892824164505981665255565221194224072821364003742089193106612422203205526555671616942207848482805377850126857357240232742098302375030863108344477105436043496066210939052260990627983324279776842149725865945684980446070571673677101726978585863519399491627852283401531261775844571890569606652610003755452569681377394341695243649188933688999948633803219242024501189938467076680273871180633473024\n", + "146326217885143466722104534063154500943682173846505522523531913193340095052437255508302811033960898636991443654872959841661956079399771727454389088538554421785648329011963330511130442388448145642728007484178386213224844406411053111343233884415696965610755700253714714480465484196604750061726216688954210872086992132421878104521981255966648559553684299451731891369960892141143347354203453957171727038798983255704566803062523551689143781139213305220007510905139362754788683390487298377867377999897267606438484049002379876934153360547742361266946048\n", + "292652435770286933444209068126309001887364347693011045047063826386680190104874511016605622067921797273982887309745919683323912158799543454908778177077108843571296658023926661022260884776896291285456014968356772426449688812822106222686467768831393931221511400507429428960930968393209500123452433377908421744173984264843756209043962511933297119107368598903463782739921784282286694708406907914343454077597966511409133606125047103378287562278426610440015021810278725509577366780974596755734755999794535212876968098004759753868306721095484722533892096\n", + "585304871540573866888418136252618003774728695386022090094127652773360380209749022033211244135843594547965774619491839366647824317599086909817556354154217687142593316047853322044521769553792582570912029936713544852899377625644212445372935537662787862443022801014858857921861936786419000246904866755816843488347968529687512418087925023866594238214737197806927565479843568564573389416813815828686908155195933022818267212250094206756575124556853220880030043620557451019154733561949193511469511999589070425753936196009519507736613442190969445067784192\n", + "1170609743081147733776836272505236007549457390772044180188255305546720760419498044066422488271687189095931549238983678733295648635198173819635112708308435374285186632095706644089043539107585165141824059873427089705798755251288424890745871075325575724886045602029717715843723873572838000493809733511633686976695937059375024836175850047733188476429474395613855130959687137129146778833627631657373816310391866045636534424500188413513150249113706441760060087241114902038309467123898387022939023999178140851507872392019039015473226884381938890135568384\n", + "2341219486162295467553672545010472015098914781544088360376510611093441520838996088132844976543374378191863098477967357466591297270396347639270225416616870748570373264191413288178087078215170330283648119746854179411597510502576849781491742150651151449772091204059435431687447747145676000987619467023267373953391874118750049672351700095466376952858948791227710261919374274258293557667255263314747632620783732091273068849000376827026300498227412883520120174482229804076618934247796774045878047998356281703015744784038078030946453768763877780271136768\n", + "4682438972324590935107345090020944030197829563088176720753021222186883041677992176265689953086748756383726196955934714933182594540792695278540450833233741497140746528382826576356174156430340660567296239493708358823195021005153699562983484301302302899544182408118870863374895494291352001975238934046534747906783748237500099344703400190932753905717897582455420523838748548516587115334510526629495265241567464182546137698000753654052600996454825767040240348964459608153237868495593548091756095996712563406031489568076156061892907537527755560542273536\n", + "9364877944649181870214690180041888060395659126176353441506042444373766083355984352531379906173497512767452393911869429866365189081585390557080901666467482994281493056765653152712348312860681321134592478987416717646390042010307399125966968602604605799088364816237741726749790988582704003950477868093069495813567496475000198689406800381865507811435795164910841047677497097033174230669021053258990530483134928365092275396001507308105201992909651534080480697928919216306475736991187096183512191993425126812062979136152312123785815075055511121084547072\n", + "18729755889298363740429380360083776120791318252352706883012084888747532166711968705062759812346995025534904787823738859732730378163170781114161803332934965988562986113531306305424696625721362642269184957974833435292780084020614798251933937205209211598176729632475483453499581977165408007900955736186138991627134992950000397378813600763731015622871590329821682095354994194066348461338042106517981060966269856730184550792003014616210403985819303068160961395857838432612951473982374192367024383986850253624125958272304624247571630150111022242169094144\n", + "37459511778596727480858760720167552241582636504705413766024169777495064333423937410125519624693990051069809575647477719465460756326341562228323606665869931977125972227062612610849393251442725284538369915949666870585560168041229596503867874410418423196353459264950966906999163954330816015801911472372277983254269985900000794757627201527462031245743180659643364190709988388132696922676084213035962121932539713460369101584006029232420807971638606136321922791715676865225902947964748384734048767973700507248251916544609248495143260300222044484338188288\n", + "74919023557193454961717521440335104483165273009410827532048339554990128666847874820251039249387980102139619151294955438930921512652683124456647213331739863954251944454125225221698786502885450569076739831899333741171120336082459193007735748820836846392706918529901933813998327908661632031603822944744555966508539971800001589515254403054924062491486361319286728381419976776265393845352168426071924243865079426920738203168012058464841615943277212272643845583431353730451805895929496769468097535947401014496503833089218496990286520600444088968676376576\n", + "149838047114386909923435042880670208966330546018821655064096679109980257333695749640502078498775960204279238302589910877861843025305366248913294426663479727908503888908250450443397573005770901138153479663798667482342240672164918386015471497641673692785413837059803867627996655817323264063207645889489111933017079943600003179030508806109848124982972722638573456762839953552530787690704336852143848487730158853841476406336024116929683231886554424545287691166862707460903611791858993538936195071894802028993007666178436993980573041200888177937352753152\n", + "299676094228773819846870085761340417932661092037643310128193358219960514667391499281004156997551920408558476605179821755723686050610732497826588853326959455817007777816500900886795146011541802276306959327597334964684481344329836772030942995283347385570827674119607735255993311634646528126415291778978223866034159887200006358061017612219696249965945445277146913525679907105061575381408673704287696975460317707682952812672048233859366463773108849090575382333725414921807223583717987077872390143789604057986015332356873987961146082401776355874705506304\n", + "599352188457547639693740171522680835865322184075286620256386716439921029334782998562008313995103840817116953210359643511447372101221464995653177706653918911634015555633001801773590292023083604552613918655194669929368962688659673544061885990566694771141655348239215470511986623269293056252830583557956447732068319774400012716122035224439392499931890890554293827051359814210123150762817347408575393950920635415365905625344096467718732927546217698181150764667450829843614447167435974155744780287579208115972030664713747975922292164803552711749411012608\n", + "1198704376915095279387480343045361671730644368150573240512773432879842058669565997124016627990207681634233906420719287022894744202442929991306355413307837823268031111266003603547180584046167209105227837310389339858737925377319347088123771981133389542283310696478430941023973246538586112505661167115912895464136639548800025432244070448878784999863781781108587654102719628420246301525634694817150787901841270830731811250688192935437465855092435396362301529334901659687228894334871948311489560575158416231944061329427495951844584329607105423498822025216\n", + "2397408753830190558774960686090723343461288736301146481025546865759684117339131994248033255980415363268467812841438574045789488404885859982612710826615675646536062222532007207094361168092334418210455674620778679717475850754638694176247543962266779084566621392956861882047946493077172225011322334231825790928273279097600050864488140897757569999727563562217175308205439256840492603051269389634301575803682541661463622501376385870874931710184870792724603058669803319374457788669743896622979121150316832463888122658854991903689168659214210846997644050432\n", + "4794817507660381117549921372181446686922577472602292962051093731519368234678263988496066511960830726536935625682877148091578976809771719965225421653231351293072124445064014414188722336184668836420911349241557359434951701509277388352495087924533558169133242785913723764095892986154344450022644668463651581856546558195200101728976281795515139999455127124434350616410878513680985206102538779268603151607365083322927245002752771741749863420369741585449206117339606638748915577339487793245958242300633664927776245317709983807378337318428421693995288100864\n", + "9589635015320762235099842744362893373845154945204585924102187463038736469356527976992133023921661453073871251365754296183157953619543439930450843306462702586144248890128028828377444672369337672841822698483114718869903403018554776704990175849067116338266485571827447528191785972308688900045289336927303163713093116390400203457952563591030279998910254248868701232821757027361970412205077558537206303214730166645854490005505543483499726840739483170898412234679213277497831154678975586491916484601267329855552490635419967614756674636856843387990576201728\n", + "19179270030641524470199685488725786747690309890409171848204374926077472938713055953984266047843322906147742502731508592366315907239086879860901686612925405172288497780256057656754889344738675345683645396966229437739806806037109553409980351698134232676532971143654895056383571944617377800090578673854606327426186232780800406915905127182060559997820508497737402465643514054723940824410155117074412606429460333291708980011011086966999453681478966341796824469358426554995662309357951172983832969202534659711104981270839935229513349273713686775981152403456\n", + "38358540061283048940399370977451573495380619780818343696408749852154945877426111907968532095686645812295485005463017184732631814478173759721803373225850810344576995560512115313509778689477350691367290793932458875479613612074219106819960703396268465353065942287309790112767143889234755600181157347709212654852372465561600813831810254364121119995641016995474804931287028109447881648820310234148825212858920666583417960022022173933998907362957932683593648938716853109991324618715902345967665938405069319422209962541679870459026698547427373551962304806912\n", + "76717080122566097880798741954903146990761239561636687392817499704309891754852223815937064191373291624590970010926034369465263628956347519443606746451701620689153991121024230627019557378954701382734581587864917750959227224148438213639921406792536930706131884574619580225534287778469511200362314695418425309704744931123201627663620508728242239991282033990949609862574056218895763297640620468297650425717841333166835920044044347867997814725915865367187297877433706219982649237431804691935331876810138638844419925083359740918053397094854747103924609613824\n", + "153434160245132195761597483909806293981522479123273374785634999408619783509704447631874128382746583249181940021852068738930527257912695038887213492903403241378307982242048461254039114757909402765469163175729835501918454448296876427279842813585073861412263769149239160451068575556939022400724629390836850619409489862246403255327241017456484479982564067981899219725148112437791526595281240936595300851435682666333671840088088695735995629451831730734374595754867412439965298474863609383870663753620277277688839850166719481836106794189709494207849219227648\n", + "306868320490264391523194967819612587963044958246546749571269998817239567019408895263748256765493166498363880043704137477861054515825390077774426985806806482756615964484096922508078229515818805530938326351459671003836908896593752854559685627170147722824527538298478320902137151113878044801449258781673701238818979724492806510654482034912968959965128135963798439450296224875583053190562481873190601702871365332667343680176177391471991258903663461468749191509734824879930596949727218767741327507240554555377679700333438963672213588379418988415698438455296\n", + "613736640980528783046389935639225175926089916493093499142539997634479134038817790527496513530986332996727760087408274955722109031650780155548853971613612965513231928968193845016156459031637611061876652702919342007673817793187505709119371254340295445649055076596956641804274302227756089602898517563347402477637959448985613021308964069825937919930256271927596878900592449751166106381124963746381203405742730665334687360352354782943982517807326922937498383019469649759861193899454437535482655014481109110755359400666877927344427176758837976831396876910592\n", + "1227473281961057566092779871278450351852179832986186998285079995268958268077635581054993027061972665993455520174816549911444218063301560311097707943227225931026463857936387690032312918063275222123753305405838684015347635586375011418238742508680590891298110153193913283608548604455512179205797035126694804955275918897971226042617928139651875839860512543855193757801184899502332212762249927492762406811485461330669374720704709565887965035614653845874996766038939299519722387798908875070965310028962218221510718801333755854688854353517675953662793753821184\n", + "2454946563922115132185559742556900703704359665972373996570159990537916536155271162109986054123945331986911040349633099822888436126603120622195415886454451862052927715872775380064625836126550444247506610811677368030695271172750022836477485017361181782596220306387826567217097208911024358411594070253389609910551837795942452085235856279303751679721025087710387515602369799004664425524499854985524813622970922661338749441409419131775930071229307691749993532077878599039444775597817750141930620057924436443021437602667511709377708707035351907325587507642368\n", + "4909893127844230264371119485113801407408719331944747993140319981075833072310542324219972108247890663973822080699266199645776872253206241244390831772908903724105855431745550760129251672253100888495013221623354736061390542345500045672954970034722363565192440612775653134434194417822048716823188140506779219821103675591884904170471712558607503359442050175420775031204739598009328851048999709971049627245941845322677498882818838263551860142458615383499987064155757198078889551195635500283861240115848872886042875205335023418755417414070703814651175015284736\n", + "9819786255688460528742238970227602814817438663889495986280639962151666144621084648439944216495781327947644161398532399291553744506412482488781663545817807448211710863491101520258503344506201776990026443246709472122781084691000091345909940069444727130384881225551306268868388835644097433646376281013558439642207351183769808340943425117215006718884100350841550062409479196018657702097999419942099254491883690645354997765637676527103720284917230766999974128311514396157779102391271000567722480231697745772085750410670046837510834828141407629302350030569472\n", + "19639572511376921057484477940455205629634877327778991972561279924303332289242169296879888432991562655895288322797064798583107489012824964977563327091635614896423421726982203040517006689012403553980052886493418944245562169382000182691819880138889454260769762451102612537736777671288194867292752562027116879284414702367539616681886850234430013437768200701683100124818958392037315404195998839884198508983767381290709995531275353054207440569834461533999948256623028792315558204782542001135444960463395491544171500821340093675021669656282815258604700061138944\n", + "39279145022753842114968955880910411259269754655557983945122559848606664578484338593759776865983125311790576645594129597166214978025649929955126654183271229792846843453964406081034013378024807107960105772986837888491124338764000365383639760277778908521539524902205225075473555342576389734585505124054233758568829404735079233363773700468860026875536401403366200249637916784074630808391997679768397017967534762581419991062550706108414881139668923067999896513246057584631116409565084002270889920926790983088343001642680187350043339312565630517209400122277888\n", + "78558290045507684229937911761820822518539509311115967890245119697213329156968677187519553731966250623581153291188259194332429956051299859910253308366542459585693686907928812162068026756049614215920211545973675776982248677528000730767279520555557817043079049804410450150947110685152779469171010248108467517137658809470158466727547400937720053751072802806732400499275833568149261616783995359536794035935069525162839982125101412216829762279337846135999793026492115169262232819130168004541779841853581966176686003285360374700086678625131261034418800244555776\n", + "157116580091015368459875823523641645037079018622231935780490239394426658313937354375039107463932501247162306582376518388664859912102599719820506616733084919171387373815857624324136053512099228431840423091947351553964497355056001461534559041111115634086158099608820900301894221370305558938342020496216935034275317618940316933455094801875440107502145605613464800998551667136298523233567990719073588071870139050325679964250202824433659524558675692271999586052984230338524465638260336009083559683707163932353372006570720749400173357250262522068837600489111552\n", + "314233160182030736919751647047283290074158037244463871560980478788853316627874708750078214927865002494324613164753036777329719824205199439641013233466169838342774747631715248648272107024198456863680846183894703107928994710112002923069118082222231268172316199217641800603788442740611117876684040992433870068550635237880633866910189603750880215004291211226929601997103334272597046467135981438147176143740278100651359928500405648867319049117351384543999172105968460677048931276520672018167119367414327864706744013141441498800346714500525044137675200978223104\n", + "628466320364061473839503294094566580148316074488927743121960957577706633255749417500156429855730004988649226329506073554659439648410398879282026466932339676685549495263430497296544214048396913727361692367789406215857989420224005846138236164444462536344632398435283601207576885481222235753368081984867740137101270475761267733820379207501760430008582422453859203994206668545194092934271962876294352287480556201302719857000811297734638098234702769087998344211936921354097862553041344036334238734828655729413488026282882997600693429001050088275350401956446208\n", + "1256932640728122947679006588189133160296632148977855486243921915155413266511498835000312859711460009977298452659012147109318879296820797758564052933864679353371098990526860994593088428096793827454723384735578812431715978840448011692276472328888925072689264796870567202415153770962444471506736163969735480274202540951522535467640758415003520860017164844907718407988413337090388185868543925752588704574961112402605439714001622595469276196469405538175996688423873842708195725106082688072668477469657311458826976052565765995201386858002100176550700803912892416\n", + "2513865281456245895358013176378266320593264297955710972487843830310826533022997670000625719422920019954596905318024294218637758593641595517128105867729358706742197981053721989186176856193587654909446769471157624863431957680896023384552944657777850145378529593741134404830307541924888943013472327939470960548405081903045070935281516830007041720034329689815436815976826674180776371737087851505177409149922224805210879428003245190938552392938811076351993376847747685416391450212165376145336954939314622917653952105131531990402773716004200353101401607825784832\n", + "5027730562912491790716026352756532641186528595911421944975687660621653066045995340001251438845840039909193810636048588437275517187283191034256211735458717413484395962107443978372353712387175309818893538942315249726863915361792046769105889315555700290757059187482268809660615083849777886026944655878941921096810163806090141870563033660014083440068659379630873631953653348361552743474175703010354818299844449610421758856006490381877104785877622152703986753695495370832782900424330752290673909878629245835307904210263063980805547432008400706202803215651569664\n", + "10055461125824983581432052705513065282373057191822843889951375321243306132091990680002502877691680079818387621272097176874551034374566382068512423470917434826968791924214887956744707424774350619637787077884630499453727830723584093538211778631111400581514118374964537619321230167699555772053889311757883842193620327612180283741126067320028166880137318759261747263907306696723105486948351406020709636599688899220843517712012980763754209571755244305407973507390990741665565800848661504581347819757258491670615808420526127961611094864016801412405606431303139328\n", + "20110922251649967162864105411026130564746114383645687779902750642486612264183981360005005755383360159636775242544194353749102068749132764137024846941834869653937583848429775913489414849548701239275574155769260998907455661447168187076423557262222801163028236749929075238642460335399111544107778623515767684387240655224360567482252134640056333760274637518523494527814613393446210973896702812041419273199377798441687035424025961527508419143510488610815947014781981483331131601697323009162695639514516983341231616841052255923222189728033602824811212862606278656\n", + "40221844503299934325728210822052261129492228767291375559805501284973224528367962720010011510766720319273550485088388707498204137498265528274049693883669739307875167696859551826978829699097402478551148311538521997814911322894336374152847114524445602326056473499858150477284920670798223088215557247031535368774481310448721134964504269280112667520549275037046989055629226786892421947793405624082838546398755596883374070848051923055016838287020977221631894029563962966662263203394646018325391279029033966682463233682104511846444379456067205649622425725212557312\n", + "80443689006599868651456421644104522258984457534582751119611002569946449056735925440020023021533440638547100970176777414996408274996531056548099387767339478615750335393719103653957659398194804957102296623077043995629822645788672748305694229048891204652112946999716300954569841341596446176431114494063070737548962620897442269929008538560225335041098550074093978111258453573784843895586811248165677092797511193766748141696103846110033676574041954443263788059127925933324526406789292036650782558058067933364926467364209023692888758912134411299244851450425114624\n", + "160887378013199737302912843288209044517968915069165502239222005139892898113471850880040046043066881277094201940353554829992816549993062113096198775534678957231500670787438207307915318796389609914204593246154087991259645291577345496611388458097782409304225893999432601909139682683192892352862228988126141475097925241794884539858017077120450670082197100148187956222516907147569687791173622496331354185595022387533496283392207692220067353148083908886527576118255851866649052813578584073301565116116135866729852934728418047385777517824268822598489702900850229248\n", + "321774756026399474605825686576418089035937830138331004478444010279785796226943701760080092086133762554188403880707109659985633099986124226192397551069357914463001341574876414615830637592779219828409186492308175982519290583154690993222776916195564818608451787998865203818279365366385784705724457976252282950195850483589769079716034154240901340164394200296375912445033814295139375582347244992662708371190044775066992566784415384440134706296167817773055152236511703733298105627157168146603130232232271733459705869456836094771555035648537645196979405801700458496\n", + "643549512052798949211651373152836178071875660276662008956888020559571592453887403520160184172267525108376807761414219319971266199972248452384795102138715828926002683149752829231661275185558439656818372984616351965038581166309381986445553832391129637216903575997730407636558730732771569411448915952504565900391700967179538159432068308481802680328788400592751824890067628590278751164694489985325416742380089550133985133568830768880269412592335635546110304473023407466596211254314336293206260464464543466919411738913672189543110071297075290393958811603400916992\n", + "1287099024105597898423302746305672356143751320553324017913776041119143184907774807040320368344535050216753615522828438639942532399944496904769590204277431657852005366299505658463322550371116879313636745969232703930077162332618763972891107664782259274433807151995460815273117461465543138822897831905009131800783401934359076318864136616963605360657576801185503649780135257180557502329388979970650833484760179100267970267137661537760538825184671271092220608946046814933192422508628672586412520928929086933838823477827344379086220142594150580787917623206801833984\n", + "2574198048211195796846605492611344712287502641106648035827552082238286369815549614080640736689070100433507231045656877279885064799888993809539180408554863315704010732599011316926645100742233758627273491938465407860154324665237527945782215329564518548867614303990921630546234922931086277645795663810018263601566803868718152637728273233927210721315153602371007299560270514361115004658777959941301666969520358200535940534275323075521077650369342542184441217892093629866384845017257345172825041857858173867677646955654688758172440285188301161575835246413603667968\n", + "5148396096422391593693210985222689424575005282213296071655104164476572739631099228161281473378140200867014462091313754559770129599777987619078360817109726631408021465198022633853290201484467517254546983876930815720308649330475055891564430659129037097735228607981843261092469845862172555291591327620036527203133607737436305275456546467854421442630307204742014599120541028722230009317555919882603333939040716401071881068550646151042155300738685084368882435784187259732769690034514690345650083715716347735355293911309377516344880570376602323151670492827207335936\n", + "10296792192844783187386421970445378849150010564426592143310208328953145479262198456322562946756280401734028924182627509119540259199555975238156721634219453262816042930396045267706580402968935034509093967753861631440617298660950111783128861318258074195470457215963686522184939691724345110583182655240073054406267215474872610550913092935708842885260614409484029198241082057444460018635111839765206667878081432802143762137101292302084310601477370168737764871568374519465539380069029380691300167431432695470710587822618755032689761140753204646303340985654414671872\n", + "20593584385689566374772843940890757698300021128853184286620416657906290958524396912645125893512560803468057848365255018239080518399111950476313443268438906525632085860792090535413160805937870069018187935507723262881234597321900223566257722636516148390940914431927373044369879383448690221166365310480146108812534430949745221101826185871417685770521228818968058396482164114888920037270223679530413335756162865604287524274202584604168621202954740337475529743136749038931078760138058761382600334862865390941421175645237510065379522281506409292606681971308829343744\n", + "41187168771379132749545687881781515396600042257706368573240833315812581917048793825290251787025121606936115696730510036478161036798223900952626886536877813051264171721584181070826321611875740138036375871015446525762469194643800447132515445273032296781881828863854746088739758766897380442332730620960292217625068861899490442203652371742835371541042457637936116792964328229777840074540447359060826671512325731208575048548405169208337242405909480674951059486273498077862157520276117522765200669725730781882842351290475020130759044563012818585213363942617658687488\n", + "82374337542758265499091375763563030793200084515412737146481666631625163834097587650580503574050243213872231393461020072956322073596447801905253773073755626102528343443168362141652643223751480276072751742030893051524938389287600894265030890546064593563763657727709492177479517533794760884665461241920584435250137723798980884407304743485670743082084915275872233585928656459555680149080894718121653343024651462417150097096810338416674484811818961349902118972546996155724315040552235045530401339451461563765684702580950040261518089126025637170426727885235317374976\n", + "164748675085516530998182751527126061586400169030825474292963333263250327668195175301161007148100486427744462786922040145912644147192895603810507546147511252205056686886336724283305286447502960552145503484061786103049876778575201788530061781092129187127527315455418984354959035067589521769330922483841168870500275447597961768814609486971341486164169830551744467171857312919111360298161789436243306686049302924834300194193620676833348969623637922699804237945093992311448630081104470091060802678902923127531369405161900080523036178252051274340853455770470634749952\n", + "329497350171033061996365503054252123172800338061650948585926666526500655336390350602322014296200972855488925573844080291825288294385791207621015092295022504410113373772673448566610572895005921104291006968123572206099753557150403577060123562184258374255054630910837968709918070135179043538661844967682337741000550895195923537629218973942682972328339661103488934343714625838222720596323578872486613372098605849668600388387241353666697939247275845399608475890187984622897260162208940182121605357805846255062738810323800161046072356504102548681706911540941269499904\n", + "658994700342066123992731006108504246345600676123301897171853333053001310672780701204644028592401945710977851147688160583650576588771582415242030184590045008820226747545346897133221145790011842208582013936247144412199507114300807154120247124368516748510109261821675937419836140270358087077323689935364675482001101790391847075258437947885365944656679322206977868687429251676445441192647157744973226744197211699337200776774482707333395878494551690799216951780375969245794520324417880364243210715611692510125477620647600322092144713008205097363413823081882538999808\n", + "1317989400684132247985462012217008492691201352246603794343706666106002621345561402409288057184803891421955702295376321167301153177543164830484060369180090017640453495090693794266442291580023684417164027872494288824399014228601614308240494248737033497020218523643351874839672280540716174154647379870729350964002203580783694150516875895770731889313358644413955737374858503352890882385294315489946453488394423398674401553548965414666791756989103381598433903560751938491589040648835760728486421431223385020250955241295200644184289426016410194726827646163765077999616\n", + "2635978801368264495970924024434016985382402704493207588687413332212005242691122804818576114369607782843911404590752642334602306355086329660968120738360180035280906990181387588532884583160047368834328055744988577648798028457203228616480988497474066994040437047286703749679344561081432348309294759741458701928004407161567388301033751791541463778626717288827911474749717006705781764770588630979892906976788846797348803107097930829333583513978206763196867807121503876983178081297671521456972842862446770040501910482590401288368578852032820389453655292327530155999232\n", + "5271957602736528991941848048868033970764805408986415177374826664424010485382245609637152228739215565687822809181505284669204612710172659321936241476720360070561813980362775177065769166320094737668656111489977155297596056914406457232961976994948133988080874094573407499358689122162864696618589519482917403856008814323134776602067503583082927557253434577655822949499434013411563529541177261959785813953577693594697606214195861658667167027956413526393735614243007753966356162595343042913945685724893540081003820965180802576737157704065640778907310584655060311998464\n", + "10543915205473057983883696097736067941529610817972830354749653328848020970764491219274304457478431131375645618363010569338409225420345318643872482953440720141123627960725550354131538332640189475337312222979954310595192113828812914465923953989896267976161748189146814998717378244325729393237179038965834807712017628646269553204135007166165855114506869155311645898998868026823127059082354523919571627907155387189395212428391723317334334055912827052787471228486015507932712325190686085827891371449787080162007641930361605153474315408131281557814621169310120623996928\n", + "21087830410946115967767392195472135883059221635945660709499306657696041941528982438548608914956862262751291236726021138676818450840690637287744965906881440282247255921451100708263076665280378950674624445959908621190384227657625828931847907979792535952323496378293629997434756488651458786474358077931669615424035257292539106408270014332331710229013738310623291797997736053646254118164709047839143255814310774378790424856783446634668668111825654105574942456972031015865424650381372171655782742899574160324015283860723210306948630816262563115629242338620241247993856\n", + "42175660821892231935534784390944271766118443271891321418998613315392083883057964877097217829913724525502582473452042277353636901681381274575489931813762880564494511842902201416526153330560757901349248891919817242380768455315251657863695815959585071904646992756587259994869512977302917572948716155863339230848070514585078212816540028664663420458027476621246583595995472107292508236329418095678286511628621548757580849713566893269337336223651308211149884913944062031730849300762744343311565485799148320648030567721446420613897261632525126231258484677240482495987712\n", + "84351321643784463871069568781888543532236886543782642837997226630784167766115929754194435659827449051005164946904084554707273803362762549150979863627525761128989023685804402833052306661121515802698497783839634484761536910630503315727391631919170143809293985513174519989739025954605835145897432311726678461696141029170156425633080057329326840916054953242493167191990944214585016472658836191356573023257243097515161699427133786538674672447302616422299769827888124063461698601525488686623130971598296641296061135442892841227794523265050252462516969354480964991975424\n", + "168702643287568927742139137563777087064473773087565285675994453261568335532231859508388871319654898102010329893808169109414547606725525098301959727255051522257978047371608805666104613322243031605396995567679268969523073821261006631454783263838340287618587971026349039979478051909211670291794864623453356923392282058340312851266160114658653681832109906484986334383981888429170032945317672382713146046514486195030323398854267573077349344894605232844599539655776248126923397203050977373246261943196593282592122270885785682455589046530100504925033938708961929983950848\n", + "337405286575137855484278275127554174128947546175130571351988906523136671064463719016777742639309796204020659787616338218829095213451050196603919454510103044515956094743217611332209226644486063210793991135358537939046147642522013262909566527676680575237175942052698079958956103818423340583589729246906713846784564116680625702532320229317307363664219812969972668767963776858340065890635344765426292093028972390060646797708535146154698689789210465689199079311552496253846794406101954746492523886393186565184244541771571364911178093060201009850067877417923859967901696\n", + "674810573150275710968556550255108348257895092350261142703977813046273342128927438033555485278619592408041319575232676437658190426902100393207838909020206089031912189486435222664418453288972126421587982270717075878092295285044026525819133055353361150474351884105396159917912207636846681167179458493813427693569128233361251405064640458634614727328439625939945337535927553716680131781270689530852584186057944780121293595417070292309397379578420931378398158623104992507693588812203909492985047772786373130368489083543142729822356186120402019700135754835847719935803392\n", + "1349621146300551421937113100510216696515790184700522285407955626092546684257854876067110970557239184816082639150465352875316380853804200786415677818040412178063824378972870445328836906577944252843175964541434151756184590570088053051638266110706722300948703768210792319835824415273693362334358916987626855387138256466722502810129280917269229454656879251879890675071855107433360263562541379061705168372115889560242587190834140584618794759156841862756796317246209985015387177624407818985970095545572746260736978167086285459644712372240804039400271509671695439871606784\n", + "2699242292601102843874226201020433393031580369401044570815911252185093368515709752134221941114478369632165278300930705750632761707608401572831355636080824356127648757945740890657673813155888505686351929082868303512369181140176106103276532221413444601897407536421584639671648830547386724668717833975253710774276512933445005620258561834538458909313758503759781350143710214866720527125082758123410336744231779120485174381668281169237589518313683725513592634492419970030774355248815637971940191091145492521473956334172570919289424744481608078800543019343390879743213568\n", + "5398484585202205687748452402040866786063160738802089141631822504370186737031419504268443882228956739264330556601861411501265523415216803145662711272161648712255297515891481781315347626311777011372703858165736607024738362280352212206553064442826889203794815072843169279343297661094773449337435667950507421548553025866890011240517123669076917818627517007519562700287420429733441054250165516246820673488463558240970348763336562338475179036627367451027185268984839940061548710497631275943880382182290985042947912668345141838578849488963216157601086038686781759486427136\n", + "10796969170404411375496904804081733572126321477604178283263645008740373474062839008536887764457913478528661113203722823002531046830433606291325422544323297424510595031782963562630695252623554022745407716331473214049476724560704424413106128885653778407589630145686338558686595322189546898674871335901014843097106051733780022481034247338153835637255034015039125400574840859466882108500331032493641346976927116481940697526673124676950358073254734902054370537969679880123097420995262551887760764364581970085895825336690283677157698977926432315202172077373563518972854272\n", + "21593938340808822750993809608163467144252642955208356566527290017480746948125678017073775528915826957057322226407445646005062093660867212582650845088646594849021190063565927125261390505247108045490815432662946428098953449121408848826212257771307556815179260291372677117373190644379093797349742671802029686194212103467560044962068494676307671274510068030078250801149681718933764217000662064987282693953854232963881395053346249353900716146509469804108741075939359760246194841990525103775521528729163940171791650673380567354315397955852864630404344154747127037945708544\n", + "43187876681617645501987619216326934288505285910416713133054580034961493896251356034147551057831653914114644452814891292010124187321734425165301690177293189698042380127131854250522781010494216090981630865325892856197906898242817697652424515542615113630358520582745354234746381288758187594699485343604059372388424206935120089924136989352615342549020136060156501602299363437867528434001324129974565387907708465927762790106692498707801432293018939608217482151878719520492389683981050207551043057458327880343583301346761134708630795911705729260808688309494254075891417088\n", + "86375753363235291003975238432653868577010571820833426266109160069922987792502712068295102115663307828229288905629782584020248374643468850330603380354586379396084760254263708501045562020988432181963261730651785712395813796485635395304849031085230227260717041165490708469492762577516375189398970687208118744776848413870240179848273978705230685098040272120313003204598726875735056868002648259949130775815416931855525580213384997415602864586037879216434964303757439040984779367962100415102086114916655760687166602693522269417261591823411458521617376618988508151782834176\n", + "172751506726470582007950476865307737154021143641666852532218320139845975585005424136590204231326615656458577811259565168040496749286937700661206760709172758792169520508527417002091124041976864363926523461303571424791627592971270790609698062170460454521434082330981416938985525155032750378797941374416237489553696827740480359696547957410461370196080544240626006409197453751470113736005296519898261551630833863711051160426769994831205729172075758432869928607514878081969558735924200830204172229833311521374333205387044538834523183646822917043234753237977016303565668352\n", + "345503013452941164015900953730615474308042287283333705064436640279691951170010848273180408462653231312917155622519130336080993498573875401322413521418345517584339041017054834004182248083953728727853046922607142849583255185942541581219396124340920909042868164661962833877971050310065500757595882748832474979107393655480960719393095914820922740392161088481252012818394907502940227472010593039796523103261667727422102320853539989662411458344151516865739857215029756163939117471848401660408344459666623042748666410774089077669046367293645834086469506475954032607131336704\n", + "691006026905882328031801907461230948616084574566667410128873280559383902340021696546360816925306462625834311245038260672161986997147750802644827042836691035168678082034109668008364496167907457455706093845214285699166510371885083162438792248681841818085736329323925667755942100620131001515191765497664949958214787310961921438786191829641845480784322176962504025636789815005880454944021186079593046206523335454844204641707079979324822916688303033731479714430059512327878234943696803320816688919333246085497332821548178155338092734587291668172939012951908065214262673408\n", + "1382012053811764656063603814922461897232169149133334820257746561118767804680043393092721633850612925251668622490076521344323973994295501605289654085673382070337356164068219336016728992335814914911412187690428571398333020743770166324877584497363683636171472658647851335511884201240262003030383530995329899916429574621923842877572383659283690961568644353925008051273579630011760909888042372159186092413046670909688409283414159958649645833376606067462959428860119024655756469887393606641633377838666492170994665643096356310676185469174583336345878025903816130428525346816\n", + "2764024107623529312127207629844923794464338298266669640515493122237535609360086786185443267701225850503337244980153042688647947988591003210579308171346764140674712328136438672033457984671629829822824375380857142796666041487540332649755168994727367272342945317295702671023768402480524006060767061990659799832859149243847685755144767318567381923137288707850016102547159260023521819776084744318372184826093341819376818566828319917299291666753212134925918857720238049311512939774787213283266755677332984341989331286192712621352370938349166672691756051807632260857050693632\n", + "5528048215247058624254415259689847588928676596533339281030986244475071218720173572370886535402451701006674489960306085377295895977182006421158616342693528281349424656272877344066915969343259659645648750761714285593332082975080665299510337989454734544685890634591405342047536804961048012121534123981319599665718298487695371510289534637134763846274577415700032205094318520047043639552169488636744369652186683638753637133656639834598583333506424269851837715440476098623025879549574426566533511354665968683978662572385425242704741876698333345383512103615264521714101387264\n", + "11056096430494117248508830519379695177857353193066678562061972488950142437440347144741773070804903402013348979920612170754591791954364012842317232685387056562698849312545754688133831938686519319291297501523428571186664165950161330599020675978909469089371781269182810684095073609922096024243068247962639199331436596975390743020579069274269527692549154831400064410188637040094087279104338977273488739304373367277507274267313279669197166667012848539703675430880952197246051759099148853133067022709331937367957325144770850485409483753396666690767024207230529043428202774528\n", + "22112192860988234497017661038759390355714706386133357124123944977900284874880694289483546141609806804026697959841224341509183583908728025684634465370774113125397698625091509376267663877373038638582595003046857142373328331900322661198041351957818938178743562538365621368190147219844192048486136495925278398662873193950781486041158138548539055385098309662800128820377274080188174558208677954546977478608746734555014548534626559338394333334025697079407350861761904394492103518198297706266134045418663874735914650289541700970818967506793333381534048414461058086856405549056\n", + "44224385721976468994035322077518780711429412772266714248247889955800569749761388578967092283219613608053395919682448683018367167817456051369268930741548226250795397250183018752535327754746077277165190006093714284746656663800645322396082703915637876357487125076731242736380294439688384096972272991850556797325746387901562972082316277097078110770196619325600257640754548160376349116417355909093954957217493469110029097069253118676788666668051394158814701723523808788984207036396595412532268090837327749471829300579083401941637935013586666763068096828922116173712811098112\n", + "88448771443952937988070644155037561422858825544533428496495779911601139499522777157934184566439227216106791839364897366036734335634912102738537861483096452501590794500366037505070655509492154554330380012187428569493313327601290644792165407831275752714974250153462485472760588879376768193944545983701113594651492775803125944164632554194156221540393238651200515281509096320752698232834711818187909914434986938220058194138506237353577333336102788317629403447047617577968414072793190825064536181674655498943658601158166803883275870027173333526136193657844232347425622196224\n", + "176897542887905875976141288310075122845717651089066856992991559823202278999045554315868369132878454432213583678729794732073468671269824205477075722966192905003181589000732075010141311018984309108660760024374857138986626655202581289584330815662551505429948500306924970945521177758753536387889091967402227189302985551606251888329265108388312443080786477302401030563018192641505396465669423636375819828869973876440116388277012474707154666672205576635258806894095235155936828145586381650129072363349310997887317202316333607766551740054346667052272387315688464694851244392448\n", + "353795085775811751952282576620150245691435302178133713985983119646404557998091108631736738265756908864427167357459589464146937342539648410954151445932385810006363178001464150020282622037968618217321520048749714277973253310405162579168661631325103010859897000613849941891042355517507072775778183934804454378605971103212503776658530216776624886161572954604802061126036385283010792931338847272751639657739947752880232776554024949414309333344411153270517613788190470311873656291172763300258144726698621995774634404632667215533103480108693334104544774631376929389702488784896\n", + "707590171551623503904565153240300491382870604356267427971966239292809115996182217263473476531513817728854334714919178928293874685079296821908302891864771620012726356002928300040565244075937236434643040097499428555946506620810325158337323262650206021719794001227699883782084711035014145551556367869608908757211942206425007553317060433553249772323145909209604122252072770566021585862677694545503279315479895505760465553108049898828618666688822306541035227576380940623747312582345526600516289453397243991549268809265334431066206960217386668209089549262753858779404977569792\n", + "1415180343103247007809130306480600982765741208712534855943932478585618231992364434526946953063027635457708669429838357856587749370158593643816605783729543240025452712005856600081130488151874472869286080194998857111893013241620650316674646525300412043439588002455399767564169422070028291103112735739217817514423884412850015106634120867106499544646291818419208244504145541132043171725355389091006558630959791011520931106216099797657237333377644613082070455152761881247494625164691053201032578906794487983098537618530668862132413920434773336418179098525507717558809955139584\n", + "2830360686206494015618260612961201965531482417425069711887864957171236463984728869053893906126055270915417338859676715713175498740317187287633211567459086480050905424011713200162260976303748945738572160389997714223786026483241300633349293050600824086879176004910799535128338844140056582206225471478435635028847768825700030213268241734212999089292583636838416489008291082264086343450710778182013117261919582023041862212432199595314474666755289226164140910305523762494989250329382106402065157813588975966197075237061337724264827840869546672836358197051015435117619910279168\n", + "5660721372412988031236521225922403931062964834850139423775729914342472927969457738107787812252110541830834677719353431426350997480634374575266423134918172960101810848023426400324521952607497891477144320779995428447572052966482601266698586101201648173758352009821599070256677688280113164412450942956871270057695537651400060426536483468425998178585167273676832978016582164528172686901421556364026234523839164046083724424864399190628949333510578452328281820611047524989978500658764212804130315627177951932394150474122675448529655681739093345672716394102030870235239820558336\n", + "11321442744825976062473042451844807862125929669700278847551459828684945855938915476215575624504221083661669355438706862852701994961268749150532846269836345920203621696046852800649043905214995782954288641559990856895144105932965202533397172202403296347516704019643198140513355376560226328824901885913742540115391075302800120853072966936851996357170334547353665956033164329056345373802843112728052469047678328092167448849728798381257898667021156904656563641222095049979957001317528425608260631254355903864788300948245350897059311363478186691345432788204061740470479641116672\n", + "22642885489651952124946084903689615724251859339400557695102919657369891711877830952431151249008442167323338710877413725705403989922537498301065692539672691840407243392093705601298087810429991565908577283119981713790288211865930405066794344404806592695033408039286396281026710753120452657649803771827485080230782150605600241706145933873703992714340669094707331912066328658112690747605686225456104938095356656184334897699457596762515797334042313809313127282444190099959914002635056851216521262508711807729576601896490701794118622726956373382690865576408123480940959282233344\n", + "45285770979303904249892169807379231448503718678801115390205839314739783423755661904862302498016884334646677421754827451410807979845074996602131385079345383680814486784187411202596175620859983131817154566239963427580576423731860810133588688809613185390066816078572792562053421506240905315299607543654970160461564301211200483412291867747407985428681338189414663824132657316225381495211372450912209876190713312368669795398915193525031594668084627618626254564888380199919828005270113702433042525017423615459153203792981403588237245453912746765381731152816246961881918564466688\n", + "90571541958607808499784339614758462897007437357602230780411678629479566847511323809724604996033768669293354843509654902821615959690149993204262770158690767361628973568374822405192351241719966263634309132479926855161152847463721620267177377619226370780133632157145585124106843012481810630599215087309940320923128602422400966824583735494815970857362676378829327648265314632450762990422744901824419752381426624737339590797830387050063189336169255237252509129776760399839656010540227404866085050034847230918306407585962807176474490907825493530763462305632493923763837128933376\n", + "181143083917215616999568679229516925794014874715204461560823357258959133695022647619449209992067537338586709687019309805643231919380299986408525540317381534723257947136749644810384702483439932527268618264959853710322305694927443240534354755238452741560267264314291170248213686024963621261198430174619880641846257204844801933649167470989631941714725352757658655296530629264901525980845489803648839504762853249474679181595660774100126378672338510474505018259553520799679312021080454809732170100069694461836612815171925614352948981815650987061526924611264987847527674257866752\n", + "362286167834431233999137358459033851588029749430408923121646714517918267390045295238898419984135074677173419374038619611286463838760599972817051080634763069446515894273499289620769404966879865054537236529919707420644611389854886481068709510476905483120534528628582340496427372049927242522396860349239761283692514409689603867298334941979263883429450705515317310593061258529803051961690979607297679009525706498949358363191321548200252757344677020949010036519107041599358624042160909619464340200139388923673225630343851228705897963631301974123053849222529975695055348515733504\n", + "724572335668862467998274716918067703176059498860817846243293429035836534780090590477796839968270149354346838748077239222572927677521199945634102161269526138893031788546998579241538809933759730109074473059839414841289222779709772962137419020953810966241069057257164680992854744099854485044793720698479522567385028819379207734596669883958527766858901411030634621186122517059606103923381959214595358019051412997898716726382643096400505514689354041898020073038214083198717248084321819238928680400278777847346451260687702457411795927262603948246107698445059951390110697031467008\n", + "1449144671337724935996549433836135406352118997721635692486586858071673069560181180955593679936540298708693677496154478445145855355042399891268204322539052277786063577093997158483077619867519460218148946119678829682578445559419545924274838041907621932482138114514329361985709488199708970089587441396959045134770057638758415469193339767917055533717802822061269242372245034119212207846763918429190716038102825995797433452765286192801011029378708083796040146076428166397434496168643638477857360800557555694692902521375404914823591854525207896492215396890119902780221394062934016\n", + "2898289342675449871993098867672270812704237995443271384973173716143346139120362361911187359873080597417387354992308956890291710710084799782536408645078104555572127154187994316966155239735038920436297892239357659365156891118839091848549676083815243864964276229028658723971418976399417940179174882793918090269540115277516830938386679535834111067435605644122538484744490068238424415693527836858381432076205651991594866905530572385602022058757416167592080292152856332794868992337287276955714721601115111389385805042750809829647183709050415792984430793780239805560442788125868032\n", + "5796578685350899743986197735344541625408475990886542769946347432286692278240724723822374719746161194834774709984617913780583421420169599565072817290156209111144254308375988633932310479470077840872595784478715318730313782237678183697099352167630487729928552458057317447942837952798835880358349765587836180539080230555033661876773359071668222134871211288245076969488980136476848831387055673716762864152411303983189733811061144771204044117514832335184160584305712665589737984674574553911429443202230222778771610085501619659294367418100831585968861587560479611120885576251736064\n", + "11593157370701799487972395470689083250816951981773085539892694864573384556481449447644749439492322389669549419969235827561166842840339199130145634580312418222288508616751977267864620958940155681745191568957430637460627564475356367394198704335260975459857104916114634895885675905597671760716699531175672361078160461110067323753546718143336444269742422576490153938977960272953697662774111347433525728304822607966379467622122289542408088235029664670368321168611425331179475969349149107822858886404460445557543220171003239318588734836201663171937723175120959222241771152503472128\n", + "23186314741403598975944790941378166501633903963546171079785389729146769112962898895289498878984644779339098839938471655122333685680678398260291269160624836444577017233503954535729241917880311363490383137914861274921255128950712734788397408670521950919714209832229269791771351811195343521433399062351344722156320922220134647507093436286672888539484845152980307877955920545907395325548222694867051456609645215932758935244244579084816176470059329340736642337222850662358951938698298215645717772808920891115086440342006478637177469672403326343875446350241918444483542305006944256\n", + "46372629482807197951889581882756333003267807927092342159570779458293538225925797790578997757969289558678197679876943310244667371361356796520582538321249672889154034467007909071458483835760622726980766275829722549842510257901425469576794817341043901839428419664458539583542703622390687042866798124702689444312641844440269295014186872573345777078969690305960615755911841091814790651096445389734102913219290431865517870488489158169632352940118658681473284674445701324717903877396596431291435545617841782230172880684012957274354939344806652687750892700483836888967084610013888512\n", + "92745258965614395903779163765512666006535615854184684319141558916587076451851595581157995515938579117356395359753886620489334742722713593041165076642499345778308068934015818142916967671521245453961532551659445099685020515802850939153589634682087803678856839328917079167085407244781374085733596249405378888625283688880538590028373745146691554157939380611921231511823682183629581302192890779468205826438580863731035740976978316339264705880237317362946569348891402649435807754793192862582871091235683564460345761368025914548709878689613305375501785400967673777934169220027777024\n", + "185490517931228791807558327531025332013071231708369368638283117833174152903703191162315991031877158234712790719507773240978669485445427186082330153284998691556616137868031636285833935343042490907923065103318890199370041031605701878307179269364175607357713678657834158334170814489562748171467192498810757777250567377761077180056747490293383108315878761223842463023647364367259162604385781558936411652877161727462071481953956632678529411760474634725893138697782805298871615509586385725165742182471367128920691522736051829097419757379226610751003570801935347555868338440055554048\n", + "370981035862457583615116655062050664026142463416738737276566235666348305807406382324631982063754316469425581439015546481957338970890854372164660306569997383113232275736063272571667870686084981815846130206637780398740082063211403756614358538728351214715427357315668316668341628979125496342934384997621515554501134755522154360113494980586766216631757522447684926047294728734518325208771563117872823305754323454924142963907913265357058823520949269451786277395565610597743231019172771450331484364942734257841383045472103658194839514758453221502007141603870695111736676880111108096\n", + "741962071724915167230233310124101328052284926833477474553132471332696611614812764649263964127508632938851162878031092963914677941781708744329320613139994766226464551472126545143335741372169963631692260413275560797480164126422807513228717077456702429430854714631336633336683257958250992685868769995243031109002269511044308720226989961173532433263515044895369852094589457469036650417543126235745646611508646909848285927815826530714117647041898538903572554791131221195486462038345542900662968729885468515682766090944207316389679029516906443004014283207741390223473353760222216192\n", + "1483924143449830334460466620248202656104569853666954949106264942665393223229625529298527928255017265877702325756062185927829355883563417488658641226279989532452929102944253090286671482744339927263384520826551121594960328252845615026457434154913404858861709429262673266673366515916501985371737539990486062218004539022088617440453979922347064866527030089790739704189178914938073300835086252471491293223017293819696571855631653061428235294083797077807145109582262442390972924076691085801325937459770937031365532181888414632779358059033812886008028566415482780446946707520444432384\n", + "2967848286899660668920933240496405312209139707333909898212529885330786446459251058597055856510034531755404651512124371855658711767126834977317282452559979064905858205888506180573342965488679854526769041653102243189920656505691230052914868309826809717723418858525346533346733031833003970743475079980972124436009078044177234880907959844694129733054060179581479408378357829876146601670172504942982586446034587639393143711263306122856470588167594155614290219164524884781945848153382171602651874919541874062731064363776829265558716118067625772016057132830965560893893415040888864768\n", + "5935696573799321337841866480992810624418279414667819796425059770661572892918502117194111713020069063510809303024248743711317423534253669954634564905119958129811716411777012361146685930977359709053538083306204486379841313011382460105829736619653619435446837717050693066693466063666007941486950159961944248872018156088354469761815919689388259466108120359162958816756715659752293203340345009885965172892069175278786287422526612245712941176335188311228580438329049769563891696306764343205303749839083748125462128727553658531117432236135251544032114265661931121787786830081777729536\n", + "11871393147598642675683732961985621248836558829335639592850119541323145785837004234388223426040138127021618606048497487422634847068507339909269129810239916259623432823554024722293371861954719418107076166612408972759682626022764920211659473239307238870893675434101386133386932127332015882973900319923888497744036312176708939523631839378776518932216240718325917633513431319504586406680690019771930345784138350557572574845053224491425882352670376622457160876658099539127783392613528686410607499678167496250924257455107317062234864472270503088064228531323862243575573660163555459072\n", + "23742786295197285351367465923971242497673117658671279185700239082646291571674008468776446852080276254043237212096994974845269694137014679818538259620479832519246865647108049444586743723909438836214152333224817945519365252045529840423318946478614477741787350868202772266773864254664031765947800639847776995488072624353417879047263678757553037864432481436651835267026862639009172813361380039543860691568276701115145149690106448982851764705340753244914321753316199078255566785227057372821214999356334992501848514910214634124469728944541006176128457062647724487151147320327110918144\n", + "47485572590394570702734931847942484995346235317342558371400478165292583143348016937552893704160552508086474424193989949690539388274029359637076519240959665038493731294216098889173487447818877672428304666449635891038730504091059680846637892957228955483574701736405544533547728509328063531895601279695553990976145248706835758094527357515106075728864962873303670534053725278018345626722760079087721383136553402230290299380212897965703529410681506489828643506632398156511133570454114745642429998712669985003697029820429268248939457889082012352256914125295448974302294640654221836288\n", + "94971145180789141405469863695884969990692470634685116742800956330585166286696033875105787408321105016172948848387979899381078776548058719274153038481919330076987462588432197778346974895637755344856609332899271782077461008182119361693275785914457910967149403472811089067095457018656127063791202559391107981952290497413671516189054715030212151457729925746607341068107450556036691253445520158175442766273106804460580598760425795931407058821363012979657287013264796313022267140908229491284859997425339970007394059640858536497878915778164024704513828250590897948604589281308443672576\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "189942290361578282810939727391769939981384941269370233485601912661170332573392067750211574816642210032345897696775959798762157553096117438548306076963838660153974925176864395556693949791275510689713218665798543564154922016364238723386551571828915821934298806945622178134190914037312254127582405118782215963904580994827343032378109430060424302915459851493214682136214901112073382506891040316350885532546213608921161197520851591862814117642726025959314574026529592626044534281816458982569719994850679940014788119281717072995757831556328049409027656501181795897209178562616887345152\n", + "379884580723156565621879454783539879962769882538740466971203825322340665146784135500423149633284420064691795393551919597524315106192234877096612153927677320307949850353728791113387899582551021379426437331597087128309844032728477446773103143657831643868597613891244356268381828074624508255164810237564431927809161989654686064756218860120848605830919702986429364272429802224146765013782080632701771065092427217842322395041703183725628235285452051918629148053059185252089068563632917965139439989701359880029576238563434145991515663112656098818055313002363591794418357125233774690304\n", + "759769161446313131243758909567079759925539765077480933942407650644681330293568271000846299266568840129383590787103839195048630212384469754193224307855354640615899700707457582226775799165102042758852874663194174256619688065456954893546206287315663287737195227782488712536763656149249016510329620475128863855618323979309372129512437720241697211661839405972858728544859604448293530027564161265403542130184854435684644790083406367451256470570904103837258296106118370504178137127265835930278879979402719760059152477126868291983031326225312197636110626004727183588836714250467549380608\n", + "1519538322892626262487517819134159519851079530154961867884815301289362660587136542001692598533137680258767181574207678390097260424768939508386448615710709281231799401414915164453551598330204085517705749326388348513239376130913909787092412574631326575474390455564977425073527312298498033020659240950257727711236647958618744259024875440483394423323678811945717457089719208896587060055128322530807084260369708871369289580166812734902512941141808207674516592212236741008356274254531671860557759958805439520118304954253736583966062652450624395272221252009454367177673428500935098761216\n", + "3039076645785252524975035638268319039702159060309923735769630602578725321174273084003385197066275360517534363148415356780194520849537879016772897231421418562463598802829830328907103196660408171035411498652776697026478752261827819574184825149262653150948780911129954850147054624596996066041318481900515455422473295917237488518049750880966788846647357623891434914179438417793174120110256645061614168520739417742738579160333625469805025882283616415349033184424473482016712548509063343721115519917610879040236609908507473167932125304901248790544442504018908734355346857001870197522432\n", + "6078153291570505049950071276536638079404318120619847471539261205157450642348546168006770394132550721035068726296830713560389041699075758033545794462842837124927197605659660657814206393320816342070822997305553394052957504523655639148369650298525306301897561822259909700294109249193992132082636963801030910844946591834474977036099501761933577693294715247782869828358876835586348240220513290123228337041478835485477158320667250939610051764567232830698066368848946964033425097018126687442231039835221758080473219817014946335864250609802497581088885008037817468710693714003740395044864\n", + "12156306583141010099900142553073276158808636241239694943078522410314901284697092336013540788265101442070137452593661427120778083398151516067091588925685674249854395211319321315628412786641632684141645994611106788105915009047311278296739300597050612603795123644519819400588218498387984264165273927602061821689893183668949954072199003523867155386589430495565739656717753671172696480441026580246456674082957670970954316641334501879220103529134465661396132737697893928066850194036253374884462079670443516160946439634029892671728501219604995162177770016075634937421387428007480790089728\n", + "24312613166282020199800285106146552317617272482479389886157044820629802569394184672027081576530202884140274905187322854241556166796303032134183177851371348499708790422638642631256825573283265368283291989222213576211830018094622556593478601194101225207590247289039638801176436996775968528330547855204123643379786367337899908144398007047734310773178860991131479313435507342345392960882053160492913348165915341941908633282669003758440207058268931322792265475395787856133700388072506749768924159340887032321892879268059785343457002439209990324355540032151269874842774856014961580179456\n", + "48625226332564040399600570212293104635234544964958779772314089641259605138788369344054163153060405768280549810374645708483112333592606064268366355702742696999417580845277285262513651146566530736566583978444427152423660036189245113186957202388202450415180494578079277602352873993551937056661095710408247286759572734675799816288796014095468621546357721982262958626871014684690785921764106320985826696331830683883817266565338007516880414116537862645584530950791575712267400776145013499537848318681774064643785758536119570686914004878419980648711080064302539749685549712029923160358912\n", + "97250452665128080799201140424586209270469089929917559544628179282519210277576738688108326306120811536561099620749291416966224667185212128536732711405485393998835161690554570525027302293133061473133167956888854304847320072378490226373914404776404900830360989156158555204705747987103874113322191420816494573519145469351599632577592028190937243092715443964525917253742029369381571843528212641971653392663661367767634533130676015033760828233075725291169061901583151424534801552290026999075696637363548129287571517072239141373828009756839961297422160128605079499371099424059846320717824\n", + "194500905330256161598402280849172418540938179859835119089256358565038420555153477376216652612241623073122199241498582833932449334370424257073465422810970787997670323381109141050054604586266122946266335913777708609694640144756980452747828809552809801660721978312317110409411495974207748226644382841632989147038290938703199265155184056381874486185430887929051834507484058738763143687056425283943306785327322735535269066261352030067521656466151450582338123803166302849069603104580053998151393274727096258575143034144478282747656019513679922594844320257210158998742198848119692641435648\n", + "389001810660512323196804561698344837081876359719670238178512717130076841110306954752433305224483246146244398482997165667864898668740848514146930845621941575995340646762218282100109209172532245892532671827555417219389280289513960905495657619105619603321443956624634220818822991948415496453288765683265978294076581877406398530310368112763748972370861775858103669014968117477526287374112850567886613570654645471070538132522704060135043312932302901164676247606332605698139206209160107996302786549454192517150286068288956565495312039027359845189688640514420317997484397696239385282871296\n", + "778003621321024646393609123396689674163752719439340476357025434260153682220613909504866610448966492292488796965994331335729797337481697028293861691243883151990681293524436564200218418345064491785065343655110834438778560579027921810991315238211239206642887913249268441637645983896830992906577531366531956588153163754812797060620736225527497944741723551716207338029936234955052574748225701135773227141309290942141076265045408120270086625864605802329352495212665211396278412418320215992605573098908385034300572136577913130990624078054719690379377281028840635994968795392478770565742592\n", + "1556007242642049292787218246793379348327505438878680952714050868520307364441227819009733220897932984584977593931988662671459594674963394056587723382487766303981362587048873128400436836690128983570130687310221668877557121158055843621982630476422478413285775826498536883275291967793661985813155062733063913176306327509625594121241472451054995889483447103432414676059872469910105149496451402271546454282618581884282152530090816240540173251729211604658704990425330422792556824836640431985211146197816770068601144273155826261981248156109439380758754562057681271989937590784957541131485184\n", + "3112014485284098585574436493586758696655010877757361905428101737040614728882455638019466441795865969169955187863977325342919189349926788113175446764975532607962725174097746256800873673380257967140261374620443337755114242316111687243965260952844956826571551652997073766550583935587323971626310125466127826352612655019251188242482944902109991778966894206864829352119744939820210298992902804543092908565237163768564305060181632481080346503458423209317409980850660845585113649673280863970422292395633540137202288546311652523962496312218878761517509124115362543979875181569915082262970368\n", + "6224028970568197171148872987173517393310021755514723810856203474081229457764911276038932883591731938339910375727954650685838378699853576226350893529951065215925450348195492513601747346760515934280522749240886675510228484632223374487930521905689913653143103305994147533101167871174647943252620250932255652705225310038502376484965889804219983557933788413729658704239489879640420597985805609086185817130474327537128610120363264962160693006916846418634819961701321691170227299346561727940844584791267080274404577092623305047924992624437757523035018248230725087959750363139830164525940736\n", + "12448057941136394342297745974347034786620043511029447621712406948162458915529822552077865767183463876679820751455909301371676757399707152452701787059902130431850900696390985027203494693521031868561045498481773351020456969264446748975861043811379827306286206611988295066202335742349295886505240501864511305410450620077004752969931779608439967115867576827459317408478979759280841195971611218172371634260948655074257220240726529924321386013833692837269639923402643382340454598693123455881689169582534160548809154185246610095849985248875515046070036496461450175919500726279660329051881472\n", + "24896115882272788684595491948694069573240087022058895243424813896324917831059645104155731534366927753359641502911818602743353514799414304905403574119804260863701801392781970054406989387042063737122090996963546702040913938528893497951722087622759654612572413223976590132404671484698591773010481003729022610820901240154009505939863559216879934231735153654918634816957959518561682391943222436344743268521897310148514440481453059848642772027667385674539279846805286764680909197386246911763378339165068321097618308370493220191699970497751030092140072992922900351839001452559320658103762944\n", + "49792231764545577369190983897388139146480174044117790486849627792649835662119290208311463068733855506719283005823637205486707029598828609810807148239608521727403602785563940108813978774084127474244181993927093404081827877057786995903444175245519309225144826447953180264809342969397183546020962007458045221641802480308019011879727118433759868463470307309837269633915919037123364783886444872689486537043794620297028880962906119697285544055334771349078559693610573529361818394772493823526756678330136642195236616740986440383399940995502060184280145985845800703678002905118641316207525888\n", + "99584463529091154738381967794776278292960348088235580973699255585299671324238580416622926137467711013438566011647274410973414059197657219621614296479217043454807205571127880217627957548168254948488363987854186808163655754115573991806888350491038618450289652895906360529618685938794367092041924014916090443283604960616038023759454236867519736926940614619674539267831838074246729567772889745378973074087589240594057761925812239394571088110669542698157119387221147058723636789544987647053513356660273284390473233481972880766799881991004120368560291971691601407356005810237282632415051776\n", + "199168927058182309476763935589552556585920696176471161947398511170599342648477160833245852274935422026877132023294548821946828118395314439243228592958434086909614411142255760435255915096336509896976727975708373616327311508231147983613776700982077236900579305791812721059237371877588734184083848029832180886567209921232076047518908473735039473853881229239349078535663676148493459135545779490757946148175178481188115523851624478789142176221339085396314238774442294117447273579089975294107026713320546568780946466963945761533599763982008240737120583943383202814712011620474565264830103552\n", + "398337854116364618953527871179105113171841392352942323894797022341198685296954321666491704549870844053754264046589097643893656236790628878486457185916868173819228822284511520870511830192673019793953455951416747232654623016462295967227553401964154473801158611583625442118474743755177468368167696059664361773134419842464152095037816947470078947707762458478698157071327352296986918271091558981515892296350356962376231047703248957578284352442678170792628477548884588234894547158179950588214053426641093137561892933927891523067199527964016481474241167886766405629424023240949130529660207104\n", + "796675708232729237907055742358210226343682784705884647789594044682397370593908643332983409099741688107508528093178195287787312473581257756972914371833736347638457644569023041741023660385346039587906911902833494465309246032924591934455106803928308947602317223167250884236949487510354936736335392119328723546268839684928304190075633894940157895415524916957396314142654704593973836542183117963031784592700713924752462095406497915156568704885356341585256955097769176469789094316359901176428106853282186275123785867855783046134399055928032962948482335773532811258848046481898261059320414208\n", + "1593351416465458475814111484716420452687365569411769295579188089364794741187817286665966818199483376215017056186356390575574624947162515513945828743667472695276915289138046083482047320770692079175813823805666988930618492065849183868910213607856617895204634446334501768473898975020709873472670784238657447092537679369856608380151267789880315790831049833914792628285309409187947673084366235926063569185401427849504924190812995830313137409770712683170513910195538352939578188632719802352856213706564372550247571735711566092268798111856065925896964671547065622517696092963796522118640828416\n", + "3186702832930916951628222969432840905374731138823538591158376178729589482375634573331933636398966752430034112372712781151149249894325031027891657487334945390553830578276092166964094641541384158351627647611333977861236984131698367737820427215713235790409268892669003536947797950041419746945341568477314894185075358739713216760302535579760631581662099667829585256570618818375895346168732471852127138370802855699009848381625991660626274819541425366341027820391076705879156377265439604705712427413128745100495143471423132184537596223712131851793929343094131245035392185927593044237281656832\n", + "6373405665861833903256445938865681810749462277647077182316752357459178964751269146663867272797933504860068224745425562302298499788650062055783314974669890781107661156552184333928189283082768316703255295222667955722473968263396735475640854431426471580818537785338007073895595900082839493890683136954629788370150717479426433520605071159521263163324199335659170513141237636751790692337464943704254276741605711398019696763251983321252549639082850732682055640782153411758312754530879209411424854826257490200990286942846264369075192447424263703587858686188262490070784371855186088474563313664\n", + "12746811331723667806512891877731363621498924555294154364633504714918357929502538293327734545595867009720136449490851124604596999577300124111566629949339781562215322313104368667856378566165536633406510590445335911444947936526793470951281708862852943161637075570676014147791191800165678987781366273909259576740301434958852867041210142319042526326648398671318341026282475273503581384674929887408508553483211422796039393526503966642505099278165701465364111281564306823516625509061758418822849709652514980401980573885692528738150384894848527407175717372376524980141568743710372176949126627328\n", + "25493622663447335613025783755462727242997849110588308729267009429836715859005076586655469091191734019440272898981702249209193999154600248223133259898679563124430644626208737335712757132331073266813021180890671822889895873053586941902563417725705886323274151141352028295582383600331357975562732547818519153480602869917705734082420284638085052653296797342636682052564950547007162769349859774817017106966422845592078787053007933285010198556331402930728222563128613647033251018123516837645699419305029960803961147771385057476300769789697054814351434744753049960283137487420744353898253254656\n", + "50987245326894671226051567510925454485995698221176617458534018859673431718010153173310938182383468038880545797963404498418387998309200496446266519797359126248861289252417474671425514264662146533626042361781343645779791746107173883805126835451411772646548302282704056591164767200662715951125465095637038306961205739835411468164840569276170105306593594685273364105129901094014325538699719549634034213932845691184157574106015866570020397112662805861456445126257227294066502036247033675291398838610059921607922295542770114952601539579394109628702869489506099920566274974841488707796506509312\n", + "101974490653789342452103135021850908971991396442353234917068037719346863436020306346621876364766936077761091595926808996836775996618400992892533039594718252497722578504834949342851028529324293067252084723562687291559583492214347767610253670902823545293096604565408113182329534401325431902250930191274076613922411479670822936329681138552340210613187189370546728210259802188028651077399439099268068427865691382368315148212031733140040794225325611722912890252514454588133004072494067350582797677220119843215844591085540229905203079158788219257405738979012199841132549949682977415593013018624\n", + "203948981307578684904206270043701817943982792884706469834136075438693726872040612693243752729533872155522183191853617993673551993236801985785066079189436504995445157009669898685702057058648586134504169447125374583119166984428695535220507341805647090586193209130816226364659068802650863804501860382548153227844822959341645872659362277104680421226374378741093456420519604376057302154798878198536136855731382764736630296424063466280081588450651223445825780505028909176266008144988134701165595354440239686431689182171080459810406158317576438514811477958024399682265099899365954831186026037248\n", + "407897962615157369808412540087403635887965585769412939668272150877387453744081225386487505459067744311044366383707235987347103986473603971570132158378873009990890314019339797371404114117297172269008338894250749166238333968857391070441014683611294181172386418261632452729318137605301727609003720765096306455689645918683291745318724554209360842452748757482186912841039208752114604309597756397072273711462765529473260592848126932560163176901302446891651561010057818352532016289976269402331190708880479372863378364342160919620812316635152877029622955916048799364530199798731909662372052074496\n", + "815795925230314739616825080174807271775931171538825879336544301754774907488162450772975010918135488622088732767414471974694207972947207943140264316757746019981780628038679594742808228234594344538016677788501498332476667937714782140882029367222588362344772836523264905458636275210603455218007441530192612911379291837366583490637449108418721684905497514964373825682078417504229208619195512794144547422925531058946521185696253865120326353802604893783303122020115636705064032579952538804662381417760958745726756728684321839241624633270305754059245911832097598729060399597463819324744104148992\n", + "1631591850460629479233650160349614543551862343077651758673088603509549814976324901545950021836270977244177465534828943949388415945894415886280528633515492039963561256077359189485616456469188689076033355577002996664953335875429564281764058734445176724689545673046529810917272550421206910436014883060385225822758583674733166981274898216837443369810995029928747651364156835008458417238391025588289094845851062117893042371392507730240652707605209787566606244040231273410128065159905077609324762835521917491453513457368643678483249266540611508118491823664195197458120799194927638649488208297984\n", + "3263183700921258958467300320699229087103724686155303517346177207019099629952649803091900043672541954488354931069657887898776831891788831772561057267030984079927122512154718378971232912938377378152066711154005993329906671750859128563528117468890353449379091346093059621834545100842413820872029766120770451645517167349466333962549796433674886739621990059857495302728313670016916834476782051176578189691702124235786084742785015460481305415210419575133212488080462546820256130319810155218649525671043834982907026914737287356966498533081223016236983647328390394916241598389855277298976416595968\n", + "6526367401842517916934600641398458174207449372310607034692354414038199259905299606183800087345083908976709862139315775797553663783577663545122114534061968159854245024309436757942465825876754756304133422308011986659813343501718257127056234937780706898758182692186119243669090201684827641744059532241540903291034334698932667925099592867349773479243980119714990605456627340033833668953564102353156379383404248471572169485570030920962610830420839150266424976160925093640512260639620310437299051342087669965814053829474574713932997066162446032473967294656780789832483196779710554597952833191936\n", + "13052734803685035833869201282796916348414898744621214069384708828076398519810599212367600174690167817953419724278631551595107327567155327090244229068123936319708490048618873515884931651753509512608266844616023973319626687003436514254112469875561413797516365384372238487338180403369655283488119064483081806582068669397865335850199185734699546958487960239429981210913254680067667337907128204706312758766808496943144338971140061841925221660841678300532849952321850187281024521279240620874598102684175339931628107658949149427865994132324892064947934589313561579664966393559421109195905666383872\n", + "26105469607370071667738402565593832696829797489242428138769417656152797039621198424735200349380335635906839448557263103190214655134310654180488458136247872639416980097237747031769863303507019025216533689232047946639253374006873028508224939751122827595032730768744476974676360806739310566976238128966163613164137338795730671700398371469399093916975920478859962421826509360135334675814256409412625517533616993886288677942280123683850443321683356601065699904643700374562049042558481241749196205368350679863256215317898298855731988264649784129895869178627123159329932787118842218391811332767744\n", + "52210939214740143335476805131187665393659594978484856277538835312305594079242396849470400698760671271813678897114526206380429310268621308360976916272495745278833960194475494063539726607014038050433067378464095893278506748013746057016449879502245655190065461537488953949352721613478621133952476257932327226328274677591461343400796742938798187833951840957719924843653018720270669351628512818825251035067233987772577355884560247367700886643366713202131399809287400749124098085116962483498392410736701359726512430635796597711463976529299568259791738357254246318659865574237684436783622665535488\n", + "104421878429480286670953610262375330787319189956969712555077670624611188158484793698940801397521342543627357794229052412760858620537242616721953832544991490557667920388950988127079453214028076100866134756928191786557013496027492114032899759004491310380130923074977907898705443226957242267904952515864654452656549355182922686801593485877596375667903681915439849687306037440541338703257025637650502070134467975545154711769120494735401773286733426404262799618574801498248196170233924966996784821473402719453024861271593195422927953058599136519583476714508492637319731148475368873567245331070976\n", + "208843756858960573341907220524750661574638379913939425110155341249222376316969587397881602795042685087254715588458104825521717241074485233443907665089982981115335840777901976254158906428056152201732269513856383573114026992054984228065799518008982620760261846149955815797410886453914484535809905031729308905313098710365845373603186971755192751335807363830879699374612074881082677406514051275301004140268935951090309423538240989470803546573466852808525599237149602996496392340467849933993569642946805438906049722543186390845855906117198273039166953429016985274639462296950737747134490662141952\n", + "417687513717921146683814441049501323149276759827878850220310682498444752633939174795763205590085370174509431176916209651043434482148970466887815330179965962230671681555803952508317812856112304403464539027712767146228053984109968456131599036017965241520523692299911631594821772907828969071619810063458617810626197420731690747206373943510385502671614727661759398749224149762165354813028102550602008280537871902180618847076481978941607093146933705617051198474299205992992784680935699867987139285893610877812099445086372781691711812234396546078333906858033970549278924593901475494268981324283904\n", + "835375027435842293367628882099002646298553519655757700440621364996889505267878349591526411180170740349018862353832419302086868964297940933775630660359931924461343363111607905016635625712224608806929078055425534292456107968219936912263198072035930483041047384599823263189643545815657938143239620126917235621252394841463381494412747887020771005343229455323518797498448299524330709626056205101204016561075743804361237694152963957883214186293867411234102396948598411985985569361871399735974278571787221755624198890172745563383423624468793092156667813716067941098557849187802950988537962648567808\n", + "1670750054871684586735257764198005292597107039311515400881242729993779010535756699183052822360341480698037724707664838604173737928595881867551261320719863848922686726223215810033271251424449217613858156110851068584912215936439873824526396144071860966082094769199646526379287091631315876286479240253834471242504789682926762988825495774041542010686458910647037594996896599048661419252112410202408033122151487608722475388305927915766428372587734822468204793897196823971971138723742799471948557143574443511248397780345491126766847248937586184313335627432135882197115698375605901977075925297135616\n", + "3341500109743369173470515528396010585194214078623030801762485459987558021071513398366105644720682961396075449415329677208347475857191763735102522641439727697845373452446431620066542502848898435227716312221702137169824431872879747649052792288143721932164189538399293052758574183262631752572958480507668942485009579365853525977650991548083084021372917821294075189993793198097322838504224820404816066244302975217444950776611855831532856745175469644936409587794393647943942277447485598943897114287148887022496795560690982253533694497875172368626671254864271764394231396751211803954151850594271232\n", + "6683000219486738346941031056792021170388428157246061603524970919975116042143026796732211289441365922792150898830659354416694951714383527470205045282879455395690746904892863240133085005697796870455432624443404274339648863745759495298105584576287443864328379076798586105517148366525263505145916961015337884970019158731707051955301983096166168042745835642588150379987586396194645677008449640809632132488605950434889901553223711663065713490350939289872819175588787295887884554894971197887794228574297774044993591121381964507067388995750344737253342509728543528788462793502423607908303701188542464\n", + "13366000438973476693882062113584042340776856314492123207049941839950232084286053593464422578882731845584301797661318708833389903428767054940410090565758910791381493809785726480266170011395593740910865248886808548679297727491518990596211169152574887728656758153597172211034296733050527010291833922030675769940038317463414103910603966192332336085491671285176300759975172792389291354016899281619264264977211900869779803106447423326131426980701878579745638351177574591775769109789942395775588457148595548089987182242763929014134777991500689474506685019457087057576925587004847215816607402377084928\n", + "26732000877946953387764124227168084681553712628984246414099883679900464168572107186928845157765463691168603595322637417666779806857534109880820181131517821582762987619571452960532340022791187481821730497773617097358595454983037981192422338305149775457313516307194344422068593466101054020583667844061351539880076634926828207821207932384664672170983342570352601519950345584778582708033798563238528529954423801739559606212894846652262853961403757159491276702355149183551538219579884791551176914297191096179974364485527858028269555983001378949013370038914174115153851174009694431633214804754169856\n", + "53464001755893906775528248454336169363107425257968492828199767359800928337144214373857690315530927382337207190645274835333559613715068219761640362263035643165525975239142905921064680045582374963643460995547234194717190909966075962384844676610299550914627032614388688844137186932202108041167335688122703079760153269853656415642415864769329344341966685140705203039900691169557165416067597126477057059908847603479119212425789693304525707922807514318982553404710298367103076439159769583102353828594382192359948728971055716056539111966002757898026740077828348230307702348019388863266429609508339712\n", + "106928003511787813551056496908672338726214850515936985656399534719601856674288428747715380631061854764674414381290549670667119227430136439523280724526071286331051950478285811842129360091164749927286921991094468389434381819932151924769689353220599101829254065228777377688274373864404216082334671376245406159520306539707312831284831729538658688683933370281410406079801382339114330832135194252954114119817695206958238424851579386609051415845615028637965106809420596734206152878319539166204707657188764384719897457942111432113078223932005515796053480155656696460615404696038777726532859219016679424\n", + "213856007023575627102112993817344677452429701031873971312799069439203713348576857495430761262123709529348828762581099341334238454860272879046561449052142572662103900956571623684258720182329499854573843982188936778868763639864303849539378706441198203658508130457554755376548747728808432164669342752490812319040613079414625662569663459077317377367866740562820812159602764678228661664270388505908228239635390413916476849703158773218102831691230057275930213618841193468412305756639078332409415314377528769439794915884222864226156447864011031592106960311313392921230809392077555453065718438033358848\n", + "427712014047151254204225987634689354904859402063747942625598138878407426697153714990861522524247419058697657525162198682668476909720545758093122898104285145324207801913143247368517440364658999709147687964377873557737527279728607699078757412882396407317016260915109510753097495457616864329338685504981624638081226158829251325139326918154634754735733481125641624319205529356457323328540777011816456479270780827832953699406317546436205663382460114551860427237682386936824611513278156664818830628755057538879589831768445728452312895728022063184213920622626785842461618784155110906131436876066717696\n", + "855424028094302508408451975269378709809718804127495885251196277756814853394307429981723045048494838117395315050324397365336953819441091516186245796208570290648415603826286494737034880729317999418295375928755747115475054559457215398157514825764792814634032521830219021506194990915233728658677371009963249276162452317658502650278653836309269509471466962251283248638411058712914646657081554023632912958541561655665907398812635092872411326764920229103720854475364773873649223026556313329637661257510115077759179663536891456904625791456044126368427841245253571684923237568310221812262873752133435392\n", + "1710848056188605016816903950538757419619437608254991770502392555513629706788614859963446090096989676234790630100648794730673907638882183032372491592417140581296831207652572989474069761458635998836590751857511494230950109118914430796315029651529585629268065043660438043012389981830467457317354742019926498552324904635317005300557307672618539018942933924502566497276822117425829293314163108047265825917083123311331814797625270185744822653529840458207441708950729547747298446053112626659275322515020230155518359327073782913809251582912088252736855682490507143369846475136620443624525747504266870784\n", + "3421696112377210033633807901077514839238875216509983541004785111027259413577229719926892180193979352469581260201297589461347815277764366064744983184834281162593662415305145978948139522917271997673181503715022988461900218237828861592630059303059171258536130087320876086024779963660934914634709484039852997104649809270634010601114615345237078037885867849005132994553644234851658586628326216094531651834166246622663629595250540371489645307059680916414883417901459095494596892106225253318550645030040460311036718654147565827618503165824176505473711364981014286739692950273240887249051495008533741568\n", + "6843392224754420067267615802155029678477750433019967082009570222054518827154459439853784360387958704939162520402595178922695630555528732129489966369668562325187324830610291957896279045834543995346363007430045976923800436475657723185260118606118342517072260174641752172049559927321869829269418968079705994209299618541268021202229230690474156075771735698010265989107288469703317173256652432189063303668332493245327259190501080742979290614119361832829766835802918190989193784212450506637101290060080920622073437308295131655237006331648353010947422729962028573479385900546481774498102990017067483136\n", + "13686784449508840134535231604310059356955500866039934164019140444109037654308918879707568720775917409878325040805190357845391261111057464258979932739337124650374649661220583915792558091669087990692726014860091953847600872951315446370520237212236685034144520349283504344099119854643739658538837936159411988418599237082536042404458461380948312151543471396020531978214576939406634346513304864378126607336664986490654518381002161485958581228238723665659533671605836381978387568424901013274202580120161841244146874616590263310474012663296706021894845459924057146958771801092963548996205980034134966272\n", + "27373568899017680269070463208620118713911001732079868328038280888218075308617837759415137441551834819756650081610380715690782522222114928517959865478674249300749299322441167831585116183338175981385452029720183907695201745902630892741040474424473370068289040698567008688198239709287479317077675872318823976837198474165072084808916922761896624303086942792041063956429153878813268693026609728756253214673329972981309036762004322971917162456477447331319067343211672763956775136849802026548405160240323682488293749233180526620948025326593412043789690919848114293917543602185927097992411960068269932544\n", + "54747137798035360538140926417240237427822003464159736656076561776436150617235675518830274883103669639513300163220761431381565044444229857035919730957348498601498598644882335663170232366676351962770904059440367815390403491805261785482080948848946740136578081397134017376396479418574958634155351744637647953674396948330144169617833845523793248606173885584082127912858307757626537386053219457512506429346659945962618073524008645943834324912954894662638134686423345527913550273699604053096810320480647364976587498466361053241896050653186824087579381839696228587835087204371854195984823920136539865088\n", + "109494275596070721076281852834480474855644006928319473312153123552872301234471351037660549766207339279026600326441522862763130088888459714071839461914696997202997197289764671326340464733352703925541808118880735630780806983610523570964161897697893480273156162794268034752792958837149917268310703489275295907348793896660288339235667691047586497212347771168164255825716615515253074772106438915025012858693319891925236147048017291887668649825909789325276269372846691055827100547399208106193620640961294729953174996932722106483792101306373648175158763679392457175670174408743708391969647840273079730176\n", + "218988551192141442152563705668960949711288013856638946624306247105744602468942702075321099532414678558053200652883045725526260177776919428143678923829393994405994394579529342652680929466705407851083616237761471261561613967221047141928323795395786960546312325588536069505585917674299834536621406978550591814697587793320576678471335382095172994424695542336328511651433231030506149544212877830050025717386639783850472294096034583775337299651819578650552538745693382111654201094798416212387241281922589459906349993865444212967584202612747296350317527358784914351340348817487416783939295680546159460352\n", + "437977102384282884305127411337921899422576027713277893248612494211489204937885404150642199064829357116106401305766091451052520355553838856287357847658787988811988789159058685305361858933410815702167232475522942523123227934442094283856647590791573921092624651177072139011171835348599669073242813957101183629395175586641153356942670764190345988849391084672657023302866462061012299088425755660100051434773279567700944588192069167550674599303639157301105077491386764223308402189596832424774482563845178919812699987730888425935168405225494592700635054717569828702680697634974833567878591361092318920704\n", + "875954204768565768610254822675843798845152055426555786497224988422978409875770808301284398129658714232212802611532182902105040711107677712574715695317575977623977578318117370610723717866821631404334464951045885046246455868884188567713295181583147842185249302354144278022343670697199338146485627914202367258790351173282306713885341528380691977698782169345314046605732924122024598176851511320200102869546559135401889176384138335101349198607278314602210154982773528446616804379193664849548965127690357839625399975461776851870336810450989185401270109435139657405361395269949667135757182722184637841408\n", + "1751908409537131537220509645351687597690304110853111572994449976845956819751541616602568796259317428464425605223064365804210081422215355425149431390635151955247955156636234741221447435733643262808668929902091770092492911737768377135426590363166295684370498604708288556044687341394398676292971255828404734517580702346564613427770683056761383955397564338690628093211465848244049196353703022640400205739093118270803778352768276670202698397214556629204420309965547056893233608758387329699097930255380715679250799950923553703740673620901978370802540218870279314810722790539899334271514365444369275682816\n", + "3503816819074263074441019290703375195380608221706223145988899953691913639503083233205137592518634856928851210446128731608420162844430710850298862781270303910495910313272469482442894871467286525617337859804183540184985823475536754270853180726332591368740997209416577112089374682788797352585942511656809469035161404693129226855541366113522767910795128677381256186422931696488098392707406045280800411478186236541607556705536553340405396794429113258408840619931094113786467217516774659398195860510761431358501599901847107407481347241803956741605080437740558629621445581079798668543028730888738551365632\n", + "7007633638148526148882038581406750390761216443412446291977799907383827279006166466410275185037269713857702420892257463216840325688861421700597725562540607820991820626544938964885789742934573051234675719608367080369971646951073508541706361452665182737481994418833154224178749365577594705171885023313618938070322809386258453711082732227045535821590257354762512372845863392976196785414812090561600822956372473083215113411073106680810793588858226516817681239862188227572934435033549318796391721021522862717003199803694214814962694483607913483210160875481117259242891162159597337086057461777477102731264\n", + "14015267276297052297764077162813500781522432886824892583955599814767654558012332932820550370074539427715404841784514926433680651377722843401195451125081215641983641253089877929771579485869146102469351439216734160739943293902147017083412722905330365474963988837666308448357498731155189410343770046627237876140645618772516907422165464454091071643180514709525024745691726785952393570829624181123201645912744946166430226822146213361621587177716453033635362479724376455145868870067098637592783442043045725434006399607388429629925388967215826966420321750962234518485782324319194674172114923554954205462528\n", + "28030534552594104595528154325627001563044865773649785167911199629535309116024665865641100740149078855430809683569029852867361302755445686802390902250162431283967282506179755859543158971738292204938702878433468321479886587804294034166825445810660730949927977675332616896714997462310378820687540093254475752281291237545033814844330928908182143286361029419050049491383453571904787141659248362246403291825489892332860453644292426723243174355432906067270724959448752910291737740134197275185566884086091450868012799214776859259850777934431653932840643501924469036971564648638389348344229847109908410925056\n", + "56061069105188209191056308651254003126089731547299570335822399259070618232049331731282201480298157710861619367138059705734722605510891373604781804500324862567934565012359511719086317943476584409877405756866936642959773175608588068333650891621321461899855955350665233793429994924620757641375080186508951504562582475090067629688661857816364286572722058838100098982766907143809574283318496724492806583650979784665720907288584853446486348710865812134541449918897505820583475480268394550371133768172182901736025598429553718519701555868863307865681287003848938073943129297276778696688459694219816821850112\n", + "112122138210376418382112617302508006252179463094599140671644798518141236464098663462564402960596315421723238734276119411469445211021782747209563609000649725135869130024719023438172635886953168819754811513733873285919546351217176136667301783242642923799711910701330467586859989849241515282750160373017903009125164950180135259377323715632728573145444117676200197965533814287619148566636993448985613167301959569331441814577169706892972697421731624269082899837795011641166950960536789100742267536344365803472051196859107437039403111737726615731362574007697876147886258594553557393376919388439633643700224\n", + "224244276420752836764225234605016012504358926189198281343289597036282472928197326925128805921192630843446477468552238822938890422043565494419127218001299450271738260049438046876345271773906337639509623027467746571839092702434352273334603566485285847599423821402660935173719979698483030565500320746035806018250329900360270518754647431265457146290888235352400395931067628575238297133273986897971226334603919138662883629154339413785945394843463248538165799675590023282333901921073578201484535072688731606944102393718214874078806223475453231462725148015395752295772517189107114786753838776879267287400448\n", + "448488552841505673528450469210032025008717852378396562686579194072564945856394653850257611842385261686892954937104477645877780844087130988838254436002598900543476520098876093752690543547812675279019246054935493143678185404868704546669207132970571695198847642805321870347439959396966061131000641492071612036500659800720541037509294862530914292581776470704800791862135257150476594266547973795942452669207838277325767258308678827571890789686926497076331599351180046564667803842147156402969070145377463213888204787436429748157612446950906462925450296030791504591545034378214229573507677553758534574800896\n", + "896977105683011347056900938420064050017435704756793125373158388145129891712789307700515223684770523373785909874208955291755561688174261977676508872005197801086953040197752187505381087095625350558038492109870986287356370809737409093338414265941143390397695285610643740694879918793932122262001282984143224073001319601441082075018589725061828585163552941409601583724270514300953188533095947591884905338415676554651534516617357655143781579373852994152663198702360093129335607684294312805938140290754926427776409574872859496315224893901812925850900592061583009183090068756428459147015355107517069149601792\n", + "1793954211366022694113801876840128100034871409513586250746316776290259783425578615401030447369541046747571819748417910583511123376348523955353017744010395602173906080395504375010762174191250701116076984219741972574712741619474818186676828531882286780795390571221287481389759837587864244524002565968286448146002639202882164150037179450123657170327105882819203167448541028601906377066191895183769810676831353109303069033234715310287563158747705988305326397404720186258671215368588625611876280581509852855552819149745718992630449787803625851701801184123166018366180137512856918294030710215034138299203584\n", + "3587908422732045388227603753680256200069742819027172501492633552580519566851157230802060894739082093495143639496835821167022246752697047910706035488020791204347812160791008750021524348382501402232153968439483945149425483238949636373353657063764573561590781142442574962779519675175728489048005131936572896292005278405764328300074358900247314340654211765638406334897082057203812754132383790367539621353662706218606138066469430620575126317495411976610652794809440372517342430737177251223752561163019705711105638299491437985260899575607251703403602368246332036732360275025713836588061420430068276598407168\n", + "7175816845464090776455207507360512400139485638054345002985267105161039133702314461604121789478164186990287278993671642334044493505394095821412070976041582408695624321582017500043048696765002804464307936878967890298850966477899272746707314127529147123181562284885149925559039350351456978096010263873145792584010556811528656600148717800494628681308423531276812669794164114407625508264767580735079242707325412437212276132938861241150252634990823953221305589618880745034684861474354502447505122326039411422211276598982875970521799151214503406807204736492664073464720550051427673176122840860136553196814336\n", + "14351633690928181552910415014721024800278971276108690005970534210322078267404628923208243578956328373980574557987343284668088987010788191642824141952083164817391248643164035000086097393530005608928615873757935780597701932955798545493414628255058294246363124569770299851118078700702913956192020527746291585168021113623057313200297435600989257362616847062553625339588328228815251016529535161470158485414650824874424552265877722482300505269981647906442611179237761490069369722948709004895010244652078822844422553197965751941043598302429006813614409472985328146929441100102855346352245681720273106393628672\n", + "28703267381856363105820830029442049600557942552217380011941068420644156534809257846416487157912656747961149115974686569336177974021576383285648283904166329634782497286328070000172194787060011217857231747515871561195403865911597090986829256510116588492726249139540599702236157401405827912384041055492583170336042227246114626400594871201978514725233694125107250679176656457630502033059070322940316970829301649748849104531755444964601010539963295812885222358475522980138739445897418009790020489304157645688845106395931503882087196604858013627228818945970656293858882200205710692704491363440546212787257344\n", + "57406534763712726211641660058884099201115885104434760023882136841288313069618515692832974315825313495922298231949373138672355948043152766571296567808332659269564994572656140000344389574120022435714463495031743122390807731823194181973658513020233176985452498279081199404472314802811655824768082110985166340672084454492229252801189742403957029450467388250214501358353312915261004066118140645880633941658603299497698209063510889929202021079926591625770444716951045960277478891794836019580040978608315291377690212791863007764174393209716027254457637891941312587717764400411421385408982726881092425574514688\n", + "114813069527425452423283320117768198402231770208869520047764273682576626139237031385665948631650626991844596463898746277344711896086305533142593135616665318539129989145312280000688779148240044871428926990063486244781615463646388363947317026040466353970904996558162398808944629605623311649536164221970332681344168908984458505602379484807914058900934776500429002716706625830522008132236281291761267883317206598995396418127021779858404042159853183251540889433902091920554957783589672039160081957216630582755380425583726015528348786419432054508915275783882625175435528800822842770817965453762184851149029376\n", + "229626139054850904846566640235536396804463540417739040095528547365153252278474062771331897263301253983689192927797492554689423792172611066285186271233330637078259978290624560001377558296480089742857853980126972489563230927292776727894634052080932707941809993116324797617889259211246623299072328443940665362688337817968917011204758969615828117801869553000858005433413251661044016264472562583522535766634413197990792836254043559716808084319706366503081778867804183841109915567179344078320163914433261165510760851167452031056697572838864109017830551567765250350871057601645685541635930907524369702298058752\n", + "459252278109701809693133280471072793608927080835478080191057094730306504556948125542663794526602507967378385855594985109378847584345222132570372542466661274156519956581249120002755116592960179485715707960253944979126461854585553455789268104161865415883619986232649595235778518422493246598144656887881330725376675635937834022409517939231656235603739106001716010866826503322088032528945125167045071533268826395981585672508087119433616168639412733006163557735608367682219831134358688156640327828866522331021521702334904062113395145677728218035661103135530500701742115203291371083271861815048739404596117504\n", + "918504556219403619386266560942145587217854161670956160382114189460613009113896251085327589053205015934756771711189970218757695168690444265140745084933322548313039913162498240005510233185920358971431415920507889958252923709171106911578536208323730831767239972465299190471557036844986493196289313775762661450753351271875668044819035878463312471207478212003432021733653006644176065057890250334090143066537652791963171345016174238867232337278825466012327115471216735364439662268717376313280655657733044662043043404669808124226790291355456436071322206271061001403484230406582742166543723630097478809192235008\n", + "1837009112438807238772533121884291174435708323341912320764228378921226018227792502170655178106410031869513543422379940437515390337380888530281490169866645096626079826324996480011020466371840717942862831841015779916505847418342213823157072416647461663534479944930598380943114073689972986392578627551525322901506702543751336089638071756926624942414956424006864043467306013288352130115780500668180286133075305583926342690032348477734464674557650932024654230942433470728879324537434752626561311315466089324086086809339616248453580582710912872142644412542122002806968460813165484333087447260194957618384470016\n", + "3674018224877614477545066243768582348871416646683824641528456757842452036455585004341310356212820063739027086844759880875030780674761777060562980339733290193252159652649992960022040932743681435885725663682031559833011694836684427646314144833294923327068959889861196761886228147379945972785157255103050645803013405087502672179276143513853249884829912848013728086934612026576704260231561001336360572266150611167852685380064696955468929349115301864049308461884866941457758649074869505253122622630932178648172173618679232496907161165421825744285288825084244005613936921626330968666174894520389915236768940032\n", + "7348036449755228955090132487537164697742833293367649283056913515684904072911170008682620712425640127478054173689519761750061561349523554121125960679466580386504319305299985920044081865487362871771451327364063119666023389673368855292628289666589846654137919779722393523772456294759891945570314510206101291606026810175005344358552287027706499769659825696027456173869224053153408520463122002672721144532301222335705370760129393910937858698230603728098616923769733882915517298149739010506245245261864357296344347237358464993814322330843651488570577650168488011227873843252661937332349789040779830473537880064\n", + "14696072899510457910180264975074329395485666586735298566113827031369808145822340017365241424851280254956108347379039523500123122699047108242251921358933160773008638610599971840088163730974725743542902654728126239332046779346737710585256579333179693308275839559444787047544912589519783891140629020412202583212053620350010688717104574055412999539319651392054912347738448106306817040926244005345442289064602444671410741520258787821875717396461207456197233847539467765831034596299478021012490490523728714592688694474716929987628644661687302977141155300336976022455747686505323874664699578081559660947075760128\n", + "29392145799020915820360529950148658790971333173470597132227654062739616291644680034730482849702560509912216694758079047000246245398094216484503842717866321546017277221199943680176327461949451487085805309456252478664093558693475421170513158666359386616551679118889574095089825179039567782281258040824405166424107240700021377434209148110825999078639302784109824695476896212613634081852488010690884578129204889342821483040517575643751434792922414912394467695078935531662069192598956042024980981047457429185377388949433859975257289323374605954282310600673952044911495373010647749329399156163119321894151520256\n", + "58784291598041831640721059900297317581942666346941194264455308125479232583289360069460965699405121019824433389516158094000492490796188432969007685435732643092034554442399887360352654923898902974171610618912504957328187117386950842341026317332718773233103358237779148190179650358079135564562516081648810332848214481400042754868418296221651998157278605568219649390953792425227268163704976021381769156258409778685642966081035151287502869585844829824788935390157871063324138385197912084049961962094914858370754777898867719950514578646749211908564621201347904089822990746021295498658798312326238643788303040512\n", + "117568583196083663281442119800594635163885332693882388528910616250958465166578720138921931398810242039648866779032316188000984981592376865938015370871465286184069108884799774720705309847797805948343221237825009914656374234773901684682052634665437546466206716475558296380359300716158271129125032163297620665696428962800085509736836592443303996314557211136439298781907584850454536327409952042763538312516819557371285932162070302575005739171689659649577870780315742126648276770395824168099923924189829716741509555797735439901029157293498423817129242402695808179645981492042590997317596624652477287576606081024\n", + "235137166392167326562884239601189270327770665387764777057821232501916930333157440277843862797620484079297733558064632376001969963184753731876030741742930572368138217769599549441410619695595611896686442475650019829312748469547803369364105269330875092932413432951116592760718601432316542258250064326595241331392857925600171019473673184886607992629114422272878597563815169700909072654819904085527076625033639114742571864324140605150011478343379319299155741560631484253296553540791648336199847848379659433483019111595470879802058314586996847634258484805391616359291962984085181994635193249304954575153212162048\n", + "470274332784334653125768479202378540655541330775529554115642465003833860666314880555687725595240968158595467116129264752003939926369507463752061483485861144736276435539199098882821239391191223793372884951300039658625496939095606738728210538661750185864826865902233185521437202864633084516500128653190482662785715851200342038947346369773215985258228844545757195127630339401818145309639808171054153250067278229485143728648281210300022956686758638598311483121262968506593107081583296672399695696759318866966038223190941759604116629173993695268516969610783232718583925968170363989270386498609909150306424324096\n", + "940548665568669306251536958404757081311082661551059108231284930007667721332629761111375451190481936317190934232258529504007879852739014927504122966971722289472552871078398197765642478782382447586745769902600079317250993878191213477456421077323500371729653731804466371042874405729266169033000257306380965325571431702400684077894692739546431970516457689091514390255260678803636290619279616342108306500134556458970287457296562420600045913373517277196622966242525937013186214163166593344799391393518637733932076446381883519208233258347987390537033939221566465437167851936340727978540772997219818300612848648192\n", + "1881097331137338612503073916809514162622165323102118216462569860015335442665259522222750902380963872634381868464517059008015759705478029855008245933943444578945105742156796395531284957564764895173491539805200158634501987756382426954912842154647000743459307463608932742085748811458532338066000514612761930651142863404801368155789385479092863941032915378183028780510521357607272581238559232684216613000269112917940574914593124841200091826747034554393245932485051874026372428326333186689598782787037275467864152892763767038416466516695974781074067878443132930874335703872681455957081545994439636601225697296384\n", + "3762194662274677225006147833619028325244330646204236432925139720030670885330519044445501804761927745268763736929034118016031519410956059710016491867886889157890211484313592791062569915129529790346983079610400317269003975512764853909825684309294001486918614927217865484171497622917064676132001029225523861302285726809602736311578770958185727882065830756366057561021042715214545162477118465368433226000538225835881149829186249682400183653494069108786491864970103748052744856652666373379197565574074550935728305785527534076832933033391949562148135756886265861748671407745362911914163091988879273202451394592768\n", + "7524389324549354450012295667238056650488661292408472865850279440061341770661038088891003609523855490537527473858068236032063038821912119420032983735773778315780422968627185582125139830259059580693966159220800634538007951025529707819651368618588002973837229854435730968342995245834129352264002058451047722604571453619205472623157541916371455764131661512732115122042085430429090324954236930736866452001076451671762299658372499364800367306988138217572983729940207496105489713305332746758395131148149101871456611571055068153665866066783899124296271513772531723497342815490725823828326183977758546404902789185536\n", + "15048778649098708900024591334476113300977322584816945731700558880122683541322076177782007219047710981075054947716136472064126077643824238840065967471547556631560845937254371164250279660518119161387932318441601269076015902051059415639302737237176005947674459708871461936685990491668258704528004116902095445209142907238410945246315083832742911528263323025464230244084170860858180649908473861473732904002152903343524599316744998729600734613976276435145967459880414992210979426610665493516790262296298203742913223142110136307331732133567798248592543027545063446994685630981451647656652367955517092809805578371072\n", + "30097557298197417800049182668952226601954645169633891463401117760245367082644152355564014438095421962150109895432272944128252155287648477680131934943095113263121691874508742328500559321036238322775864636883202538152031804102118831278605474474352011895348919417742923873371980983336517409056008233804190890418285814476821890492630167665485823056526646050928460488168341721716361299816947722947465808004305806687049198633489997459201469227952552870291934919760829984421958853221330987033580524592596407485826446284220272614663464267135596497185086055090126893989371261962903295313304735911034185619611156742144\n", + "60195114596394835600098365337904453203909290339267782926802235520490734165288304711128028876190843924300219790864545888256504310575296955360263869886190226526243383749017484657001118642072476645551729273766405076304063608204237662557210948948704023790697838835485847746743961966673034818112016467608381780836571628953643780985260335330971646113053292101856920976336683443432722599633895445894931616008611613374098397266979994918402938455905105740583869839521659968843917706442661974067161049185192814971652892568440545229326928534271192994370172110180253787978742523925806590626609471822068371239222313484288\n", + "120390229192789671200196730675808906407818580678535565853604471040981468330576609422256057752381687848600439581729091776513008621150593910720527739772380453052486767498034969314002237284144953291103458547532810152608127216408475325114421897897408047581395677670971695493487923933346069636224032935216763561673143257907287561970520670661943292226106584203713841952673366886865445199267790891789863232017223226748196794533959989836805876911810211481167739679043319937687835412885323948134322098370385629943305785136881090458653857068542385988740344220360507575957485047851613181253218943644136742478444626968576\n", + "240780458385579342400393461351617812815637161357071131707208942081962936661153218844512115504763375697200879163458183553026017242301187821441055479544760906104973534996069938628004474568289906582206917095065620305216254432816950650228843795794816095162791355341943390986975847866692139272448065870433527123346286515814575123941041341323886584452213168407427683905346733773730890398535581783579726464034446453496393589067919979673611753823620422962335479358086639875375670825770647896268644196740771259886611570273762180917307714137084771977480688440721015151914970095703226362506437887288273484956889253937152\n", + "481560916771158684800786922703235625631274322714142263414417884163925873322306437689024231009526751394401758326916367106052034484602375642882110959089521812209947069992139877256008949136579813164413834190131240610432508865633901300457687591589632190325582710683886781973951695733384278544896131740867054246692573031629150247882082682647773168904426336814855367810693467547461780797071163567159452928068892906992787178135839959347223507647240845924670958716173279750751341651541295792537288393481542519773223140547524361834615428274169543954961376881442030303829940191406452725012875774576546969913778507874304\n", + "963121833542317369601573845406471251262548645428284526828835768327851746644612875378048462019053502788803516653832734212104068969204751285764221918179043624419894139984279754512017898273159626328827668380262481220865017731267802600915375183179264380651165421367773563947903391466768557089792263481734108493385146063258300495764165365295546337808852673629710735621386935094923561594142327134318905856137785813985574356271679918694447015294481691849341917432346559501502683303082591585074576786963085039546446281095048723669230856548339087909922753762884060607659880382812905450025751549153093939827557015748608\n", + "1926243667084634739203147690812942502525097290856569053657671536655703493289225750756096924038107005577607033307665468424208137938409502571528443836358087248839788279968559509024035796546319252657655336760524962441730035462535605201830750366358528761302330842735547127895806782933537114179584526963468216986770292126516600991528330730591092675617705347259421471242773870189847123188284654268637811712275571627971148712543359837388894030588963383698683834864693119003005366606165183170149153573926170079092892562190097447338461713096678175819845507525768121215319760765625810900051503098306187879655114031497216\n", + "3852487334169269478406295381625885005050194581713138107315343073311406986578451501512193848076214011155214066615330936848416275876819005143056887672716174497679576559937119018048071593092638505315310673521049924883460070925071210403661500732717057522604661685471094255791613565867074228359169053926936433973540584253033201983056661461182185351235410694518842942485547740379694246376569308537275623424551143255942297425086719674777788061177926767397367669729386238006010733212330366340298307147852340158185785124380194894676923426193356351639691015051536242430639521531251621800103006196612375759310228062994432\n", + "7704974668338538956812590763251770010100389163426276214630686146622813973156903003024387696152428022310428133230661873696832551753638010286113775345432348995359153119874238036096143186185277010630621347042099849766920141850142420807323001465434115045209323370942188511583227131734148456718338107853872867947081168506066403966113322922364370702470821389037685884971095480759388492753138617074551246849102286511884594850173439349555576122355853534794735339458772476012021466424660732680596614295704680316371570248760389789353846852386712703279382030103072484861279043062503243600206012393224751518620456125988864\n", + "15409949336677077913625181526503540020200778326852552429261372293245627946313806006048775392304856044620856266461323747393665103507276020572227550690864697990718306239748476072192286372370554021261242694084199699533840283700284841614646002930868230090418646741884377023166454263468296913436676215707745735894162337012132807932226645844728741404941642778075371769942190961518776985506277234149102493698204573023769189700346878699111152244711707069589470678917544952024042932849321465361193228591409360632743140497520779578707693704773425406558764060206144969722558086125006487200412024786449503037240912251977728\n", + "30819898673354155827250363053007080040401556653705104858522744586491255892627612012097550784609712089241712532922647494787330207014552041144455101381729395981436612479496952144384572744741108042522485388168399399067680567400569683229292005861736460180837293483768754046332908526936593826873352431415491471788324674024265615864453291689457482809883285556150743539884381923037553971012554468298204987396409146047538379400693757398222304489423414139178941357835089904048085865698642930722386457182818721265486280995041559157415387409546850813117528120412289939445116172250012974400824049572899006074481824503955456\n", + "61639797346708311654500726106014160080803113307410209717045489172982511785255224024195101569219424178483425065845294989574660414029104082288910202763458791962873224958993904288769145489482216085044970776336798798135361134801139366458584011723472920361674586967537508092665817053873187653746704862830982943576649348048531231728906583378914965619766571112301487079768763846075107942025108936596409974792818292095076758801387514796444608978846828278357882715670179808096171731397285861444772914365637442530972561990083118314830774819093701626235056240824579878890232344500025948801648099145798012148963649007910912\n", + "123279594693416623309001452212028320161606226614820419434090978345965023570510448048390203138438848356966850131690589979149320828058208164577820405526917583925746449917987808577538290978964432170089941552673597596270722269602278732917168023446945840723349173935075016185331634107746375307493409725661965887153298696097062463457813166757829931239533142224602974159537527692150215884050217873192819949585636584190153517602775029592889217957693656556715765431340359616192343462794571722889545828731274885061945123980166236629661549638187403252470112481649159757780464689000051897603296198291596024297927298015821824\n", + "246559189386833246618002904424056640323212453229640838868181956691930047141020896096780406276877696713933700263381179958298641656116416329155640811053835167851492899835975617155076581957928864340179883105347195192541444539204557465834336046893891681446698347870150032370663268215492750614986819451323931774306597392194124926915626333515659862479066284449205948319075055384300431768100435746385639899171273168380307035205550059185778435915387313113431530862680719232384686925589143445779091657462549770123890247960332473259323099276374806504940224963298319515560929378000103795206592396583192048595854596031643648\n", + "493118378773666493236005808848113280646424906459281677736363913383860094282041792193560812553755393427867400526762359916597283312232832658311281622107670335702985799671951234310153163915857728680359766210694390385082889078409114931668672093787783362893396695740300064741326536430985501229973638902647863548613194784388249853831252667031319724958132568898411896638150110768600863536200871492771279798342546336760614070411100118371556871830774626226863061725361438464769373851178286891558183314925099540247780495920664946518646198552749613009880449926596639031121858756000207590413184793166384097191709192063287296\n", + "986236757547332986472011617696226561292849812918563355472727826767720188564083584387121625107510786855734801053524719833194566624465665316622563244215340671405971599343902468620306327831715457360719532421388780770165778156818229863337344187575566725786793391480600129482653072861971002459947277805295727097226389568776499707662505334062639449916265137796823793276300221537201727072401742985542559596685092673521228140822200236743113743661549252453726123450722876929538747702356573783116366629850199080495560991841329893037292397105499226019760899853193278062243717512000415180826369586332768194383418384126574592\n", + "1972473515094665972944023235392453122585699625837126710945455653535440377128167168774243250215021573711469602107049439666389133248931330633245126488430681342811943198687804937240612655663430914721439064842777561540331556313636459726674688375151133451573586782961200258965306145723942004919894555610591454194452779137552999415325010668125278899832530275593647586552600443074403454144803485971085119193370185347042456281644400473486227487323098504907452246901445753859077495404713147566232733259700398160991121983682659786074584794210998452039521799706386556124487435024000830361652739172665536388766836768253149184\n", + "3944947030189331945888046470784906245171399251674253421890911307070880754256334337548486500430043147422939204214098879332778266497862661266490252976861362685623886397375609874481225311326861829442878129685555123080663112627272919453349376750302266903147173565922400517930612291447884009839789111221182908388905558275105998830650021336250557799665060551187295173105200886148806908289606971942170238386740370694084912563288800946972454974646197009814904493802891507718154990809426295132465466519400796321982243967365319572149169588421996904079043599412773112248974870048001660723305478345331072777533673536506298368\n", + "7889894060378663891776092941569812490342798503348506843781822614141761508512668675096973000860086294845878408428197758665556532995725322532980505953722725371247772794751219748962450622653723658885756259371110246161326225254545838906698753500604533806294347131844801035861224582895768019679578222442365816777811116550211997661300042672501115599330121102374590346210401772297613816579213943884340476773480741388169825126577601893944909949292394019629808987605783015436309981618852590264930933038801592643964487934730639144298339176843993808158087198825546224497949740096003321446610956690662145555067347073012596736\n", + "15779788120757327783552185883139624980685597006697013687563645228283523017025337350193946001720172589691756816856395517331113065991450645065961011907445450742495545589502439497924901245307447317771512518742220492322652450509091677813397507001209067612588694263689602071722449165791536039359156444884731633555622233100423995322600085345002231198660242204749180692420803544595227633158427887768680953546961482776339650253155203787889819898584788039259617975211566030872619963237705180529861866077603185287928975869461278288596678353687987616316174397651092448995899480192006642893221913381324291110134694146025193472\n", + "31559576241514655567104371766279249961371194013394027375127290456567046034050674700387892003440345179383513633712791034662226131982901290131922023814890901484991091179004878995849802490614894635543025037484440984645304901018183355626795014002418135225177388527379204143444898331583072078718312889769463267111244466200847990645200170690004462397320484409498361384841607089190455266316855775537361907093922965552679300506310407575779639797169576078519235950423132061745239926475410361059723732155206370575857951738922556577193356707375975232632348795302184897991798960384013285786443826762648582220269388292050386944\n", + "63119152483029311134208743532558499922742388026788054750254580913134092068101349400775784006880690358767027267425582069324452263965802580263844047629781802969982182358009757991699604981229789271086050074968881969290609802036366711253590028004836270450354777054758408286889796663166144157436625779538926534222488932401695981290400341380008924794640968818996722769683214178380910532633711551074723814187845931105358601012620815151559279594339152157038471900846264123490479852950820722119447464310412741151715903477845113154386713414751950465264697590604369795983597920768026571572887653525297164440538776584100773888\n", + "126238304966058622268417487065116999845484776053576109500509161826268184136202698801551568013761380717534054534851164138648904527931605160527688095259563605939964364716019515983399209962459578542172100149937763938581219604072733422507180056009672540900709554109516816573779593326332288314873251559077853068444977864803391962580800682760017849589281937637993445539366428356761821065267423102149447628375691862210717202025241630303118559188678304314076943801692528246980959705901641444238894928620825482303431806955690226308773426829503900930529395181208739591967195841536053143145775307050594328881077553168201547776\n", + "252476609932117244536834974130233999690969552107152219001018323652536368272405397603103136027522761435068109069702328277297809055863210321055376190519127211879928729432039031966798419924919157084344200299875527877162439208145466845014360112019345081801419108219033633147559186652664576629746503118155706136889955729606783925161601365520035699178563875275986891078732856713523642130534846204298895256751383724421434404050483260606237118377356608628153887603385056493961919411803282888477789857241650964606863613911380452617546853659007801861058790362417479183934391683072106286291550614101188657762155106336403095552\n", + "504953219864234489073669948260467999381939104214304438002036647305072736544810795206206272055045522870136218139404656554595618111726420642110752381038254423759857458864078063933596839849838314168688400599751055754324878416290933690028720224038690163602838216438067266295118373305329153259493006236311412273779911459213567850323202731040071398357127750551973782157465713427047284261069692408597790513502767448842868808100966521212474236754713217256307775206770112987923838823606565776955579714483301929213727227822760905235093707318015603722117580724834958367868783366144212572583101228202377315524310212672806191104\n", + "1009906439728468978147339896520935998763878208428608876004073294610145473089621590412412544110091045740272436278809313109191236223452841284221504762076508847519714917728156127867193679699676628337376801199502111508649756832581867380057440448077380327205676432876134532590236746610658306518986012472622824547559822918427135700646405462080142796714255501103947564314931426854094568522139384817195581027005534897685737616201933042424948473509426434512615550413540225975847677647213131553911159428966603858427454455645521810470187414636031207444235161449669916735737566732288425145166202456404754631048620425345612382208\n", + "2019812879456937956294679793041871997527756416857217752008146589220290946179243180824825088220182091480544872557618626218382472446905682568443009524153017695039429835456312255734387359399353256674753602399004223017299513665163734760114880896154760654411352865752269065180473493221316613037972024945245649095119645836854271401292810924160285593428511002207895128629862853708189137044278769634391162054011069795371475232403866084849896947018852869025231100827080451951695355294426263107822318857933207716854908911291043620940374829272062414888470322899339833471475133464576850290332404912809509262097240850691224764416\n", + "4039625758913875912589359586083743995055512833714435504016293178440581892358486361649650176440364182961089745115237252436764944893811365136886019048306035390078859670912624511468774718798706513349507204798008446034599027330327469520229761792309521308822705731504538130360946986442633226075944049890491298190239291673708542802585621848320571186857022004415790257259725707416378274088557539268782324108022139590742950464807732169699793894037705738050462201654160903903390710588852526215644637715866415433709817822582087241880749658544124829776940645798679666942950266929153700580664809825619018524194481701382449528832\n", + "8079251517827751825178719172167487990111025667428871008032586356881163784716972723299300352880728365922179490230474504873529889787622730273772038096612070780157719341825249022937549437597413026699014409596016892069198054660654939040459523584619042617645411463009076260721893972885266452151888099780982596380478583347417085605171243696641142373714044008831580514519451414832756548177115078537564648216044279181485900929615464339399587788075411476100924403308321807806781421177705052431289275431732830867419635645164174483761499317088249659553881291597359333885900533858307401161329619651238037048388963402764899057664\n", + "16158503035655503650357438344334975980222051334857742016065172713762327569433945446598600705761456731844358980460949009747059779575245460547544076193224141560315438683650498045875098875194826053398028819192033784138396109321309878080919047169238085235290822926018152521443787945770532904303776199561965192760957166694834171210342487393282284747428088017663161029038902829665513096354230157075129296432088558362971801859230928678799175576150822952201848806616643615613562842355410104862578550863465661734839271290328348967522998634176499319107762583194718667771801067716614802322659239302476074096777926805529798115328\n", + "32317006071311007300714876688669951960444102669715484032130345427524655138867890893197201411522913463688717960921898019494119559150490921095088152386448283120630877367300996091750197750389652106796057638384067568276792218642619756161838094338476170470581645852036305042887575891541065808607552399123930385521914333389668342420684974786564569494856176035326322058077805659331026192708460314150258592864177116725943603718461857357598351152301645904403697613233287231227125684710820209725157101726931323469678542580656697935045997268352998638215525166389437335543602135433229604645318478604952148193555853611059596230656\n", + "64634012142622014601429753377339903920888205339430968064260690855049310277735781786394402823045826927377435921843796038988239118300981842190176304772896566241261754734601992183500395500779304213592115276768135136553584437285239512323676188676952340941163291704072610085775151783082131617215104798247860771043828666779336684841369949573129138989712352070652644116155611318662052385416920628300517185728354233451887207436923714715196702304603291808807395226466574462454251369421640419450314203453862646939357085161313395870091994536705997276431050332778874671087204270866459209290636957209904296387111707222119192461312\n", + "129268024285244029202859506754679807841776410678861936128521381710098620555471563572788805646091653854754871843687592077976478236601963684380352609545793132482523509469203984367000791001558608427184230553536270273107168874570479024647352377353904681882326583408145220171550303566164263234430209596495721542087657333558673369682739899146258277979424704141305288232311222637324104770833841256601034371456708466903774414873847429430393404609206583617614790452933148924908502738843280838900628406907725293878714170322626791740183989073411994552862100665557749342174408541732918418581273914419808592774223414444238384922624\n", + "258536048570488058405719013509359615683552821357723872257042763420197241110943127145577611292183307709509743687375184155952956473203927368760705219091586264965047018938407968734001582003117216854368461107072540546214337749140958049294704754707809363764653166816290440343100607132328526468860419192991443084175314667117346739365479798292516555958849408282610576464622445274648209541667682513202068742913416933807548829747694858860786809218413167235229580905866297849817005477686561677801256813815450587757428340645253583480367978146823989105724201331115498684348817083465836837162547828839617185548446828888476769845248\n", + "517072097140976116811438027018719231367105642715447744514085526840394482221886254291155222584366615419019487374750368311905912946407854737521410438183172529930094037876815937468003164006234433708736922214145081092428675498281916098589409509415618727529306333632580880686201214264657052937720838385982886168350629334234693478730959596585033111917698816565221152929244890549296419083335365026404137485826833867615097659495389717721573618436826334470459161811732595699634010955373123355602513627630901175514856681290507166960735956293647978211448402662230997368697634166931673674325095657679234371096893657776953539690496\n", + "1034144194281952233622876054037438462734211285430895489028171053680788964443772508582310445168733230838038974749500736623811825892815709475042820876366345059860188075753631874936006328012468867417473844428290162184857350996563832197178819018831237455058612667265161761372402428529314105875441676771965772336701258668469386957461919193170066223835397633130442305858489781098592838166670730052808274971653667735230195318990779435443147236873652668940918323623465191399268021910746246711205027255261802351029713362581014333921471912587295956422896805324461994737395268333863347348650191315358468742193787315553907079380992\n", + "2068288388563904467245752108074876925468422570861790978056342107361577928887545017164620890337466461676077949499001473247623651785631418950085641752732690119720376151507263749872012656024937734834947688856580324369714701993127664394357638037662474910117225334530323522744804857058628211750883353543931544673402517336938773914923838386340132447670795266260884611716979562197185676333341460105616549943307335470460390637981558870886294473747305337881836647246930382798536043821492493422410054510523604702059426725162028667842943825174591912845793610648923989474790536667726694697300382630716937484387574631107814158761984\n", + "4136576777127808934491504216149753850936845141723581956112684214723155857775090034329241780674932923352155898998002946495247303571262837900171283505465380239440752303014527499744025312049875469669895377713160648739429403986255328788715276075324949820234450669060647045489609714117256423501766707087863089346805034673877547829847676772680264895341590532521769223433959124394371352666682920211233099886614670940920781275963117741772588947494610675763673294493860765597072087642984986844820109021047209404118853450324057335685887650349183825691587221297847978949581073335453389394600765261433874968775149262215628317523968\n", + "8273153554255617868983008432299507701873690283447163912225368429446311715550180068658483561349865846704311797996005892990494607142525675800342567010930760478881504606029054999488050624099750939339790755426321297478858807972510657577430552150649899640468901338121294090979219428234512847003533414175726178693610069347755095659695353545360529790683181065043538446867918248788742705333365840422466199773229341881841562551926235483545177894989221351527346588987721531194144175285969973689640218042094418808237706900648114671371775300698367651383174442595695957899162146670906778789201530522867749937550298524431256635047936\n", + "16546307108511235737966016864599015403747380566894327824450736858892623431100360137316967122699731693408623595992011785980989214285051351600685134021861520957763009212058109998976101248199501878679581510852642594957717615945021315154861104301299799280937802676242588181958438856469025694007066828351452357387220138695510191319390707090721059581366362130087076893735836497577485410666731680844932399546458683763683125103852470967090355789978442703054693177975443062388288350571939947379280436084188837616475413801296229342743550601396735302766348885191391915798324293341813557578403061045735499875100597048862513270095872\n", + "33092614217022471475932033729198030807494761133788655648901473717785246862200720274633934245399463386817247191984023571961978428570102703201370268043723041915526018424116219997952202496399003757359163021705285189915435231890042630309722208602599598561875605352485176363916877712938051388014133656702904714774440277391020382638781414181442119162732724260174153787471672995154970821333463361689864799092917367527366250207704941934180711579956885406109386355950886124776576701143879894758560872168377675232950827602592458685487101202793470605532697770382783831596648586683627115156806122091470999750201194097725026540191744\n", + "66185228434044942951864067458396061614989522267577311297802947435570493724401440549267868490798926773634494383968047143923956857140205406402740536087446083831052036848232439995904404992798007514718326043410570379830870463780085260619444417205199197123751210704970352727833755425876102776028267313405809429548880554782040765277562828362884238325465448520348307574943345990309941642666926723379729598185834735054732500415409883868361423159913770812218772711901772249553153402287759789517121744336755350465901655205184917370974202405586941211065395540765567663193297173367254230313612244182941999500402388195450053080383488\n", + "132370456868089885903728134916792123229979044535154622595605894871140987448802881098535736981597853547268988767936094287847913714280410812805481072174892167662104073696464879991808809985596015029436652086821140759661740927560170521238888834410398394247502421409940705455667510851752205552056534626811618859097761109564081530555125656725768476650930897040696615149886691980619883285333853446759459196371669470109465000830819767736722846319827541624437545423803544499106306804575519579034243488673510700931803310410369834741948404811173882422130791081531135326386594346734508460627224488365883999000804776390900106160766976\n", + "264740913736179771807456269833584246459958089070309245191211789742281974897605762197071473963195707094537977535872188575695827428560821625610962144349784335324208147392929759983617619971192030058873304173642281519323481855120341042477777668820796788495004842819881410911335021703504411104113069253623237718195522219128163061110251313451536953301861794081393230299773383961239766570667706893518918392743338940218930001661639535473445692639655083248875090847607088998212613609151039158068486977347021401863606620820739669483896809622347764844261582163062270652773188693469016921254448976731767998001609552781800212321533952\n", + "529481827472359543614912539667168492919916178140618490382423579484563949795211524394142947926391414189075955071744377151391654857121643251221924288699568670648416294785859519967235239942384060117746608347284563038646963710240682084955555337641593576990009685639762821822670043407008822208226138507246475436391044438256326122220502626903073906603723588162786460599546767922479533141335413787037836785486677880437860003323279070946891385279310166497750181695214177996425227218302078316136973954694042803727213241641479338967793619244695529688523164326124541305546377386938033842508897953463535996003219105563600424643067904\n", + "1058963654944719087229825079334336985839832356281236980764847158969127899590423048788285895852782828378151910143488754302783309714243286502443848577399137341296832589571719039934470479884768120235493216694569126077293927420481364169911110675283187153980019371279525643645340086814017644416452277014492950872782088876512652244441005253806147813207447176325572921199093535844959066282670827574075673570973355760875720006646558141893782770558620332995500363390428355992850454436604156632273947909388085607454426483282958677935587238489391059377046328652249082611092754773876067685017795906927071992006438211127200849286135808\n", + "2117927309889438174459650158668673971679664712562473961529694317938255799180846097576571791705565656756303820286977508605566619428486573004887697154798274682593665179143438079868940959769536240470986433389138252154587854840962728339822221350566374307960038742559051287290680173628035288832904554028985901745564177753025304488882010507612295626414894352651145842398187071689918132565341655148151347141946711521751440013293116283787565541117240665991000726780856711985700908873208313264547895818776171214908852966565917355871174476978782118754092657304498165222185509547752135370035591813854143984012876422254401698572271616\n", + "4235854619778876348919300317337347943359329425124947923059388635876511598361692195153143583411131313512607640573955017211133238856973146009775394309596549365187330358286876159737881919539072480941972866778276504309175709681925456679644442701132748615920077485118102574581360347256070577665809108057971803491128355506050608977764021015224591252829788705302291684796374143379836265130683310296302694283893423043502880026586232567575131082234481331982001453561713423971401817746416626529095791637552342429817705933131834711742348953957564237508185314608996330444371019095504270740071183627708287968025752844508803397144543232\n", + "8471709239557752697838600634674695886718658850249895846118777271753023196723384390306287166822262627025215281147910034422266477713946292019550788619193098730374660716573752319475763839078144961883945733556553008618351419363850913359288885402265497231840154970236205149162720694512141155331618216115943606982256711012101217955528042030449182505659577410604583369592748286759672530261366620592605388567786846087005760053172465135150262164468962663964002907123426847942803635492833253058191583275104684859635411866263669423484697907915128475016370629217992660888742038191008541480142367255416575936051505689017606794289086464\n", + "16943418479115505395677201269349391773437317700499791692237554543506046393446768780612574333644525254050430562295820068844532955427892584039101577238386197460749321433147504638951527678156289923767891467113106017236702838727701826718577770804530994463680309940472410298325441389024282310663236432231887213964513422024202435911056084060898365011319154821209166739185496573519345060522733241185210777135573692174011520106344930270300524328937925327928005814246853695885607270985666506116383166550209369719270823732527338846969395815830256950032741258435985321777484076382017082960284734510833151872103011378035213588578172928\n", + "33886836958231010791354402538698783546874635400999583384475109087012092786893537561225148667289050508100861124591640137689065910855785168078203154476772394921498642866295009277903055356312579847535782934226212034473405677455403653437155541609061988927360619880944820596650882778048564621326472864463774427929026844048404871822112168121796730022638309642418333478370993147038690121045466482370421554271147384348023040212689860540601048657875850655856011628493707391771214541971333012232766333100418739438541647465054677693938791631660513900065482516871970643554968152764034165920569469021666303744206022756070427177156345856\n", + "67773673916462021582708805077397567093749270801999166768950218174024185573787075122450297334578101016201722249183280275378131821711570336156406308953544789842997285732590018555806110712625159695071565868452424068946811354910807306874311083218123977854721239761889641193301765556097129242652945728927548855858053688096809743644224336243593460045276619284836666956741986294077380242090932964740843108542294768696046080425379721081202097315751701311712023256987414783542429083942666024465532666200837478877083294930109355387877583263321027800130965033743941287109936305528068331841138938043332607488412045512140854354312691712\n", + "135547347832924043165417610154795134187498541603998333537900436348048371147574150244900594669156202032403444498366560550756263643423140672312812617907089579685994571465180037111612221425250319390143131736904848137893622709821614613748622166436247955709442479523779282386603531112194258485305891457855097711716107376193619487288448672487186920090553238569673333913483972588154760484181865929481686217084589537392092160850759442162404194631503402623424046513974829567084858167885332048931065332401674957754166589860218710775755166526642055600261930067487882574219872611056136663682277876086665214976824091024281708708625383424\n", + "271094695665848086330835220309590268374997083207996667075800872696096742295148300489801189338312404064806888996733121101512527286846281344625625235814179159371989142930360074223224442850500638780286263473809696275787245419643229227497244332872495911418884959047558564773207062224388516970611782915710195423432214752387238974576897344974373840181106477139346667826967945176309520968363731858963372434169179074784184321701518884324808389263006805246848093027949659134169716335770664097862130664803349915508333179720437421551510333053284111200523860134975765148439745222112273327364555752173330429953648182048563417417250766848\n", + "542189391331696172661670440619180536749994166415993334151601745392193484590296600979602378676624808129613777993466242203025054573692562689251250471628358318743978285860720148446448885701001277560572526947619392551574490839286458454994488665744991822837769918095117129546414124448777033941223565831420390846864429504774477949153794689948747680362212954278693335653935890352619041936727463717926744868338358149568368643403037768649616778526013610493696186055899318268339432671541328195724261329606699831016666359440874843103020666106568222401047720269951530296879490444224546654729111504346660859907296364097126834834501533696\n", + "1084378782663392345323340881238361073499988332831986668303203490784386969180593201959204757353249616259227555986932484406050109147385125378502500943256716637487956571721440296892897771402002555121145053895238785103148981678572916909988977331489983645675539836190234259092828248897554067882447131662840781693728859009548955898307589379897495360724425908557386671307871780705238083873454927435853489736676716299136737286806075537299233557052027220987392372111798636536678865343082656391448522659213399662033332718881749686206041332213136444802095440539903060593758980888449093309458223008693321719814592728194253669669003067392\n", + "2168757565326784690646681762476722146999976665663973336606406981568773938361186403918409514706499232518455111973864968812100218294770250757005001886513433274975913143442880593785795542804005110242290107790477570206297963357145833819977954662979967291351079672380468518185656497795108135764894263325681563387457718019097911796615178759794990721448851817114773342615743561410476167746909854871706979473353432598273474573612151074598467114104054441974784744223597273073357730686165312782897045318426799324066665437763499372412082664426272889604190881079806121187517961776898186618916446017386643439629185456388507339338006134784\n", + "4337515130653569381293363524953444293999953331327946673212813963137547876722372807836819029412998465036910223947729937624200436589540501514010003773026866549951826286885761187571591085608010220484580215580955140412595926714291667639955909325959934582702159344760937036371312995590216271529788526651363126774915436038195823593230357519589981442897703634229546685231487122820952335493819709743413958946706865196546949147224302149196934228208108883949569488447194546146715461372330625565794090636853598648133330875526998744824165328852545779208381762159612242375035923553796373237832892034773286879258370912777014678676012269568\n", + "8675030261307138762586727049906888587999906662655893346425627926275095753444745615673638058825996930073820447895459875248400873179081003028020007546053733099903652573771522375143182171216020440969160431161910280825191853428583335279911818651919869165404318689521874072742625991180432543059577053302726253549830872076391647186460715039179962885795407268459093370462974245641904670987639419486827917893413730393093898294448604298393868456416217767899138976894389092293430922744661251131588181273707197296266661751053997489648330657705091558416763524319224484750071847107592746475665784069546573758516741825554029357352024539136\n", + "17350060522614277525173454099813777175999813325311786692851255852550191506889491231347276117651993860147640895790919750496801746358162006056040015092107466199807305147543044750286364342432040881938320862323820561650383706857166670559823637303839738330808637379043748145485251982360865086119154106605452507099661744152783294372921430078359925771590814536918186740925948491283809341975278838973655835786827460786187796588897208596787736912832435535798277953788778184586861845489322502263176362547414394592533323502107994979296661315410183116833527048638448969500143694215185492951331568139093147517033483651108058714704049078272\n", + "34700121045228555050346908199627554351999626650623573385702511705100383013778982462694552235303987720295281791581839500993603492716324012112080030184214932399614610295086089500572728684864081763876641724647641123300767413714333341119647274607679476661617274758087496290970503964721730172238308213210905014199323488305566588745842860156719851543181629073836373481851896982567618683950557677947311671573654921572375593177794417193575473825664871071596555907577556369173723690978645004526352725094828789185066647004215989958593322630820366233667054097276897939000287388430370985902663136278186295034066967302216117429408098156544\n", + "69400242090457110100693816399255108703999253301247146771405023410200766027557964925389104470607975440590563583163679001987206985432648024224160060368429864799229220590172179001145457369728163527753283449295282246601534827428666682239294549215358953323234549516174992581941007929443460344476616426421810028398646976611133177491685720313439703086363258147672746963703793965135237367901115355894623343147309843144751186355588834387150947651329742143193111815155112738347447381957290009052705450189657578370133294008431979917186645261640732467334108194553795878000574776860741971805326272556372590068133934604432234858816196313088\n", + "138800484180914220201387632798510217407998506602494293542810046820401532055115929850778208941215950881181127166327358003974413970865296048448320120736859729598458441180344358002290914739456327055506566898590564493203069654857333364478589098430717906646469099032349985163882015858886920688953232852843620056797293953222266354983371440626879406172726516295345493927407587930270474735802230711789246686294619686289502372711177668774301895302659484286386223630310225476694894763914580018105410900379315156740266588016863959834373290523281464934668216389107591756001149553721483943610652545112745180136267869208864469717632392626176\n", + "277600968361828440402775265597020434815997013204988587085620093640803064110231859701556417882431901762362254332654716007948827941730592096896640241473719459196916882360688716004581829478912654111013133797181128986406139309714666728957178196861435813292938198064699970327764031717773841377906465705687240113594587906444532709966742881253758812345453032590690987854815175860540949471604461423578493372589239372579004745422355337548603790605318968572772447260620450953389789527829160036210821800758630313480533176033727919668746581046562929869336432778215183512002299107442967887221305090225490360272535738417728939435264785252352\n", + "555201936723656880805550531194040869631994026409977174171240187281606128220463719403112835764863803524724508665309432015897655883461184193793280482947438918393833764721377432009163658957825308222026267594362257972812278619429333457914356393722871626585876396129399940655528063435547682755812931411374480227189175812889065419933485762507517624690906065181381975709630351721081898943208922847156986745178478745158009490844710675097207581210637937145544894521240901906779579055658320072421643601517260626961066352067455839337493162093125859738672865556430367024004598214885935774442610180450980720545071476835457878870529570504704\n", + "1110403873447313761611101062388081739263988052819954348342480374563212256440927438806225671529727607049449017330618864031795311766922368387586560965894877836787667529442754864018327317915650616444052535188724515945624557238858666915828712787445743253171752792258799881311056126871095365511625862822748960454378351625778130839866971525015035249381812130362763951419260703442163797886417845694313973490356957490316018981689421350194415162421275874291089789042481803813559158111316640144843287203034521253922132704134911678674986324186251719477345731112860734048009196429771871548885220360901961441090142953670915757741059141009408\n", + "2220807746894627523222202124776163478527976105639908696684960749126424512881854877612451343059455214098898034661237728063590623533844736775173121931789755673575335058885509728036654635831301232888105070377449031891249114477717333831657425574891486506343505584517599762622112253742190731023251725645497920908756703251556261679733943050030070498763624260725527902838521406884327595772835691388627946980713914980632037963378842700388830324842551748582179578084963607627118316222633280289686574406069042507844265408269823357349972648372503438954691462225721468096018392859543743097770440721803922882180285907341831515482118282018816\n", + "4441615493789255046444404249552326957055952211279817393369921498252849025763709755224902686118910428197796069322475456127181247067689473550346243863579511347150670117771019456073309271662602465776210140754898063782498228955434667663314851149782973012687011169035199525244224507484381462046503451290995841817513406503112523359467886100060140997527248521451055805677042813768655191545671382777255893961427829961264075926757685400777660649685103497164359156169927215254236632445266560579373148812138085015688530816539646714699945296745006877909382924451442936192036785719087486195540881443607845764360571814683663030964236564037632\n", + "8883230987578510092888808499104653914111904422559634786739842996505698051527419510449805372237820856395592138644950912254362494135378947100692487727159022694301340235542038912146618543325204931552420281509796127564996457910869335326629702299565946025374022338070399050488449014968762924093006902581991683635026813006225046718935772200120281995054497042902111611354085627537310383091342765554511787922855659922528151853515370801555321299370206994328718312339854430508473264890533121158746297624276170031377061633079293429399890593490013755818765848902885872384073571438174972391081762887215691528721143629367326061928473128075264\n", + "17766461975157020185777616998209307828223808845119269573479685993011396103054839020899610744475641712791184277289901824508724988270757894201384975454318045388602680471084077824293237086650409863104840563019592255129992915821738670653259404599131892050748044676140798100976898029937525848186013805163983367270053626012450093437871544400240563990108994085804223222708171255074620766182685531109023575845711319845056303707030741603110642598740413988657436624679708861016946529781066242317492595248552340062754123266158586858799781186980027511637531697805771744768147142876349944782163525774431383057442287258734652123856946256150528\n", + "35532923950314040371555233996418615656447617690238539146959371986022792206109678041799221488951283425582368554579803649017449976541515788402769950908636090777205360942168155648586474173300819726209681126039184510259985831643477341306518809198263784101496089352281596201953796059875051696372027610327966734540107252024900186875743088800481127980217988171608446445416342510149241532365371062218047151691422639690112607414061483206221285197480827977314873249359417722033893059562132484634985190497104680125508246532317173717599562373960055023275063395611543489536294285752699889564327051548862766114884574517469304247713892512301056\n", + "71065847900628080743110467992837231312895235380477078293918743972045584412219356083598442977902566851164737109159607298034899953083031576805539901817272181554410721884336311297172948346601639452419362252078369020519971663286954682613037618396527568202992178704563192403907592119750103392744055220655933469080214504049800373751486177600962255960435976343216892890832685020298483064730742124436094303382845279380225214828122966412442570394961655954629746498718835444067786119124264969269970380994209360251016493064634347435199124747920110046550126791223086979072588571505399779128654103097725532229769149034938608495427785024602112\n", + "142131695801256161486220935985674462625790470760954156587837487944091168824438712167196885955805133702329474218319214596069799906166063153611079803634544363108821443768672622594345896693203278904838724504156738041039943326573909365226075236793055136405984357409126384807815184239500206785488110441311866938160429008099600747502972355201924511920871952686433785781665370040596966129461484248872188606765690558760450429656245932824885140789923311909259492997437670888135572238248529938539940761988418720502032986129268694870398249495840220093100253582446173958145177143010799558257308206195451064459538298069877216990855570049204224\n", + "284263391602512322972441871971348925251580941521908313175674975888182337648877424334393771911610267404658948436638429192139599812332126307222159607269088726217642887537345245188691793386406557809677449008313476082079886653147818730452150473586110272811968714818252769615630368479000413570976220882623733876320858016199201495005944710403849023841743905372867571563330740081193932258922968497744377213531381117520900859312491865649770281579846623818518985994875341776271144476497059877079881523976837441004065972258537389740796498991680440186200507164892347916290354286021599116514616412390902128919076596139754433981711140098408448\n", + "568526783205024645944883743942697850503161883043816626351349951776364675297754848668787543823220534809317896873276858384279199624664252614444319214538177452435285775074690490377383586772813115619354898016626952164159773306295637460904300947172220545623937429636505539231260736958000827141952441765247467752641716032398402990011889420807698047683487810745735143126661480162387864517845936995488754427062762235041801718624983731299540563159693247637037971989750683552542288952994119754159763047953674882008131944517074779481592997983360880372401014329784695832580708572043198233029232824781804257838153192279508867963422280196816896\n", + "1137053566410049291889767487885395701006323766087633252702699903552729350595509697337575087646441069618635793746553716768558399249328505228888638429076354904870571550149380980754767173545626231238709796033253904328319546612591274921808601894344441091247874859273011078462521473916001654283904883530494935505283432064796805980023778841615396095366975621491470286253322960324775729035691873990977508854125524470083603437249967462599081126319386495274075943979501367105084577905988239508319526095907349764016263889034149558963185995966721760744802028659569391665161417144086396466058465649563608515676306384559017735926844560393633792\n", + "2274107132820098583779534975770791402012647532175266505405399807105458701191019394675150175292882139237271587493107433537116798498657010457777276858152709809741143100298761961509534347091252462477419592066507808656639093225182549843617203788688882182495749718546022156925042947832003308567809767060989871010566864129593611960047557683230792190733951242982940572506645920649551458071383747981955017708251048940167206874499934925198162252638772990548151887959002734210169155811976479016639052191814699528032527778068299117926371991933443521489604057319138783330322834288172792932116931299127217031352612769118035471853689120787267584\n", + "4548214265640197167559069951541582804025295064350533010810799614210917402382038789350300350585764278474543174986214867074233596997314020915554553716305419619482286200597523923019068694182504924954839184133015617313278186450365099687234407577377764364991499437092044313850085895664006617135619534121979742021133728259187223920095115366461584381467902485965881145013291841299102916142767495963910035416502097880334413748999869850396324505277545981096303775918005468420338311623952958033278104383629399056065055556136598235852743983866887042979208114638277566660645668576345585864233862598254434062705225538236070943707378241574535168\n", + "9096428531280394335118139903083165608050590128701066021621599228421834804764077578700600701171528556949086349972429734148467193994628041831109107432610839238964572401195047846038137388365009849909678368266031234626556372900730199374468815154755528729982998874184088627700171791328013234271239068243959484042267456518374447840190230732923168762935804971931762290026583682598205832285534991927820070833004195760668827497999739700792649010555091962192607551836010936840676623247905916066556208767258798112130111112273196471705487967733774085958416229276555133321291337152691171728467725196508868125410451076472141887414756483149070336\n", + "18192857062560788670236279806166331216101180257402132043243198456843669609528155157401201402343057113898172699944859468296934387989256083662218214865221678477929144802390095692076274776730019699819356736532062469253112745801460398748937630309511057459965997748368177255400343582656026468542478136487918968084534913036748895680380461465846337525871609943863524580053167365196411664571069983855640141666008391521337654995999479401585298021110183924385215103672021873681353246495811832133112417534517596224260222224546392943410975935467548171916832458553110266642582674305382343456935450393017736250820902152944283774829512966298140672\n", + "36385714125121577340472559612332662432202360514804264086486396913687339219056310314802402804686114227796345399889718936593868775978512167324436429730443356955858289604780191384152549553460039399638713473064124938506225491602920797497875260619022114919931995496736354510800687165312052937084956272975837936169069826073497791360760922931692675051743219887727049160106334730392823329142139967711280283332016783042675309991998958803170596042220367848770430207344043747362706492991623664266224835069035192448520444449092785886821951870935096343833664917106220533285165348610764686913870900786035472501641804305888567549659025932596281344\n", + "72771428250243154680945119224665324864404721029608528172972793827374678438112620629604805609372228455592690799779437873187737551957024334648872859460886713911716579209560382768305099106920078799277426946128249877012450983205841594995750521238044229839863990993472709021601374330624105874169912545951675872338139652146995582721521845863385350103486439775454098320212669460785646658284279935422560566664033566085350619983997917606341192084440735697540860414688087494725412985983247328532449670138070384897040888898185571773643903741870192687667329834212441066570330697221529373827741801572070945003283608611777135099318051865192562688\n", + "145542856500486309361890238449330649728809442059217056345945587654749356876225241259209611218744456911185381599558875746375475103914048669297745718921773427823433158419120765536610198213840157598554853892256499754024901966411683189991501042476088459679727981986945418043202748661248211748339825091903351744676279304293991165443043691726770700206972879550908196640425338921571293316568559870845121133328067132170701239967995835212682384168881471395081720829376174989450825971966494657064899340276140769794081777796371143547287807483740385375334659668424882133140661394443058747655483603144141890006567217223554270198636103730385125376\n", + "291085713000972618723780476898661299457618884118434112691891175309498713752450482518419222437488913822370763199117751492750950207828097338595491437843546855646866316838241531073220396427680315197109707784512999508049803932823366379983002084952176919359455963973890836086405497322496423496679650183806703489352558608587982330886087383453541400413945759101816393280850677843142586633137119741690242266656134264341402479935991670425364768337762942790163441658752349978901651943932989314129798680552281539588163555592742287094575614967480770750669319336849764266281322788886117495310967206288283780013134434447108540397272207460770250752\n", + "582171426001945237447560953797322598915237768236868225383782350618997427504900965036838444874977827644741526398235502985501900415656194677190982875687093711293732633676483062146440792855360630394219415569025999016099607865646732759966004169904353838718911927947781672172810994644992846993359300367613406978705117217175964661772174766907082800827891518203632786561701355686285173266274239483380484533312268528682804959871983340850729536675525885580326883317504699957803303887865978628259597361104563079176327111185484574189151229934961541501338638673699528532562645577772234990621934412576567560026268868894217080794544414921540501504\n", + "1164342852003890474895121907594645197830475536473736450767564701237994855009801930073676889749955655289483052796471005971003800831312389354381965751374187422587465267352966124292881585710721260788438831138051998032199215731293465519932008339808707677437823855895563344345621989289985693986718600735226813957410234434351929323544349533814165601655783036407265573123402711372570346532548478966760969066624537057365609919743966681701459073351051771160653766635009399915606607775731957256519194722209126158352654222370969148378302459869923083002677277347399057065125291155544469981243868825153135120052537737788434161589088829843081003008\n", + "2328685704007780949790243815189290395660951072947472901535129402475989710019603860147353779499911310578966105592942011942007601662624778708763931502748374845174930534705932248585763171421442521576877662276103996064398431462586931039864016679617415354875647711791126688691243978579971387973437201470453627914820468868703858647088699067628331203311566072814531146246805422745140693065096957933521938133249074114731219839487933363402918146702103542321307533270018799831213215551463914513038389444418252316705308444741938296756604919739846166005354554694798114130250582311088939962487737650306270240105075475576868323178177659686162006016\n", + "4657371408015561899580487630378580791321902145894945803070258804951979420039207720294707558999822621157932211185884023884015203325249557417527863005496749690349861069411864497171526342842885043153755324552207992128796862925173862079728033359234830709751295423582253377382487957159942775946874402940907255829640937737407717294177398135256662406623132145629062292493610845490281386130193915867043876266498148229462439678975866726805836293404207084642615066540037599662426431102927829026076778888836504633410616889483876593513209839479692332010709109389596228260501164622177879924975475300612540480210150951153736646356355319372324012032\n", + "9314742816031123799160975260757161582643804291789891606140517609903958840078415440589415117999645242315864422371768047768030406650499114835055726010993499380699722138823728994343052685685770086307510649104415984257593725850347724159456066718469661419502590847164506754764975914319885551893748805881814511659281875474815434588354796270513324813246264291258124584987221690980562772260387831734087752532996296458924879357951733453611672586808414169285230133080075199324852862205855658052153557777673009266821233778967753187026419678959384664021418218779192456521002329244355759849950950601225080960420301902307473292712710638744648024064\n", + "18629485632062247598321950521514323165287608583579783212281035219807917680156830881178830235999290484631728844743536095536060813300998229670111452021986998761399444277647457988686105371371540172615021298208831968515187451700695448318912133436939322839005181694329013509529951828639771103787497611763629023318563750949630869176709592541026649626492528582516249169974443381961125544520775663468175505065992592917849758715903466907223345173616828338570460266160150398649705724411711316104307115555346018533642467557935506374052839357918769328042836437558384913042004658488711519699901901202450161920840603804614946585425421277489296048128\n", + "37258971264124495196643901043028646330575217167159566424562070439615835360313661762357660471998580969263457689487072191072121626601996459340222904043973997522798888555294915977372210742743080345230042596417663937030374903401390896637824266873878645678010363388658027019059903657279542207574995223527258046637127501899261738353419185082053299252985057165032498339948886763922251089041551326936351010131985185835699517431806933814446690347233656677140920532320300797299411448823422632208614231110692037067284935115871012748105678715837538656085672875116769826084009316977423039399803802404900323841681207609229893170850842554978592096256\n", + "74517942528248990393287802086057292661150434334319132849124140879231670720627323524715320943997161938526915378974144382144243253203992918680445808087947995045597777110589831954744421485486160690460085192835327874060749806802781793275648533747757291356020726777316054038119807314559084415149990447054516093274255003798523476706838370164106598505970114330064996679897773527844502178083102653872702020263970371671399034863613867628893380694467313354281841064640601594598822897646845264417228462221384074134569870231742025496211357431675077312171345750233539652168018633954846078799607604809800647683362415218459786341701685109957184192512\n", + "149035885056497980786575604172114585322300868668638265698248281758463341441254647049430641887994323877053830757948288764288486506407985837360891616175895990091195554221179663909488842970972321380920170385670655748121499613605563586551297067495514582712041453554632108076239614629118168830299980894109032186548510007597046953413676740328213197011940228660129993359795547055689004356166205307745404040527940743342798069727227735257786761388934626708563682129281203189197645795293690528834456924442768148269139740463484050992422714863350154624342691500467079304336037267909692157599215209619601295366724830436919572683403370219914368385024\n", + "298071770112995961573151208344229170644601737337276531396496563516926682882509294098861283775988647754107661515896577528576973012815971674721783232351791980182391108442359327818977685941944642761840340771341311496242999227211127173102594134991029165424082907109264216152479229258236337660599961788218064373097020015194093906827353480656426394023880457320259986719591094111378008712332410615490808081055881486685596139454455470515573522777869253417127364258562406378395291590587381057668913848885536296538279480926968101984845429726700309248685383000934158608672074535819384315198430419239202590733449660873839145366806740439828736770048\n", + "596143540225991923146302416688458341289203474674553062792993127033853365765018588197722567551977295508215323031793155057153946025631943349443566464703583960364782216884718655637955371883889285523680681542682622992485998454422254346205188269982058330848165814218528432304958458516472675321199923576436128746194040030388187813654706961312852788047760914640519973439182188222756017424664821230981616162111762973371192278908910941031147045555738506834254728517124812756790583181174762115337827697771072593076558961853936203969690859453400618497370766001868317217344149071638768630396860838478405181466899321747678290733613480879657473540096\n", + "1192287080451983846292604833376916682578406949349106125585986254067706731530037176395445135103954591016430646063586310114307892051263886698887132929407167920729564433769437311275910743767778571047361363085365245984971996908844508692410376539964116661696331628437056864609916917032945350642399847152872257492388080060776375627309413922625705576095521829281039946878364376445512034849329642461963232324223525946742384557817821882062294091111477013668509457034249625513581166362349524230675655395542145186153117923707872407939381718906801236994741532003736634434688298143277537260793721676956810362933798643495356581467226961759314947080192\n", + "2384574160903967692585209666753833365156813898698212251171972508135413463060074352790890270207909182032861292127172620228615784102527773397774265858814335841459128867538874622551821487535557142094722726170730491969943993817689017384820753079928233323392663256874113729219833834065890701284799694305744514984776160121552751254618827845251411152191043658562079893756728752891024069698659284923926464648447051893484769115635643764124588182222954027337018914068499251027162332724699048461351310791084290372306235847415744815878763437813602473989483064007473268869376596286555074521587443353913620725867597286990713162934453923518629894160384\n", + "4769148321807935385170419333507666730313627797396424502343945016270826926120148705581780540415818364065722584254345240457231568205055546795548531717628671682918257735077749245103642975071114284189445452341460983939887987635378034769641506159856466646785326513748227458439667668131781402569599388611489029969552320243105502509237655690502822304382087317124159787513457505782048139397318569847852929296894103786969538231271287528249176364445908054674037828136998502054324665449398096922702621582168580744612471694831489631757526875627204947978966128014946537738753192573110149043174886707827241451735194573981426325868907847037259788320768\n", + "9538296643615870770340838667015333460627255594792849004687890032541653852240297411163561080831636728131445168508690480914463136410111093591097063435257343365836515470155498490207285950142228568378890904682921967879775975270756069539283012319712933293570653027496454916879335336263562805139198777222978059939104640486211005018475311381005644608764174634248319575026915011564096278794637139695705858593788207573939076462542575056498352728891816109348075656273997004108649330898796193845405243164337161489224943389662979263515053751254409895957932256029893075477506385146220298086349773415654482903470389147962852651737815694074519576641536\n", + "19076593287231741540681677334030666921254511189585698009375780065083307704480594822327122161663273456262890337017380961828926272820222187182194126870514686731673030940310996980414571900284457136757781809365843935759551950541512139078566024639425866587141306054992909833758670672527125610278397554445956119878209280972422010036950622762011289217528349268496639150053830023128192557589274279391411717187576415147878152925085150112996705457783632218696151312547994008217298661797592387690810486328674322978449886779325958527030107502508819791915864512059786150955012770292440596172699546831308965806940778295925705303475631388149039153283072\n", + "38153186574463483081363354668061333842509022379171396018751560130166615408961189644654244323326546912525780674034761923657852545640444374364388253741029373463346061880621993960829143800568914273515563618731687871519103901083024278157132049278851733174282612109985819667517341345054251220556795108891912239756418561944844020073901245524022578435056698536993278300107660046256385115178548558782823434375152830295756305850170300225993410915567264437392302625095988016434597323595184775381620972657348645956899773558651917054060215005017639583831729024119572301910025540584881192345399093662617931613881556591851410606951262776298078306566144\n", + "76306373148926966162726709336122667685018044758342792037503120260333230817922379289308488646653093825051561348069523847315705091280888748728776507482058746926692123761243987921658287601137828547031127237463375743038207802166048556314264098557703466348565224219971639335034682690108502441113590217783824479512837123889688040147802491048045156870113397073986556600215320092512770230357097117565646868750305660591512611700340600451986821831134528874784605250191976032869194647190369550763241945314697291913799547117303834108120430010035279167663458048239144603820051081169762384690798187325235863227763113183702821213902525552596156613132288\n", + "152612746297853932325453418672245335370036089516685584075006240520666461635844758578616977293306187650103122696139047694631410182561777497457553014964117493853384247522487975843316575202275657094062254474926751486076415604332097112628528197115406932697130448439943278670069365380217004882227180435567648959025674247779376080295604982096090313740226794147973113200430640185025540460714194235131293737500611321183025223400681200903973643662269057749569210500383952065738389294380739101526483890629394583827599094234607668216240860020070558335326916096478289207640102162339524769381596374650471726455526226367405642427805051105192313226264576\n", + "305225492595707864650906837344490670740072179033371168150012481041332923271689517157233954586612375300206245392278095389262820365123554994915106029928234987706768495044975951686633150404551314188124508949853502972152831208664194225257056394230813865394260896879886557340138730760434009764454360871135297918051348495558752160591209964192180627480453588295946226400861280370051080921428388470262587475001222642366050446801362401807947287324538115499138421000767904131476778588761478203052967781258789167655198188469215336432481720040141116670653832192956578415280204324679049538763192749300943452911052452734811284855610102210384626452529152\n", + "610450985191415729301813674688981341480144358066742336300024962082665846543379034314467909173224750600412490784556190778525640730247109989830212059856469975413536990089951903373266300809102628376249017899707005944305662417328388450514112788461627730788521793759773114680277461520868019528908721742270595836102696991117504321182419928384361254960907176591892452801722560740102161842856776940525174950002445284732100893602724803615894574649076230998276842001535808262953557177522956406105935562517578335310396376938430672864963440080282233341307664385913156830560408649358099077526385498601886905822104905469622569711220204420769252905058304\n", + "1220901970382831458603627349377962682960288716133484672600049924165331693086758068628935818346449501200824981569112381557051281460494219979660424119712939950827073980179903806746532601618205256752498035799414011888611324834656776901028225576923255461577043587519546229360554923041736039057817443484541191672205393982235008642364839856768722509921814353183784905603445121480204323685713553881050349900004890569464201787205449607231789149298152461996553684003071616525907114355045912812211871125035156670620792753876861345729926880160564466682615328771826313661120817298716198155052770997203773811644209810939245139422440408841538505810116608\n", + "2441803940765662917207254698755925365920577432266969345200099848330663386173516137257871636692899002401649963138224763114102562920988439959320848239425879901654147960359807613493065203236410513504996071598828023777222649669313553802056451153846510923154087175039092458721109846083472078115634886969082383344410787964470017284729679713537445019843628706367569811206890242960408647371427107762100699800009781138928403574410899214463578298596304923993107368006143233051814228710091825624423742250070313341241585507753722691459853760321128933365230657543652627322241634597432396310105541994407547623288419621878490278844880817683077011620233216\n", + "4883607881531325834414509397511850731841154864533938690400199696661326772347032274515743273385798004803299926276449526228205125841976879918641696478851759803308295920719615226986130406472821027009992143197656047554445299338627107604112902307693021846308174350078184917442219692166944156231269773938164766688821575928940034569459359427074890039687257412735139622413780485920817294742854215524201399600019562277856807148821798428927156597192609847986214736012286466103628457420183651248847484500140626682483171015507445382919707520642257866730461315087305254644483269194864792620211083988815095246576839243756980557689761635366154023240466432\n", + "9767215763062651668829018795023701463682309729067877380800399393322653544694064549031486546771596009606599852552899052456410251683953759837283392957703519606616591841439230453972260812945642054019984286395312095108890598677254215208225804615386043692616348700156369834884439384333888312462539547876329533377643151857880069138918718854149780079374514825470279244827560971841634589485708431048402799200039124555713614297643596857854313194385219695972429472024572932207256914840367302497694969000281253364966342031014890765839415041284515733460922630174610509288966538389729585240422167977630190493153678487513961115379523270732308046480932864\n", + "19534431526125303337658037590047402927364619458135754761600798786645307089388129098062973093543192019213199705105798104912820503367907519674566785915407039213233183682878460907944521625891284108039968572790624190217781197354508430416451609230772087385232697400312739669768878768667776624925079095752659066755286303715760138277837437708299560158749029650940558489655121943683269178971416862096805598400078249111427228595287193715708626388770439391944858944049145864414513829680734604995389938000562506729932684062029781531678830082569031466921845260349221018577933076779459170480844335955260380986307356975027922230759046541464616092961865728\n", + "39068863052250606675316075180094805854729238916271509523201597573290614178776258196125946187086384038426399410211596209825641006735815039349133571830814078426466367365756921815889043251782568216079937145581248380435562394709016860832903218461544174770465394800625479339537757537335553249850158191505318133510572607431520276555674875416599120317498059301881116979310243887366538357942833724193611196800156498222854457190574387431417252777540878783889717888098291728829027659361469209990779876001125013459865368124059563063357660165138062933843690520698442037155866153558918340961688671910520761972614713950055844461518093082929232185923731456\n", + "78137726104501213350632150360189611709458477832543019046403195146581228357552516392251892374172768076852798820423192419651282013471630078698267143661628156852932734731513843631778086503565136432159874291162496760871124789418033721665806436923088349540930789601250958679075515074671106499700316383010636267021145214863040553111349750833198240634996118603762233958620487774733076715885667448387222393600312996445708914381148774862834505555081757567779435776196583457658055318722938419981559752002250026919730736248119126126715320330276125867687381041396884074311732307117836681923377343821041523945229427900111688923036186165858464371847462912\n", + "156275452209002426701264300720379223418916955665086038092806390293162456715105032784503784748345536153705597640846384839302564026943260157396534287323256313705865469463027687263556173007130272864319748582324993521742249578836067443331612873846176699081861579202501917358151030149342212999400632766021272534042290429726081106222699501666396481269992237207524467917240975549466153431771334896774444787200625992891417828762297549725669011110163515135558871552393166915316110637445876839963119504004500053839461472496238252253430640660552251735374762082793768148623464614235673363846754687642083047890458855800223377846072372331716928743694925824\n", + "312550904418004853402528601440758446837833911330172076185612780586324913430210065569007569496691072307411195281692769678605128053886520314793068574646512627411730938926055374527112346014260545728639497164649987043484499157672134886663225747692353398163723158405003834716302060298684425998801265532042545068084580859452162212445399003332792962539984474415048935834481951098932306863542669793548889574401251985782835657524595099451338022220327030271117743104786333830632221274891753679926239008009000107678922944992476504506861281321104503470749524165587536297246929228471346727693509375284166095780917711600446755692144744663433857487389851648\n", + "625101808836009706805057202881516893675667822660344152371225561172649826860420131138015138993382144614822390563385539357210256107773040629586137149293025254823461877852110749054224692028521091457278994329299974086968998315344269773326451495384706796327446316810007669432604120597368851997602531064085090136169161718904324424890798006665585925079968948830097871668963902197864613727085339587097779148802503971565671315049190198902676044440654060542235486209572667661264442549783507359852478016018000215357845889984953009013722562642209006941499048331175072594493858456942693455387018750568332191561835423200893511384289489326867714974779703296\n", + "1250203617672019413610114405763033787351335645320688304742451122345299653720840262276030277986764289229644781126771078714420512215546081259172274298586050509646923755704221498108449384057042182914557988658599948173937996630688539546652902990769413592654892633620015338865208241194737703995205062128170180272338323437808648849781596013331171850159937897660195743337927804395729227454170679174195558297605007943131342630098380397805352088881308121084470972419145335322528885099567014719704956032036000430715691779969906018027445125284418013882998096662350145188987716913885386910774037501136664383123670846401787022768578978653735429949559406592\n", + "2500407235344038827220228811526067574702671290641376609484902244690599307441680524552060555973528578459289562253542157428841024431092162518344548597172101019293847511408442996216898768114084365829115977317199896347875993261377079093305805981538827185309785267240030677730416482389475407990410124256340360544676646875617297699563192026662343700319875795320391486675855608791458454908341358348391116595210015886262685260196760795610704177762616242168941944838290670645057770199134029439409912064072000861431383559939812036054890250568836027765996193324700290377975433827770773821548075002273328766247341692803574045537157957307470859899118813184\n", + "5000814470688077654440457623052135149405342581282753218969804489381198614883361049104121111947057156918579124507084314857682048862184325036689097194344202038587695022816885992433797536228168731658231954634399792695751986522754158186611611963077654370619570534480061355460832964778950815980820248512680721089353293751234595399126384053324687400639751590640782973351711217582916909816682716696782233190420031772525370520393521591221408355525232484337883889676581341290115540398268058878819824128144001722862767119879624072109780501137672055531992386649400580755950867655541547643096150004546657532494683385607148091074315914614941719798237626368\n", + "10001628941376155308880915246104270298810685162565506437939608978762397229766722098208242223894114313837158249014168629715364097724368650073378194388688404077175390045633771984867595072456337463316463909268799585391503973045508316373223223926155308741239141068960122710921665929557901631961640497025361442178706587502469190798252768106649374801279503181281565946703422435165833819633365433393564466380840063545050741040787043182442816711050464968675767779353162682580231080796536117757639648256288003445725534239759248144219561002275344111063984773298801161511901735311083095286192300009093315064989366771214296182148631829229883439596475252736\n", + "20003257882752310617761830492208540597621370325131012875879217957524794459533444196416484447788228627674316498028337259430728195448737300146756388777376808154350780091267543969735190144912674926632927818537599170783007946091016632746446447852310617482478282137920245421843331859115803263923280994050722884357413175004938381596505536213298749602559006362563131893406844870331667639266730866787128932761680127090101482081574086364885633422100929937351535558706325365160462161593072235515279296512576006891451068479518496288439122004550688222127969546597602323023803470622166190572384600018186630129978733542428592364297263658459766879192950505472\n", + "40006515765504621235523660984417081195242740650262025751758435915049588919066888392832968895576457255348632996056674518861456390897474600293512777554753616308701560182535087939470380289825349853265855637075198341566015892182033265492892895704621234964956564275840490843686663718231606527846561988101445768714826350009876763193011072426597499205118012725126263786813689740663335278533461733574257865523360254180202964163148172729771266844201859874703071117412650730320924323186144471030558593025152013782902136959036992576878244009101376444255939093195204646047606941244332381144769200036373260259957467084857184728594527316919533758385901010944\n", + "80013031531009242471047321968834162390485481300524051503516871830099177838133776785665937791152914510697265992113349037722912781794949200587025555109507232617403120365070175878940760579650699706531711274150396683132031784364066530985785791409242469929913128551680981687373327436463213055693123976202891537429652700019753526386022144853194998410236025450252527573627379481326670557066923467148515731046720508360405928326296345459542533688403719749406142234825301460641848646372288942061117186050304027565804273918073985153756488018202752888511878186390409292095213882488664762289538400072746520519914934169714369457189054633839067516771802021888\n", + "160026063062018484942094643937668324780970962601048103007033743660198355676267553571331875582305829021394531984226698075445825563589898401174051110219014465234806240730140351757881521159301399413063422548300793366264063568728133061971571582818484939859826257103361963374746654872926426111386247952405783074859305400039507052772044289706389996820472050900505055147254758962653341114133846934297031462093441016720811856652592690919085067376807439498812284469650602921283697292744577884122234372100608055131608547836147970307512976036405505777023756372780818584190427764977329524579076800145493041039829868339428738914378109267678135033543604043776\n", + "320052126124036969884189287875336649561941925202096206014067487320396711352535107142663751164611658042789063968453396150891651127179796802348102220438028930469612481460280703515763042318602798826126845096601586732528127137456266123943143165636969879719652514206723926749493309745852852222772495904811566149718610800079014105544088579412779993640944101801010110294509517925306682228267693868594062924186882033441623713305185381838170134753614878997624568939301205842567394585489155768244468744201216110263217095672295940615025952072811011554047512745561637168380855529954659049158153600290986082079659736678857477828756218535356270067087208087552\n", + "640104252248073939768378575750673299123883850404192412028134974640793422705070214285327502329223316085578127936906792301783302254359593604696204440876057860939224962920561407031526084637205597652253690193203173465056254274912532247886286331273939759439305028413447853498986619491705704445544991809623132299437221600158028211088177158825559987281888203602020220589019035850613364456535387737188125848373764066883247426610370763676340269507229757995249137878602411685134789170978311536488937488402432220526434191344591881230051904145622023108095025491123274336761711059909318098316307200581972164159319473357714955657512437070712540134174416175104\n", + "1280208504496147879536757151501346598247767700808384824056269949281586845410140428570655004658446632171156255873813584603566604508719187209392408881752115721878449925841122814063052169274411195304507380386406346930112508549825064495772572662547879518878610056826895706997973238983411408891089983619246264598874443200316056422176354317651119974563776407204040441178038071701226728913070775474376251696747528133766494853220741527352680539014459515990498275757204823370269578341956623072977874976804864441052868382689183762460103808291244046216190050982246548673523422119818636196632614401163944328318638946715429911315024874141425080268348832350208\n", + "2560417008992295759073514303002693196495535401616769648112539898563173690820280857141310009316893264342312511747627169207133209017438374418784817763504231443756899851682245628126104338548822390609014760772812693860225017099650128991545145325095759037757220113653791413995946477966822817782179967238492529197748886400632112844352708635302239949127552814408080882356076143402453457826141550948752503393495056267532989706441483054705361078028919031980996551514409646740539156683913246145955749953609728882105736765378367524920207616582488092432380101964493097347046844239637272393265228802327888656637277893430859822630049748282850160536697664700416\n", + "5120834017984591518147028606005386392991070803233539296225079797126347381640561714282620018633786528684625023495254338414266418034876748837569635527008462887513799703364491256252208677097644781218029521545625387720450034199300257983090290650191518075514440227307582827991892955933645635564359934476985058395497772801264225688705417270604479898255105628816161764712152286804906915652283101897505006786990112535065979412882966109410722156057838063961993103028819293481078313367826492291911499907219457764211473530756735049840415233164976184864760203928986194694093688479274544786530457604655777313274555786861719645260099496565700321073395329400832\n", + "10241668035969183036294057212010772785982141606467078592450159594252694763281123428565240037267573057369250046990508676828532836069753497675139271054016925775027599406728982512504417354195289562436059043091250775440900068398600515966180581300383036151028880454615165655983785911867291271128719868953970116790995545602528451377410834541208959796510211257632323529424304573609813831304566203795010013573980225070131958825765932218821444312115676127923986206057638586962156626735652984583822999814438915528422947061513470099680830466329952369729520407857972389388187376958549089573060915209311554626549111573723439290520198993131400642146790658801664\n", + "20483336071938366072588114424021545571964283212934157184900319188505389526562246857130480074535146114738500093981017353657065672139506995350278542108033851550055198813457965025008834708390579124872118086182501550881800136797201031932361162600766072302057760909230331311967571823734582542257439737907940233581991091205056902754821669082417919593020422515264647058848609147219627662609132407590020027147960450140263917651531864437642888624231352255847972412115277173924313253471305969167645999628877831056845894123026940199361660932659904739459040815715944778776374753917098179146121830418623109253098223147446878581040397986262801284293581317603328\n", + "40966672143876732145176228848043091143928566425868314369800638377010779053124493714260960149070292229477000187962034707314131344279013990700557084216067703100110397626915930050017669416781158249744236172365003101763600273594402063864722325201532144604115521818460662623935143647469165084514879475815880467163982182410113805509643338164835839186040845030529294117697218294439255325218264815180040054295920900280527835303063728875285777248462704511695944824230554347848626506942611938335291999257755662113691788246053880398723321865319809478918081631431889557552749507834196358292243660837246218506196446294893757162080795972525602568587162635206656\n", + "81933344287753464290352457696086182287857132851736628739601276754021558106248987428521920298140584458954000375924069414628262688558027981401114168432135406200220795253831860100035338833562316499488472344730006203527200547188804127729444650403064289208231043636921325247870287294938330169029758951631760934327964364820227611019286676329671678372081690061058588235394436588878510650436529630360080108591841800561055670606127457750571554496925409023391889648461108695697253013885223876670583998515511324227383576492107760797446643730639618957836163262863779115105499015668392716584487321674492437012392892589787514324161591945051205137174325270413312\n", + "163866688575506928580704915392172364575714265703473257479202553508043116212497974857043840596281168917908000751848138829256525377116055962802228336864270812400441590507663720200070677667124632998976944689460012407054401094377608255458889300806128578416462087273842650495740574589876660338059517903263521868655928729640455222038573352659343356744163380122117176470788873177757021300873059260720160217183683601122111341212254915501143108993850818046783779296922217391394506027770447753341167997031022648454767152984215521594893287461279237915672326525727558230210998031336785433168974643348984874024785785179575028648323183890102410274348650540826624\n", + "327733377151013857161409830784344729151428531406946514958405107016086232424995949714087681192562337835816001503696277658513050754232111925604456673728541624800883181015327440400141355334249265997953889378920024814108802188755216510917778601612257156832924174547685300991481149179753320676119035806527043737311857459280910444077146705318686713488326760244234352941577746355514042601746118521440320434367367202244222682424509831002286217987701636093567558593844434782789012055540895506682335994062045296909534305968431043189786574922558475831344653051455116460421996062673570866337949286697969748049571570359150057296646367780204820548697301081653248\n", + "655466754302027714322819661568689458302857062813893029916810214032172464849991899428175362385124675671632003007392555317026101508464223851208913347457083249601766362030654880800282710668498531995907778757840049628217604377510433021835557203224514313665848349095370601982962298359506641352238071613054087474623714918561820888154293410637373426976653520488468705883155492711028085203492237042880640868734734404488445364849019662004572435975403272187135117187688869565578024111081791013364671988124090593819068611936862086379573149845116951662689306102910232920843992125347141732675898573395939496099143140718300114593292735560409641097394602163306496\n", + "1310933508604055428645639323137378916605714125627786059833620428064344929699983798856350724770249351343264006014785110634052203016928447702417826694914166499203532724061309761600565421336997063991815557515680099256435208755020866043671114406449028627331696698190741203965924596719013282704476143226108174949247429837123641776308586821274746853953307040976937411766310985422056170406984474085761281737469468808976890729698039324009144871950806544374270234375377739131156048222163582026729343976248181187638137223873724172759146299690233903325378612205820465841687984250694283465351797146791878992198286281436600229186585471120819282194789204326612992\n", + "2621867017208110857291278646274757833211428251255572119667240856128689859399967597712701449540498702686528012029570221268104406033856895404835653389828332998407065448122619523201130842673994127983631115031360198512870417510041732087342228812898057254663393396381482407931849193438026565408952286452216349898494859674247283552617173642549493707906614081953874823532621970844112340813968948171522563474938937617953781459396078648018289743901613088748540468750755478262312096444327164053458687952496362375276274447747448345518292599380467806650757224411640931683375968501388566930703594293583757984396572562873200458373170942241638564389578408653225984\n", + "5243734034416221714582557292549515666422856502511144239334481712257379718799935195425402899080997405373056024059140442536208812067713790809671306779656665996814130896245239046402261685347988255967262230062720397025740835020083464174684457625796114509326786792762964815863698386876053130817904572904432699796989719348494567105234347285098987415813228163907749647065243941688224681627937896343045126949877875235907562918792157296036579487803226177497080937501510956524624192888654328106917375904992724750552548895494896691036585198760935613301514448823281863366751937002777133861407188587167515968793145125746400916746341884483277128779156817306451968\n", + "10487468068832443429165114585099031332845713005022288478668963424514759437599870390850805798161994810746112048118280885072417624135427581619342613559313331993628261792490478092804523370695976511934524460125440794051481670040166928349368915251592229018653573585525929631727396773752106261635809145808865399593979438696989134210468694570197974831626456327815499294130487883376449363255875792686090253899755750471815125837584314592073158975606452354994161875003021913049248385777308656213834751809985449501105097790989793382073170397521871226603028897646563726733503874005554267722814377174335031937586290251492801833492683768966554257558313634612903936\n", + "20974936137664886858330229170198062665691426010044576957337926849029518875199740781701611596323989621492224096236561770144835248270855163238685227118626663987256523584980956185609046741391953023869048920250881588102963340080333856698737830503184458037307147171051859263454793547504212523271618291617730799187958877393978268420937389140395949663252912655630998588260975766752898726511751585372180507799511500943630251675168629184146317951212904709988323750006043826098496771554617312427669503619970899002210195581979586764146340795043742453206057795293127453467007748011108535445628754348670063875172580502985603666985367537933108515116627269225807872\n", + "41949872275329773716660458340396125331382852020089153914675853698059037750399481563403223192647979242984448192473123540289670496541710326477370454237253327974513047169961912371218093482783906047738097840501763176205926680160667713397475661006368916074614294342103718526909587095008425046543236583235461598375917754787956536841874778280791899326505825311261997176521951533505797453023503170744361015599023001887260503350337258368292635902425809419976647500012087652196993543109234624855339007239941798004420391163959173528292681590087484906412115590586254906934015496022217070891257508697340127750345161005971207333970735075866217030233254538451615744\n", + "83899744550659547433320916680792250662765704040178307829351707396118075500798963126806446385295958485968896384946247080579340993083420652954740908474506655949026094339923824742436186965567812095476195681003526352411853360321335426794951322012737832149228588684207437053819174190016850093086473166470923196751835509575913073683749556561583798653011650622523994353043903067011594906047006341488722031198046003774521006700674516736585271804851618839953295000024175304393987086218469249710678014479883596008840782327918347056585363180174969812824231181172509813868030992044434141782515017394680255500690322011942414667941470151732434060466509076903231488\n", + "167799489101319094866641833361584501325531408080356615658703414792236151001597926253612892770591916971937792769892494161158681986166841305909481816949013311898052188679847649484872373931135624190952391362007052704823706720642670853589902644025475664298457177368414874107638348380033700186172946332941846393503671019151826147367499113123167597306023301245047988706087806134023189812094012682977444062396092007549042013401349033473170543609703237679906590000048350608787974172436938499421356028959767192017681564655836694113170726360349939625648462362345019627736061984088868283565030034789360511001380644023884829335882940303464868120933018153806462976\n", + "335598978202638189733283666723169002651062816160713231317406829584472302003195852507225785541183833943875585539784988322317363972333682611818963633898026623796104377359695298969744747862271248381904782724014105409647413441285341707179805288050951328596914354736829748215276696760067400372345892665883692787007342038303652294734998226246335194612046602490095977412175612268046379624188025365954888124792184015098084026802698066946341087219406475359813180000096701217575948344873876998842712057919534384035363129311673388226341452720699879251296924724690039255472123968177736567130060069578721022002761288047769658671765880606929736241866036307612925952\n", + "671197956405276379466567333446338005302125632321426462634813659168944604006391705014451571082367667887751171079569976644634727944667365223637927267796053247592208754719390597939489495724542496763809565448028210819294826882570683414359610576101902657193828709473659496430553393520134800744691785331767385574014684076607304589469996452492670389224093204980191954824351224536092759248376050731909776249584368030196168053605396133892682174438812950719626360000193402435151896689747753997685424115839068768070726258623346776452682905441399758502593849449380078510944247936355473134260120139157442044005522576095539317343531761213859472483732072615225851904\n", + "1342395912810552758933134666892676010604251264642852925269627318337889208012783410028903142164735335775502342159139953289269455889334730447275854535592106495184417509438781195878978991449084993527619130896056421638589653765141366828719221152203805314387657418947318992861106787040269601489383570663534771148029368153214609178939992904985340778448186409960383909648702449072185518496752101463819552499168736060392336107210792267785364348877625901439252720000386804870303793379495507995370848231678137536141452517246693552905365810882799517005187698898760157021888495872710946268520240278314884088011045152191078634687063522427718944967464145230451703808\n", + "2684791825621105517866269333785352021208502529285705850539254636675778416025566820057806284329470671551004684318279906578538911778669460894551709071184212990368835018877562391757957982898169987055238261792112843277179307530282733657438442304407610628775314837894637985722213574080539202978767141327069542296058736306429218357879985809970681556896372819920767819297404898144371036993504202927639104998337472120784672214421584535570728697755251802878505440000773609740607586758991015990741696463356275072282905034493387105810731621765599034010375397797520314043776991745421892537040480556629768176022090304382157269374127044855437889934928290460903407616\n", + "5369583651242211035732538667570704042417005058571411701078509273351556832051133640115612568658941343102009368636559813157077823557338921789103418142368425980737670037755124783515915965796339974110476523584225686554358615060565467314876884608815221257550629675789275971444427148161078405957534282654139084592117472612858436715759971619941363113792745639841535638594809796288742073987008405855278209996674944241569344428843169071141457395510503605757010880001547219481215173517982031981483392926712550144565810068986774211621463243531198068020750795595040628087553983490843785074080961113259536352044180608764314538748254089710875779869856580921806815232\n", + "10739167302484422071465077335141408084834010117142823402157018546703113664102267280231225137317882686204018737273119626314155647114677843578206836284736851961475340075510249567031831931592679948220953047168451373108717230121130934629753769217630442515101259351578551942888854296322156811915068565308278169184234945225716873431519943239882726227585491279683071277189619592577484147974016811710556419993349888483138688857686338142282914791021007211514021760003094438962430347035964063962966785853425100289131620137973548423242926487062396136041501591190081256175107966981687570148161922226519072704088361217528629077496508179421751559739713161843613630464\n", + "21478334604968844142930154670282816169668020234285646804314037093406227328204534560462450274635765372408037474546239252628311294229355687156413672569473703922950680151020499134063663863185359896441906094336902746217434460242261869259507538435260885030202518703157103885777708592644313623830137130616556338368469890451433746863039886479765452455170982559366142554379239185154968295948033623421112839986699776966277377715372676284565829582042014423028043520006188877924860694071928127925933571706850200578263240275947096846485852974124792272083003182380162512350215933963375140296323844453038145408176722435057258154993016358843503119479426323687227260928\n", + "42956669209937688285860309340565632339336040468571293608628074186812454656409069120924900549271530744816074949092478505256622588458711374312827345138947407845901360302040998268127327726370719792883812188673805492434868920484523738519015076870521770060405037406314207771555417185288627247660274261233112676736939780902867493726079772959530904910341965118732285108758478370309936591896067246842225679973399553932554755430745352569131659164084028846056087040012377755849721388143856255851867143413700401156526480551894193692971705948249584544166006364760325024700431867926750280592647688906076290816353444870114516309986032717687006238958852647374454521856\n", + "85913338419875376571720618681131264678672080937142587217256148373624909312818138241849801098543061489632149898184957010513245176917422748625654690277894815691802720604081996536254655452741439585767624377347610984869737840969047477038030153741043540120810074812628415543110834370577254495320548522466225353473879561805734987452159545919061809820683930237464570217516956740619873183792134493684451359946799107865109510861490705138263318328168057692112174080024755511699442776287712511703734286827400802313052961103788387385943411896499169088332012729520650049400863735853500561185295377812152581632706889740229032619972065435374012477917705294748909043712\n", + "171826676839750753143441237362262529357344161874285174434512296747249818625636276483699602197086122979264299796369914021026490353834845497251309380555789631383605441208163993072509310905482879171535248754695221969739475681938094954076060307482087080241620149625256831086221668741154508990641097044932450706947759123611469974904319091838123619641367860474929140435033913481239746367584268987368902719893598215730219021722981410276526636656336115384224348160049511023398885552575425023407468573654801604626105922207576774771886823792998338176664025459041300098801727471707001122370590755624305163265413779480458065239944130870748024955835410589497818087424\n", + "343653353679501506286882474724525058714688323748570348869024593494499637251272552967399204394172245958528599592739828042052980707669690994502618761111579262767210882416327986145018621810965758343070497509390443939478951363876189908152120614964174160483240299250513662172443337482309017981282194089864901413895518247222939949808638183676247239282735720949858280870067826962479492735168537974737805439787196431460438043445962820553053273312672230768448696320099022046797771105150850046814937147309603209252211844415153549543773647585996676353328050918082600197603454943414002244741181511248610326530827558960916130479888261741496049911670821178995636174848\n", + "687306707359003012573764949449050117429376647497140697738049186988999274502545105934798408788344491917057199185479656084105961415339381989005237522223158525534421764832655972290037243621931516686140995018780887878957902727752379816304241229928348320966480598501027324344886674964618035962564388179729802827791036494445879899617276367352494478565471441899716561740135653924958985470337075949475610879574392862920876086891925641106106546625344461536897392640198044093595542210301700093629874294619206418504423688830307099087547295171993352706656101836165200395206909886828004489482363022497220653061655117921832260959776523482992099823341642357991272349696\n", + "1374613414718006025147529898898100234858753294994281395476098373977998549005090211869596817576688983834114398370959312168211922830678763978010475044446317051068843529665311944580074487243863033372281990037561775757915805455504759632608482459856696641932961197002054648689773349929236071925128776359459605655582072988891759799234552734704988957130942883799433123480271307849917970940674151898951221759148785725841752173783851282212213093250688923073794785280396088187191084420603400187259748589238412837008847377660614198175094590343986705413312203672330400790413819773656008978964726044994441306123310235843664521919553046965984199646683284715982544699392\n", + "2749226829436012050295059797796200469717506589988562790952196747955997098010180423739193635153377967668228796741918624336423845661357527956020950088892634102137687059330623889160148974487726066744563980075123551515831610911009519265216964919713393283865922394004109297379546699858472143850257552718919211311164145977783519598469105469409977914261885767598866246960542615699835941881348303797902443518297571451683504347567702564424426186501377846147589570560792176374382168841206800374519497178476825674017694755321228396350189180687973410826624407344660801580827639547312017957929452089988882612246620471687329043839106093931968399293366569431965089398784\n", + "5498453658872024100590119595592400939435013179977125581904393495911994196020360847478387270306755935336457593483837248672847691322715055912041900177785268204275374118661247778320297948975452133489127960150247103031663221822019038530433929839426786567731844788008218594759093399716944287700515105437838422622328291955567039196938210938819955828523771535197732493921085231399671883762696607595804887036595142903367008695135405128848852373002755692295179141121584352748764337682413600749038994356953651348035389510642456792700378361375946821653248814689321603161655279094624035915858904179977765224493240943374658087678212187863936798586733138863930178797568\n", + "10996907317744048201180239191184801878870026359954251163808786991823988392040721694956774540613511870672915186967674497345695382645430111824083800355570536408550748237322495556640595897950904266978255920300494206063326443644038077060867859678853573135463689576016437189518186799433888575401030210875676845244656583911134078393876421877639911657047543070395464987842170462799343767525393215191609774073190285806734017390270810257697704746005511384590358282243168705497528675364827201498077988713907302696070779021284913585400756722751893643306497629378643206323310558189248071831717808359955530448986481886749316175356424375727873597173466277727860357595136\n", + "21993814635488096402360478382369603757740052719908502327617573983647976784081443389913549081227023741345830373935348994691390765290860223648167600711141072817101496474644991113281191795901808533956511840600988412126652887288076154121735719357707146270927379152032874379036373598867777150802060421751353690489313167822268156787752843755279823314095086140790929975684340925598687535050786430383219548146380571613468034780541620515395409492011022769180716564486337410995057350729654402996155977427814605392141558042569827170801513445503787286612995258757286412646621116378496143663435616719911060897972963773498632350712848751455747194346932555455720715190272\n", + "43987629270976192804720956764739207515480105439817004655235147967295953568162886779827098162454047482691660747870697989382781530581720447296335201422282145634202992949289982226562383591803617067913023681201976824253305774576152308243471438715414292541854758304065748758072747197735554301604120843502707380978626335644536313575505687510559646628190172281581859951368681851197375070101572860766439096292761143226936069561083241030790818984022045538361433128972674821990114701459308805992311954855629210784283116085139654341603026891007574573225990517514572825293242232756992287326871233439822121795945927546997264701425697502911494388693865110911441430380544\n", + "87975258541952385609441913529478415030960210879634009310470295934591907136325773559654196324908094965383321495741395978765563061163440894592670402844564291268405985898579964453124767183607234135826047362403953648506611549152304616486942877430828585083709516608131497516145494395471108603208241687005414761957252671289072627151011375021119293256380344563163719902737363702394750140203145721532878192585522286453872139122166482061581637968044091076722866257945349643980229402918617611984623909711258421568566232170279308683206053782015149146451981035029145650586484465513984574653742466879644243591891855093994529402851395005822988777387730221822882860761088\n", + "175950517083904771218883827058956830061920421759268018620940591869183814272651547119308392649816189930766642991482791957531126122326881789185340805689128582536811971797159928906249534367214468271652094724807907297013223098304609232973885754861657170167419033216262995032290988790942217206416483374010829523914505342578145254302022750042238586512760689126327439805474727404789500280406291443065756385171044572907744278244332964123163275936088182153445732515890699287960458805837235223969247819422516843137132464340558617366412107564030298292903962070058291301172968931027969149307484933759288487183783710187989058805702790011645977554775460443645765721522176\n", + "351901034167809542437767654117913660123840843518536037241881183738367628545303094238616785299632379861533285982965583915062252244653763578370681611378257165073623943594319857812499068734428936543304189449615814594026446196609218465947771509723314340334838066432525990064581977581884434412832966748021659047829010685156290508604045500084477173025521378252654879610949454809579000560812582886131512770342089145815488556488665928246326551872176364306891465031781398575920917611674470447938495638845033686274264928681117234732824215128060596585807924140116582602345937862055938298614969867518576974367567420375978117611405580023291955109550920887291531443044352\n", + "703802068335619084875535308235827320247681687037072074483762367476735257090606188477233570599264759723066571965931167830124504489307527156741363222756514330147247887188639715624998137468857873086608378899231629188052892393218436931895543019446628680669676132865051980129163955163768868825665933496043318095658021370312581017208091000168954346051042756505309759221898909619158001121625165772263025540684178291630977112977331856492653103744352728613782930063562797151841835223348940895876991277690067372548529857362234469465648430256121193171615848280233165204691875724111876597229939735037153948735134840751956235222811160046583910219101841774583062886088704\n", + "1407604136671238169751070616471654640495363374074144148967524734953470514181212376954467141198529519446133143931862335660249008978615054313482726445513028660294495774377279431249996274937715746173216757798463258376105784786436873863791086038893257361339352265730103960258327910327537737651331866992086636191316042740625162034416182000337908692102085513010619518443797819238316002243250331544526051081368356583261954225954663712985306207488705457227565860127125594303683670446697881791753982555380134745097059714724468938931296860512242386343231696560466330409383751448223753194459879470074307897470269681503912470445622320093167820438203683549166125772177408\n", + "2815208273342476339502141232943309280990726748148288297935049469906941028362424753908934282397059038892266287863724671320498017957230108626965452891026057320588991548754558862499992549875431492346433515596926516752211569572873747727582172077786514722678704531460207920516655820655075475302663733984173272382632085481250324068832364000675817384204171026021239036887595638476632004486500663089052102162736713166523908451909327425970612414977410914455131720254251188607367340893395763583507965110760269490194119429448937877862593721024484772686463393120932660818767502896447506388919758940148615794940539363007824940891244640186335640876407367098332251544354816\n", + "5630416546684952679004282465886618561981453496296576595870098939813882056724849507817868564794118077784532575727449342640996035914460217253930905782052114641177983097509117724999985099750862984692867031193853033504423139145747495455164344155573029445357409062920415841033311641310150950605327467968346544765264170962500648137664728001351634768408342052042478073775191276953264008973001326178104204325473426333047816903818654851941224829954821828910263440508502377214734681786791527167015930221520538980388238858897875755725187442048969545372926786241865321637535005792895012777839517880297231589881078726015649881782489280372671281752814734196664503088709632\n", + "11260833093369905358008564931773237123962906992593153191740197879627764113449699015635737129588236155569065151454898685281992071828920434507861811564104229282355966195018235449999970199501725969385734062387706067008846278291494990910328688311146058890714818125840831682066623282620301901210654935936693089530528341925001296275329456002703269536816684104084956147550382553906528017946002652356208408650946852666095633807637309703882449659909643657820526881017004754429469363573583054334031860443041077960776477717795751511450374884097939090745853572483730643275070011585790025555679035760594463179762157452031299763564978560745342563505629468393329006177419264\n", + "22521666186739810716017129863546474247925813985186306383480395759255528226899398031271474259176472311138130302909797370563984143657840869015723623128208458564711932390036470899999940399003451938771468124775412134017692556582989981820657376622292117781429636251681663364133246565240603802421309871873386179061056683850002592550658912005406539073633368208169912295100765107813056035892005304712416817301893705332191267615274619407764899319819287315641053762034009508858938727147166108668063720886082155921552955435591503022900749768195878181491707144967461286550140023171580051111358071521188926359524314904062599527129957121490685127011258936786658012354838528\n", + "45043332373479621432034259727092948495851627970372612766960791518511056453798796062542948518352944622276260605819594741127968287315681738031447246256416917129423864780072941799999880798006903877542936249550824268035385113165979963641314753244584235562859272503363326728266493130481207604842619743746772358122113367700005185101317824010813078147266736416339824590201530215626112071784010609424833634603787410664382535230549238815529798639638574631282107524068019017717877454294332217336127441772164311843105910871183006045801499536391756362983414289934922573100280046343160102222716143042377852719048629808125199054259914242981370254022517873573316024709677056\n", + "90086664746959242864068519454185896991703255940745225533921583037022112907597592125085897036705889244552521211639189482255936574631363476062894492512833834258847729560145883599999761596013807755085872499101648536070770226331959927282629506489168471125718545006726653456532986260962415209685239487493544716244226735400010370202635648021626156294533472832679649180403060431252224143568021218849667269207574821328765070461098477631059597279277149262564215048136038035435754908588664434672254883544328623686211821742366012091602999072783512725966828579869845146200560092686320204445432286084755705438097259616250398108519828485962740508045035747146632049419354112\n", + "180173329493918485728137038908371793983406511881490451067843166074044225815195184250171794073411778489105042423278378964511873149262726952125788985025667668517695459120291767199999523192027615510171744998203297072141540452663919854565259012978336942251437090013453306913065972521924830419370478974987089432488453470800020740405271296043252312589066945665359298360806120862504448287136042437699334538415149642657530140922196955262119194558554298525128430096272076070871509817177328869344509767088657247372423643484732024183205998145567025451933657159739690292401120185372640408890864572169511410876194519232500796217039656971925481016090071494293264098838708224\n", + "360346658987836971456274077816743587966813023762980902135686332148088451630390368500343588146823556978210084846556757929023746298525453904251577970051335337035390918240583534399999046384055231020343489996406594144283080905327839709130518025956673884502874180026906613826131945043849660838740957949974178864976906941600041480810542592086504625178133891330718596721612241725008896574272084875398669076830299285315060281844393910524238389117108597050256860192544152141743019634354657738689019534177314494744847286969464048366411996291134050903867314319479380584802240370745280817781729144339022821752389038465001592434079313943850962032180142988586528197677416448\n", + "720693317975673942912548155633487175933626047525961804271372664296176903260780737000687176293647113956420169693113515858047492597050907808503155940102670674070781836481167068799998092768110462040686979992813188288566161810655679418261036051913347769005748360053813227652263890087699321677481915899948357729953813883200082961621085184173009250356267782661437193443224483450017793148544169750797338153660598570630120563688787821048476778234217194100513720385088304283486039268709315477378039068354628989489694573938928096732823992582268101807734628638958761169604480741490561635563458288678045643504778076930003184868158627887701924064360285977173056395354832896\n", + "1441386635951347885825096311266974351867252095051923608542745328592353806521561474001374352587294227912840339386227031716094985194101815617006311880205341348141563672962334137599996185536220924081373959985626376577132323621311358836522072103826695538011496720107626455304527780175398643354963831799896715459907627766400165923242170368346018500712535565322874386886448966900035586297088339501594676307321197141260241127377575642096953556468434388201027440770176608566972078537418630954756078136709257978979389147877856193465647985164536203615469257277917522339208961482981123271126916577356091287009556153860006369736317255775403848128720571954346112790709665792\n", + "2882773271902695771650192622533948703734504190103847217085490657184707613043122948002748705174588455825680678772454063432189970388203631234012623760410682696283127345924668275199992371072441848162747919971252753154264647242622717673044144207653391076022993440215252910609055560350797286709927663599793430919815255532800331846484340736692037001425071130645748773772897933800071172594176679003189352614642394282520482254755151284193907112936868776402054881540353217133944157074837261909512156273418515957958778295755712386931295970329072407230938514555835044678417922965962246542253833154712182574019112307720012739472634511550807696257441143908692225581419331584\n", + "5765546543805391543300385245067897407469008380207694434170981314369415226086245896005497410349176911651361357544908126864379940776407262468025247520821365392566254691849336550399984742144883696325495839942505506308529294485245435346088288415306782152045986880430505821218111120701594573419855327199586861839630511065600663692968681473384074002850142261291497547545795867600142345188353358006378705229284788565040964509510302568387814225873737552804109763080706434267888314149674523819024312546837031915917556591511424773862591940658144814461877029111670089356835845931924493084507666309424365148038224615440025478945269023101615392514882287817384451162838663168\n", + "11531093087610783086600770490135794814938016760415388868341962628738830452172491792010994820698353823302722715089816253728759881552814524936050495041642730785132509383698673100799969484289767392650991679885011012617058588970490870692176576830613564304091973760861011642436222241403189146839710654399173723679261022131201327385937362946768148005700284522582995095091591735200284690376706716012757410458569577130081929019020605136775628451747475105608219526161412868535776628299349047638048625093674063831835113183022849547725183881316289628923754058223340178713671691863848986169015332618848730296076449230880050957890538046203230785029764575634768902325677326336\n", + "23062186175221566173201540980271589629876033520830777736683925257477660904344983584021989641396707646605445430179632507457519763105629049872100990083285461570265018767397346201599938968579534785301983359770022025234117177940981741384353153661227128608183947521722023284872444482806378293679421308798347447358522044262402654771874725893536296011400569045165990190183183470400569380753413432025514820917139154260163858038041210273551256903494950211216439052322825737071553256598698095276097250187348127663670226366045699095450367762632579257847508116446680357427343383727697972338030665237697460592152898461760101915781076092406461570059529151269537804651354652672\n", + "46124372350443132346403081960543179259752067041661555473367850514955321808689967168043979282793415293210890860359265014915039526211258099744201980166570923140530037534794692403199877937159069570603966719540044050468234355881963482768706307322454257216367895043444046569744888965612756587358842617596694894717044088524805309543749451787072592022801138090331980380366366940801138761506826864051029641834278308520327716076082420547102513806989900422432878104645651474143106513197396190552194500374696255327340452732091398190900735525265158515695016232893360714854686767455395944676061330475394921184305796923520203831562152184812923140119058302539075609302709305344\n", + "92248744700886264692806163921086358519504134083323110946735701029910643617379934336087958565586830586421781720718530029830079052422516199488403960333141846281060075069589384806399755874318139141207933439080088100936468711763926965537412614644908514432735790086888093139489777931225513174717685235193389789434088177049610619087498903574145184045602276180663960760732733881602277523013653728102059283668556617040655432152164841094205027613979800844865756209291302948286213026394792381104389000749392510654680905464182796381801471050530317031390032465786721429709373534910791889352122660950789842368611593847040407663124304369625846280238116605078151218605418610688\n", + "184497489401772529385612327842172717039008268166646221893471402059821287234759868672175917131173661172843563441437060059660158104845032398976807920666283692562120150139178769612799511748636278282415866878160176201872937423527853931074825229289817028865471580173776186278979555862451026349435370470386779578868176354099221238174997807148290368091204552361327921521465467763204555046027307456204118567337113234081310864304329682188410055227959601689731512418582605896572426052789584762208778001498785021309361810928365592763602942101060634062780064931573442859418747069821583778704245321901579684737223187694080815326248608739251692560476233210156302437210837221376\n", + "368994978803545058771224655684345434078016536333292443786942804119642574469519737344351834262347322345687126882874120119320316209690064797953615841332567385124240300278357539225599023497272556564831733756320352403745874847055707862149650458579634057730943160347552372557959111724902052698870740940773559157736352708198442476349995614296580736182409104722655843042930935526409110092054614912408237134674226468162621728608659364376820110455919203379463024837165211793144852105579169524417556002997570042618723621856731185527205884202121268125560129863146885718837494139643167557408490643803159369474446375388161630652497217478503385120952466420312604874421674442752\n", + "737989957607090117542449311368690868156033072666584887573885608239285148939039474688703668524694644691374253765748240238640632419380129595907231682665134770248480600556715078451198046994545113129663467512640704807491749694111415724299300917159268115461886320695104745115918223449804105397741481881547118315472705416396884952699991228593161472364818209445311686085861871052818220184109229824816474269348452936325243457217318728753640220911838406758926049674330423586289704211158339048835112005995140085237447243713462371054411768404242536251120259726293771437674988279286335114816981287606318738948892750776323261304994434957006770241904932840625209748843348885504\n", + "1475979915214180235084898622737381736312066145333169775147771216478570297878078949377407337049389289382748507531496480477281264838760259191814463365330269540496961201113430156902396093989090226259326935025281409614983499388222831448598601834318536230923772641390209490231836446899608210795482963763094236630945410832793769905399982457186322944729636418890623372171723742105636440368218459649632948538696905872650486914434637457507280441823676813517852099348660847172579408422316678097670224011990280170474894487426924742108823536808485072502240519452587542875349976558572670229633962575212637477897785501552646522609988869914013540483809865681250419497686697771008\n", + "2951959830428360470169797245474763472624132290666339550295542432957140595756157898754814674098778578765497015062992960954562529677520518383628926730660539080993922402226860313804792187978180452518653870050562819229966998776445662897197203668637072461847545282780418980463672893799216421590965927526188473261890821665587539810799964914372645889459272837781246744343447484211272880736436919299265897077393811745300973828869274915014560883647353627035704198697321694345158816844633356195340448023980560340949788974853849484217647073616970145004481038905175085750699953117145340459267925150425274955795571003105293045219977739828027080967619731362500838995373395542016\n", + "5903919660856720940339594490949526945248264581332679100591084865914281191512315797509629348197557157530994030125985921909125059355041036767257853461321078161987844804453720627609584375956360905037307740101125638459933997552891325794394407337274144923695090565560837960927345787598432843181931855052376946523781643331175079621599929828745291778918545675562493488686894968422545761472873838598531794154787623490601947657738549830029121767294707254071408397394643388690317633689266712390680896047961120681899577949707698968435294147233940290008962077810350171501399906234290680918535850300850549911591142006210586090439955479656054161935239462725001677990746791084032\n", + "11807839321713441880679188981899053890496529162665358201182169731828562383024631595019258696395114315061988060251971843818250118710082073534515706922642156323975689608907441255219168751912721810074615480202251276919867995105782651588788814674548289847390181131121675921854691575196865686363863710104753893047563286662350159243199859657490583557837091351124986977373789936845091522945747677197063588309575246981203895315477099660058243534589414508142816794789286777380635267378533424781361792095922241363799155899415397936870588294467880580017924155620700343002799812468581361837071700601701099823182284012421172180879910959312108323870478925450003355981493582168064\n", + "23615678643426883761358377963798107780993058325330716402364339463657124766049263190038517392790228630123976120503943687636500237420164147069031413845284312647951379217814882510438337503825443620149230960404502553839735990211565303177577629349096579694780362262243351843709383150393731372727727420209507786095126573324700318486399719314981167115674182702249973954747579873690183045891495354394127176619150493962407790630954199320116487069178829016285633589578573554761270534757066849562723584191844482727598311798830795873741176588935761160035848311241400686005599624937162723674143401203402199646364568024842344361759821918624216647740957850900006711962987164336128\n", + "47231357286853767522716755927596215561986116650661432804728678927314249532098526380077034785580457260247952241007887375273000474840328294138062827690568625295902758435629765020876675007650887240298461920809005107679471980423130606355155258698193159389560724524486703687418766300787462745455454840419015572190253146649400636972799438629962334231348365404499947909495159747380366091782990708788254353238300987924815581261908398640232974138357658032571267179157147109522541069514133699125447168383688965455196623597661591747482353177871522320071696622482801372011199249874325447348286802406804399292729136049684688723519643837248433295481915701800013423925974328672256\n", + "94462714573707535045433511855192431123972233301322865609457357854628499064197052760154069571160914520495904482015774750546000949680656588276125655381137250591805516871259530041753350015301774480596923841618010215358943960846261212710310517396386318779121449048973407374837532601574925490910909680838031144380506293298801273945598877259924668462696730808999895818990319494760732183565981417576508706476601975849631162523816797280465948276715316065142534358314294219045082139028267398250894336767377930910393247195323183494964706355743044640143393244965602744022398499748650894696573604813608798585458272099369377447039287674496866590963831403600026847851948657344512\n", + "188925429147415070090867023710384862247944466602645731218914715709256998128394105520308139142321829040991808964031549501092001899361313176552251310762274501183611033742519060083506700030603548961193847683236020430717887921692522425420621034792772637558242898097946814749675065203149850981821819361676062288761012586597602547891197754519849336925393461617999791637980638989521464367131962835153017412953203951699262325047633594560931896553430632130285068716628588438090164278056534796501788673534755861820786494390646366989929412711486089280286786489931205488044796999497301789393147209627217597170916544198738754894078575348993733181927662807200053695703897314689024\n", + "377850858294830140181734047420769724495888933205291462437829431418513996256788211040616278284643658081983617928063099002184003798722626353104502621524549002367222067485038120167013400061207097922387695366472040861435775843385044850841242069585545275116485796195893629499350130406299701963643638723352124577522025173195205095782395509039698673850786923235999583275961277979042928734263925670306034825906407903398524650095267189121863793106861264260570137433257176876180328556113069593003577347069511723641572988781292733979858825422972178560573572979862410976089593998994603578786294419254435194341833088397477509788157150697987466363855325614400107391407794629378048\n", + "755701716589660280363468094841539448991777866410582924875658862837027992513576422081232556569287316163967235856126198004368007597445252706209005243049098004734444134970076240334026800122414195844775390732944081722871551686770089701682484139171090550232971592391787258998700260812599403927287277446704249155044050346390410191564791018079397347701573846471999166551922555958085857468527851340612069651812815806797049300190534378243727586213722528521140274866514353752360657112226139186007154694139023447283145977562585467959717650845944357121147145959724821952179187997989207157572588838508870388683666176794955019576314301395974932727710651228800214782815589258756096\n", + "1511403433179320560726936189683078897983555732821165849751317725674055985027152844162465113138574632327934471712252396008736015194890505412418010486098196009468888269940152480668053600244828391689550781465888163445743103373540179403364968278342181100465943184783574517997400521625198807854574554893408498310088100692780820383129582036158794695403147692943998333103845111916171714937055702681224139303625631613594098600381068756487455172427445057042280549733028707504721314224452278372014309388278046894566291955125170935919435301691888714242294291919449643904358375995978414315145177677017740777367332353589910039152628602791949865455421302457600429565631178517512192\n", + "3022806866358641121453872379366157795967111465642331699502635451348111970054305688324930226277149264655868943424504792017472030389781010824836020972196392018937776539880304961336107200489656783379101562931776326891486206747080358806729936556684362200931886369567149035994801043250397615709149109786816996620176201385561640766259164072317589390806295385887996666207690223832343429874111405362448278607251263227188197200762137512974910344854890114084561099466057415009442628448904556744028618776556093789132583910250341871838870603383777428484588583838899287808716751991956828630290355354035481554734664707179820078305257205583899730910842604915200859131262357035024384\n", + "6045613732717282242907744758732315591934222931284663399005270902696223940108611376649860452554298529311737886849009584034944060779562021649672041944392784037875553079760609922672214400979313566758203125863552653782972413494160717613459873113368724401863772739134298071989602086500795231418298219573633993240352402771123281532518328144635178781612590771775993332415380447664686859748222810724896557214502526454376394401524275025949820689709780228169122198932114830018885256897809113488057237553112187578265167820500683743677741206767554856969177167677798575617433503983913657260580710708070963109469329414359640156610514411167799461821685209830401718262524714070048768\n", + "12091227465434564485815489517464631183868445862569326798010541805392447880217222753299720905108597058623475773698019168069888121559124043299344083888785568075751106159521219845344428801958627133516406251727105307565944826988321435226919746226737448803727545478268596143979204173001590462836596439147267986480704805542246563065036656289270357563225181543551986664830760895329373719496445621449793114429005052908752788803048550051899641379419560456338244397864229660037770513795618226976114475106224375156530335641001367487355482413535109713938354335355597151234867007967827314521161421416141926218938658828719280313221028822335598923643370419660803436525049428140097536\n", + "24182454930869128971630979034929262367736891725138653596021083610784895760434445506599441810217194117246951547396038336139776243118248086598688167777571136151502212319042439690688857603917254267032812503454210615131889653976642870453839492453474897607455090956537192287958408346003180925673192878294535972961409611084493126130073312578540715126450363087103973329661521790658747438992891242899586228858010105817505577606097100103799282758839120912676488795728459320075541027591236453952228950212448750313060671282002734974710964827070219427876708670711194302469734015935654629042322842832283852437877317657438560626442057644671197847286740839321606873050098856280195072\n", + "48364909861738257943261958069858524735473783450277307192042167221569791520868891013198883620434388234493903094792076672279552486236496173197376335555142272303004424638084879381377715207834508534065625006908421230263779307953285740907678984906949795214910181913074384575916816692006361851346385756589071945922819222168986252260146625157081430252900726174207946659323043581317494877985782485799172457716020211635011155212194200207598565517678241825352977591456918640151082055182472907904457900424897500626121342564005469949421929654140438855753417341422388604939468031871309258084645685664567704875754635314877121252884115289342395694573481678643213746100197712560390144\n", + "96729819723476515886523916139717049470947566900554614384084334443139583041737782026397767240868776468987806189584153344559104972472992346394752671110284544606008849276169758762755430415669017068131250013816842460527558615906571481815357969813899590429820363826148769151833633384012723702692771513178143891845638444337972504520293250314162860505801452348415893318646087162634989755971564971598344915432040423270022310424388400415197131035356483650705955182913837280302164110364945815808915800849795001252242685128010939898843859308280877711506834682844777209878936063742618516169291371329135409751509270629754242505768230578684791389146963357286427492200395425120780288\n", + "193459639446953031773047832279434098941895133801109228768168668886279166083475564052795534481737552937975612379168306689118209944945984692789505342220569089212017698552339517525510860831338034136262500027633684921055117231813142963630715939627799180859640727652297538303667266768025447405385543026356287783691276888675945009040586500628325721011602904696831786637292174325269979511943129943196689830864080846540044620848776800830394262070712967301411910365827674560604328220729891631617831601699590002504485370256021879797687718616561755423013669365689554419757872127485237032338582742658270819503018541259508485011536461157369582778293926714572854984400790850241560576\n", + "386919278893906063546095664558868197883790267602218457536337337772558332166951128105591068963475105875951224758336613378236419889891969385579010684441138178424035397104679035051021721662676068272525000055267369842110234463626285927261431879255598361719281455304595076607334533536050894810771086052712575567382553777351890018081173001256651442023205809393663573274584348650539959023886259886393379661728161693080089241697553601660788524141425934602823820731655349121208656441459783263235663203399180005008970740512043759595375437233123510846027338731379108839515744254970474064677165485316541639006037082519016970023072922314739165556587853429145709968801581700483121152\n", + "773838557787812127092191329117736395767580535204436915072674675545116664333902256211182137926950211751902449516673226756472839779783938771158021368882276356848070794209358070102043443325352136545050000110534739684220468927252571854522863758511196723438562910609190153214669067072101789621542172105425151134765107554703780036162346002513302884046411618787327146549168697301079918047772519772786759323456323386160178483395107203321577048282851869205647641463310698242417312882919566526471326406798360010017941481024087519190750874466247021692054677462758217679031488509940948129354330970633083278012074165038033940046145844629478331113175706858291419937603163400966242304\n", + "1547677115575624254184382658235472791535161070408873830145349351090233328667804512422364275853900423503804899033346453512945679559567877542316042737764552713696141588418716140204086886650704273090100000221069479368440937854505143709045727517022393446877125821218380306429338134144203579243084344210850302269530215109407560072324692005026605768092823237574654293098337394602159836095545039545573518646912646772320356966790214406643154096565703738411295282926621396484834625765839133052942652813596720020035882962048175038381501748932494043384109354925516435358062977019881896258708661941266166556024148330076067880092291689258956662226351413716582839875206326801932484608\n", + "3095354231151248508368765316470945583070322140817747660290698702180466657335609024844728551707800847007609798066692907025891359119135755084632085475529105427392283176837432280408173773301408546180200000442138958736881875709010287418091455034044786893754251642436760612858676268288407158486168688421700604539060430218815120144649384010053211536185646475149308586196674789204319672191090079091147037293825293544640713933580428813286308193131407476822590565853242792969669251531678266105885305627193440040071765924096350076763003497864988086768218709851032870716125954039763792517417323882532333112048296660152135760184583378517913324452702827433165679750412653603864969216\n", + "6190708462302497016737530632941891166140644281635495320581397404360933314671218049689457103415601694015219596133385814051782718238271510169264170951058210854784566353674864560816347546602817092360400000884277917473763751418020574836182910068089573787508503284873521225717352536576814316972337376843401209078120860437630240289298768020106423072371292950298617172393349578408639344382180158182294074587650587089281427867160857626572616386262814953645181131706485585939338503063356532211770611254386880080143531848192700153526006995729976173536437419702065741432251908079527585034834647765064666224096593320304271520369166757035826648905405654866331359500825307207729938432\n", + "12381416924604994033475061265883782332281288563270990641162794808721866629342436099378914206831203388030439192266771628103565436476543020338528341902116421709569132707349729121632695093205634184720800001768555834947527502836041149672365820136179147575017006569747042451434705073153628633944674753686802418156241720875260480578597536040212846144742585900597234344786699156817278688764360316364588149175301174178562855734321715253145232772525629907290362263412971171878677006126713064423541222508773760160287063696385400307052013991459952347072874839404131482864503816159055170069669295530129332448193186640608543040738333514071653297810811309732662719001650614415459876864\n", + "24762833849209988066950122531767564664562577126541981282325589617443733258684872198757828413662406776060878384533543256207130872953086040677056683804232843419138265414699458243265390186411268369441600003537111669895055005672082299344731640272358295150034013139494084902869410146307257267889349507373604836312483441750520961157195072080425692289485171801194468689573398313634557377528720632729176298350602348357125711468643430506290465545051259814580724526825942343757354012253426128847082445017547520320574127392770800614104027982919904694145749678808262965729007632318110340139338591060258664896386373281217086081476667028143306595621622619465325438003301228830919753728\n", + "49525667698419976133900245063535129329125154253083962564651179234887466517369744397515656827324813552121756769067086512414261745906172081354113367608465686838276530829398916486530780372822536738883200007074223339790110011344164598689463280544716590300068026278988169805738820292614514535778699014747209672624966883501041922314390144160851384578970343602388937379146796627269114755057441265458352596701204696714251422937286861012580931090102519629161449053651884687514708024506852257694164890035095040641148254785541601228208055965839809388291499357616525931458015264636220680278677182120517329792772746562434172162953334056286613191243245238930650876006602457661839507456\n", + "99051335396839952267800490127070258658250308506167925129302358469774933034739488795031313654649627104243513538134173024828523491812344162708226735216931373676553061658797832973061560745645073477766400014148446679580220022688329197378926561089433180600136052557976339611477640585229029071557398029494419345249933767002083844628780288321702769157940687204777874758293593254538229510114882530916705193402409393428502845874573722025161862180205039258322898107303769375029416049013704515388329780070190081282296509571083202456416111931679618776582998715233051862916030529272441360557354364241034659585545493124868344325906668112573226382486490477861301752013204915323679014912\n", + "198102670793679904535600980254140517316500617012335850258604716939549866069478977590062627309299254208487027076268346049657046983624688325416453470433862747353106123317595665946123121491290146955532800028296893359160440045376658394757853122178866361200272105115952679222955281170458058143114796058988838690499867534004167689257560576643405538315881374409555749516587186509076459020229765061833410386804818786857005691749147444050323724360410078516645796214607538750058832098027409030776659560140380162564593019142166404912832223863359237553165997430466103725832061058544882721114708728482069319171090986249736688651813336225146452764972980955722603504026409830647358029824\n", + "396205341587359809071201960508281034633001234024671700517209433879099732138957955180125254618598508416974054152536692099314093967249376650832906940867725494706212246635191331892246242982580293911065600056593786718320880090753316789515706244357732722400544210231905358445910562340916116286229592117977677380999735068008335378515121153286811076631762748819111499033174373018152918040459530123666820773609637573714011383498294888100647448720820157033291592429215077500117664196054818061553319120280760325129186038284332809825664447726718475106331994860932207451664122117089765442229417456964138638342181972499473377303626672450292905529945961911445207008052819661294716059648\n", + "792410683174719618142403921016562069266002468049343401034418867758199464277915910360250509237197016833948108305073384198628187934498753301665813881735450989412424493270382663784492485965160587822131200113187573436641760181506633579031412488715465444801088420463810716891821124681832232572459184235955354761999470136016670757030242306573622153263525497638222998066348746036305836080919060247333641547219275147428022766996589776201294897441640314066583184858430155000235328392109636123106638240561520650258372076568665619651328895453436950212663989721864414903328244234179530884458834913928277276684363944998946754607253344900585811059891923822890414016105639322589432119296\n", + "1584821366349439236284807842033124138532004936098686802068837735516398928555831820720501018474394033667896216610146768397256375868997506603331627763470901978824848986540765327568984971930321175644262400226375146873283520363013267158062824977430930889602176840927621433783642249363664465144918368471910709523998940272033341514060484613147244306527050995276445996132697492072611672161838120494667283094438550294856045533993179552402589794883280628133166369716860310000470656784219272246213276481123041300516744153137331239302657790906873900425327979443728829806656488468359061768917669827856554553368727889997893509214506689801171622119783847645780828032211278645178864238592\n", + "3169642732698878472569615684066248277064009872197373604137675471032797857111663641441002036948788067335792433220293536794512751737995013206663255526941803957649697973081530655137969943860642351288524800452750293746567040726026534316125649954861861779204353681855242867567284498727328930289836736943821419047997880544066683028120969226294488613054101990552891992265394984145223344323676240989334566188877100589712091067986359104805179589766561256266332739433720620000941313568438544492426552962246082601033488306274662478605315581813747800850655958887457659613312976936718123537835339655713109106737455779995787018429013379602343244239567695291561656064422557290357728477184\n", + "6339285465397756945139231368132496554128019744394747208275350942065595714223327282882004073897576134671584866440587073589025503475990026413326511053883607915299395946163061310275939887721284702577049600905500587493134081452053068632251299909723723558408707363710485735134568997454657860579673473887642838095995761088133366056241938452588977226108203981105783984530789968290446688647352481978669132377754201179424182135972718209610359179533122512532665478867441240001882627136877088984853105924492165202066976612549324957210631163627495601701311917774915319226625953873436247075670679311426218213474911559991574036858026759204686488479135390583123312128845114580715456954368\n", + "12678570930795513890278462736264993108256039488789494416550701884131191428446654565764008147795152269343169732881174147178051006951980052826653022107767215830598791892326122620551879775442569405154099201811001174986268162904106137264502599819447447116817414727420971470269137994909315721159346947775285676191991522176266732112483876905177954452216407962211567969061579936580893377294704963957338264755508402358848364271945436419220718359066245025065330957734882480003765254273754177969706211848984330404133953225098649914421262327254991203402623835549830638453251907746872494151341358622852436426949823119983148073716053518409372976958270781166246624257690229161430913908736\n", + "25357141861591027780556925472529986216512078977578988833101403768262382856893309131528016295590304538686339465762348294356102013903960105653306044215534431661197583784652245241103759550885138810308198403622002349972536325808212274529005199638894894233634829454841942940538275989818631442318693895550571352383983044352533464224967753810355908904432815924423135938123159873161786754589409927914676529511016804717696728543890872838441436718132490050130661915469764960007530508547508355939412423697968660808267906450197299828842524654509982406805247671099661276906503815493744988302682717245704872853899646239966296147432107036818745953916541562332493248515380458322861827817472\n", + "50714283723182055561113850945059972433024157955157977666202807536524765713786618263056032591180609077372678931524696588712204027807920211306612088431068863322395167569304490482207519101770277620616396807244004699945072651616424549058010399277789788467269658909683885881076551979637262884637387791101142704767966088705066928449935507620711817808865631848846271876246319746323573509178819855829353059022033609435393457087781745676882873436264980100261323830939529920015061017095016711878824847395937321616535812900394599657685049309019964813610495342199322553813007630987489976605365434491409745707799292479932592294864214073637491907833083124664986497030760916645723655634944\n", + "101428567446364111122227701890119944866048315910315955332405615073049531427573236526112065182361218154745357863049393177424408055615840422613224176862137726644790335138608980964415038203540555241232793614488009399890145303232849098116020798555579576934539317819367771762153103959274525769274775582202285409535932177410133856899871015241423635617731263697692543752492639492647147018357639711658706118044067218870786914175563491353765746872529960200522647661879059840030122034190033423757649694791874643233071625800789199315370098618039929627220990684398645107626015261974979953210730868982819491415598584959865184589728428147274983815666166249329972994061521833291447311269888\n", + "202857134892728222244455403780239889732096631820631910664811230146099062855146473052224130364722436309490715726098786354848816111231680845226448353724275453289580670277217961928830076407081110482465587228976018799780290606465698196232041597111159153869078635638735543524306207918549051538549551164404570819071864354820267713799742030482847271235462527395385087504985278985294294036715279423317412236088134437741573828351126982707531493745059920401045295323758119680060244068380066847515299389583749286466143251601578398630740197236079859254441981368797290215252030523949959906421461737965638982831197169919730369179456856294549967631332332498659945988123043666582894622539776\n", + "405714269785456444488910807560479779464193263641263821329622460292198125710292946104448260729444872618981431452197572709697632222463361690452896707448550906579161340554435923857660152814162220964931174457952037599560581212931396392464083194222318307738157271277471087048612415837098103077099102328809141638143728709640535427599484060965694542470925054790770175009970557970588588073430558846634824472176268875483147656702253965415062987490119840802090590647516239360120488136760133695030598779167498572932286503203156797261480394472159718508883962737594580430504061047899919812842923475931277965662394339839460738358913712589099935262664664997319891976246087333165789245079552\n", + "811428539570912888977821615120959558928386527282527642659244920584396251420585892208896521458889745237962862904395145419395264444926723380905793414897101813158322681108871847715320305628324441929862348915904075199121162425862792784928166388444636615476314542554942174097224831674196206154198204657618283276287457419281070855198968121931389084941850109581540350019941115941177176146861117693269648944352537750966295313404507930830125974980239681604181181295032478720240976273520267390061197558334997145864573006406313594522960788944319437017767925475189160861008122095799839625685846951862555931324788679678921476717827425178199870525329329994639783952492174666331578490159104\n", + "1622857079141825777955643230241919117856773054565055285318489841168792502841171784417793042917779490475925725808790290838790528889853446761811586829794203626316645362217743695430640611256648883859724697831808150398242324851725585569856332776889273230952629085109884348194449663348392412308396409315236566552574914838562141710397936243862778169883700219163080700039882231882354352293722235386539297888705075501932590626809015861660251949960479363208362362590064957440481952547040534780122395116669994291729146012812627189045921577888638874035535850950378321722016244191599679251371693903725111862649577359357842953435654850356399741050658659989279567904984349332663156980318208\n", + "3245714158283651555911286460483838235713546109130110570636979682337585005682343568835586085835558980951851451617580581677581057779706893523623173659588407252633290724435487390861281222513297767719449395663616300796484649703451171139712665553778546461905258170219768696388899326696784824616792818630473133105149829677124283420795872487725556339767400438326161400079764463764708704587444470773078595777410151003865181253618031723320503899920958726416724725180129914880963905094081069560244790233339988583458292025625254378091843155777277748071071701900756643444032488383199358502743387807450223725299154718715685906871309700712799482101317319978559135809968698665326313960636416\n", + "6491428316567303111822572920967676471427092218260221141273959364675170011364687137671172171671117961903702903235161163355162115559413787047246347319176814505266581448870974781722562445026595535438898791327232601592969299406902342279425331107557092923810516340439537392777798653393569649233585637260946266210299659354248566841591744975451112679534800876652322800159528927529417409174888941546157191554820302007730362507236063446641007799841917452833449450360259829761927810188162139120489580466679977166916584051250508756183686311554555496142143403801513286888064976766398717005486775614900447450598309437431371813742619401425598964202634639957118271619937397330652627921272832\n", + "12982856633134606223645145841935352942854184436520442282547918729350340022729374275342344343342235923807405806470322326710324231118827574094492694638353629010533162897741949563445124890053191070877797582654465203185938598813804684558850662215114185847621032680879074785555597306787139298467171274521892532420599318708497133683183489950902225359069601753304645600319057855058834818349777883092314383109640604015460725014472126893282015599683834905666898900720519659523855620376324278240979160933359954333833168102501017512367372623109110992284286807603026573776129953532797434010973551229800894901196618874862743627485238802851197928405269279914236543239874794661305255842545664\n", + "25965713266269212447290291683870705885708368873040884565095837458700680045458748550684688686684471847614811612940644653420648462237655148188985389276707258021066325795483899126890249780106382141755595165308930406371877197627609369117701324430228371695242065361758149571111194613574278596934342549043785064841198637416994267366366979901804450718139203506609291200638115710117669636699555766184628766219281208030921450028944253786564031199367669811333797801441039319047711240752648556481958321866719908667666336205002035024734745246218221984568573615206053147552259907065594868021947102459601789802393237749725487254970477605702395856810538559828473086479749589322610511685091328\n", + "51931426532538424894580583367741411771416737746081769130191674917401360090917497101369377373368943695229623225881289306841296924475310296377970778553414516042132651590967798253780499560212764283511190330617860812743754395255218738235402648860456743390484130723516299142222389227148557193868685098087570129682397274833988534732733959803608901436278407013218582401276231420235339273399111532369257532438562416061842900057888507573128062398735339622667595602882078638095422481505297112963916643733439817335332672410004070049469490492436443969137147230412106295104519814131189736043894204919203579604786475499450974509940955211404791713621077119656946172959499178645221023370182656\n", + "103862853065076849789161166735482823542833475492163538260383349834802720181834994202738754746737887390459246451762578613682593848950620592755941557106829032084265303181935596507560999120425528567022380661235721625487508790510437476470805297720913486780968261447032598284444778454297114387737370196175140259364794549667977069465467919607217802872556814026437164802552462840470678546798223064738515064877124832123685800115777015146256124797470679245335191205764157276190844963010594225927833287466879634670665344820008140098938980984872887938274294460824212590209039628262379472087788409838407159209572950998901949019881910422809583427242154239313892345918998357290442046740365312\n", + "207725706130153699578322333470965647085666950984327076520766699669605440363669988405477509493475774780918492903525157227365187697901241185511883114213658064168530606363871193015121998240851057134044761322471443250975017581020874952941610595441826973561936522894065196568889556908594228775474740392350280518729589099335954138930935839214435605745113628052874329605104925680941357093596446129477030129754249664247371600231554030292512249594941358490670382411528314552381689926021188451855666574933759269341330689640016280197877961969745775876548588921648425180418079256524758944175576819676814318419145901997803898039763820845619166854484308478627784691837996714580884093480730624\n", + "415451412260307399156644666941931294171333901968654153041533399339210880727339976810955018986951549561836985807050314454730375395802482371023766228427316128337061212727742386030243996481702114268089522644942886501950035162041749905883221190883653947123873045788130393137779113817188457550949480784700561037459178198671908277861871678428871211490227256105748659210209851361882714187192892258954060259508499328494743200463108060585024499189882716981340764823056629104763379852042376903711333149867518538682661379280032560395755923939491551753097177843296850360836158513049517888351153639353628636838291803995607796079527641691238333708968616957255569383675993429161768186961461248\n", + "830902824520614798313289333883862588342667803937308306083066798678421761454679953621910037973903099123673971614100628909460750791604964742047532456854632256674122425455484772060487992963404228536179045289885773003900070324083499811766442381767307894247746091576260786275558227634376915101898961569401122074918356397343816555723743356857742422980454512211497318420419702723765428374385784517908120519016998656989486400926216121170048998379765433962681529646113258209526759704084753807422666299735037077365322758560065120791511847878983103506194355686593700721672317026099035776702307278707257273676583607991215592159055283382476667417937233914511138767351986858323536373922922496\n", + "1661805649041229596626578667767725176685335607874616612166133597356843522909359907243820075947806198247347943228201257818921501583209929484095064913709264513348244850910969544120975985926808457072358090579771546007800140648166999623532884763534615788495492183152521572551116455268753830203797923138802244149836712794687633111447486713715484845960909024422994636840839405447530856748771569035816241038033997313978972801852432242340097996759530867925363059292226516419053519408169507614845332599470074154730645517120130241583023695757966207012388711373187401443344634052198071553404614557414514547353167215982431184318110566764953334835874467829022277534703973716647072747845844992\n", + "3323611298082459193253157335535450353370671215749233224332267194713687045818719814487640151895612396494695886456402515637843003166419858968190129827418529026696489701821939088241951971853616914144716181159543092015600281296333999247065769527069231576990984366305043145102232910537507660407595846277604488299673425589375266222894973427430969691921818048845989273681678810895061713497543138071632482076067994627957945603704864484680195993519061735850726118584453032838107038816339015229690665198940148309461291034240260483166047391515932414024777422746374802886689268104396143106809229114829029094706334431964862368636221133529906669671748935658044555069407947433294145495691689984\n", + "6647222596164918386506314671070900706741342431498466448664534389427374091637439628975280303791224792989391772912805031275686006332839717936380259654837058053392979403643878176483903943707233828289432362319086184031200562592667998494131539054138463153981968732610086290204465821075015320815191692555208976599346851178750532445789946854861939383843636097691978547363357621790123426995086276143264964152135989255915891207409728969360391987038123471701452237168906065676214077632678030459381330397880296618922582068480520966332094783031864828049554845492749605773378536208792286213618458229658058189412668863929724737272442267059813339343497871316089110138815894866588290991383379968\n", + "13294445192329836773012629342141801413482684862996932897329068778854748183274879257950560607582449585978783545825610062551372012665679435872760519309674116106785958807287756352967807887414467656578864724638172368062401125185335996988263078108276926307963937465220172580408931642150030641630383385110417953198693702357501064891579893709723878767687272195383957094726715243580246853990172552286529928304271978511831782414819457938720783974076246943402904474337812131352428155265356060918762660795760593237845164136961041932664189566063729656099109690985499211546757072417584572427236916459316116378825337727859449474544884534119626678686995742632178220277631789733176581982766759936\n", + "26588890384659673546025258684283602826965369725993865794658137557709496366549758515901121215164899171957567091651220125102744025331358871745521038619348232213571917614575512705935615774828935313157729449276344736124802250370671993976526156216553852615927874930440345160817863284300061283260766770220835906397387404715002129783159787419447757535374544390767914189453430487160493707980345104573059856608543957023663564829638915877441567948152493886805808948675624262704856310530712121837525321591521186475690328273922083865328379132127459312198219381970998423093514144835169144854473832918632232757650675455718898949089769068239253357373991485264356440555263579466353163965533519872\n", + "53177780769319347092050517368567205653930739451987731589316275115418992733099517031802242430329798343915134183302440250205488050662717743491042077238696464427143835229151025411871231549657870626315458898552689472249604500741343987953052312433107705231855749860880690321635726568600122566521533540441671812794774809430004259566319574838895515070749088781535828378906860974320987415960690209146119713217087914047327129659277831754883135896304987773611617897351248525409712621061424243675050643183042372951380656547844167730656758264254918624396438763941996846187028289670338289708947665837264465515301350911437797898179538136478506714747982970528712881110527158932706327931067039744\n", + "106355561538638694184101034737134411307861478903975463178632550230837985466199034063604484860659596687830268366604880500410976101325435486982084154477392928854287670458302050823742463099315741252630917797105378944499209001482687975906104624866215410463711499721761380643271453137200245133043067080883343625589549618860008519132639149677791030141498177563071656757813721948641974831921380418292239426434175828094654259318555663509766271792609975547223235794702497050819425242122848487350101286366084745902761313095688335461313516528509837248792877527883993692374056579340676579417895331674528931030602701822875595796359076272957013429495965941057425762221054317865412655862134079488\n", + "212711123077277388368202069474268822615722957807950926357265100461675970932398068127208969721319193375660536733209761000821952202650870973964168308954785857708575340916604101647484926198631482505261835594210757888998418002965375951812209249732430820927422999443522761286542906274400490266086134161766687251179099237720017038265278299355582060282996355126143313515627443897283949663842760836584478852868351656189308518637111327019532543585219951094446471589404994101638850484245696974700202572732169491805522626191376670922627033057019674497585755055767987384748113158681353158835790663349057862061205403645751191592718152545914026858991931882114851524442108635730825311724268158976\n", + "425422246154554776736404138948537645231445915615901852714530200923351941864796136254417939442638386751321073466419522001643904405301741947928336617909571715417150681833208203294969852397262965010523671188421515777996836005930751903624418499464861641854845998887045522573085812548800980532172268323533374502358198475440034076530556598711164120565992710252286627031254887794567899327685521673168957705736703312378617037274222654039065087170439902188892943178809988203277700968491393949400405145464338983611045252382753341845254066114039348995171510111535974769496226317362706317671581326698115724122410807291502383185436305091828053717983863764229703048884217271461650623448536317952\n", + "850844492309109553472808277897075290462891831231803705429060401846703883729592272508835878885276773502642146932839044003287808810603483895856673235819143430834301363666416406589939704794525930021047342376843031555993672011861503807248836998929723283709691997774091045146171625097601961064344536647066749004716396950880068153061113197422328241131985420504573254062509775589135798655371043346337915411473406624757234074548445308078130174340879804377785886357619976406555401936982787898800810290928677967222090504765506683690508132228078697990343020223071949538992452634725412635343162653396231448244821614583004766370872610183656107435967727528459406097768434542923301246897072635904\n", + "1701688984618219106945616555794150580925783662463607410858120803693407767459184545017671757770553547005284293865678088006575617621206967791713346471638286861668602727332832813179879409589051860042094684753686063111987344023723007614497673997859446567419383995548182090292343250195203922128689073294133498009432793901760136306122226394844656482263970841009146508125019551178271597310742086692675830822946813249514468149096890616156260348681759608755571772715239952813110803873965575797601620581857355934444181009531013367381016264456157395980686040446143899077984905269450825270686325306792462896489643229166009532741745220367312214871935455056918812195536869085846602493794145271808\n", + "3403377969236438213891233111588301161851567324927214821716241607386815534918369090035343515541107094010568587731356176013151235242413935583426692943276573723337205454665665626359758819178103720084189369507372126223974688047446015228995347995718893134838767991096364180584686500390407844257378146588266996018865587803520272612244452789689312964527941682018293016250039102356543194621484173385351661645893626499028936298193781232312520697363519217511143545430479905626221607747931151595203241163714711868888362019062026734762032528912314791961372080892287798155969810538901650541372650613584925792979286458332019065483490440734624429743870910113837624391073738171693204987588290543616\n", + "6806755938472876427782466223176602323703134649854429643432483214773631069836738180070687031082214188021137175462712352026302470484827871166853385886553147446674410909331331252719517638356207440168378739014744252447949376094892030457990695991437786269677535982192728361169373000780815688514756293176533992037731175607040545224488905579378625929055883364036586032500078204713086389242968346770703323291787252998057872596387562464625041394727038435022287090860959811252443215495862303190406482327429423737776724038124053469524065057824629583922744161784575596311939621077803301082745301227169851585958572916664038130966980881469248859487741820227675248782147476343386409975176581087232\n", + "13613511876945752855564932446353204647406269299708859286864966429547262139673476360141374062164428376042274350925424704052604940969655742333706771773106294893348821818662662505439035276712414880336757478029488504895898752189784060915981391982875572539355071964385456722338746001561631377029512586353067984075462351214081090448977811158757251858111766728073172065000156409426172778485936693541406646583574505996115745192775124929250082789454076870044574181721919622504886430991724606380812964654858847475553448076248106939048130115649259167845488323569151192623879242155606602165490602454339703171917145833328076261933961762938497718975483640455350497564294952686772819950353162174464\n", + "27227023753891505711129864892706409294812538599417718573729932859094524279346952720282748124328856752084548701850849408105209881939311484667413543546212589786697643637325325010878070553424829760673514956058977009791797504379568121831962783965751145078710143928770913444677492003123262754059025172706135968150924702428162180897955622317514503716223533456146344130000312818852345556971873387082813293167149011992231490385550249858500165578908153740089148363443839245009772861983449212761625929309717694951106896152496213878096260231298518335690976647138302385247758484311213204330981204908679406343834291666656152523867923525876995437950967280910700995128589905373545639900706324348928\n", + "54454047507783011422259729785412818589625077198835437147459865718189048558693905440565496248657713504169097403701698816210419763878622969334827087092425179573395287274650650021756141106849659521347029912117954019583595008759136243663925567931502290157420287857541826889354984006246525508118050345412271936301849404856324361795911244635029007432447066912292688260000625637704691113943746774165626586334298023984462980771100499717000331157816307480178296726887678490019545723966898425523251858619435389902213792304992427756192520462597036671381953294276604770495516968622426408661962409817358812687668583333312305047735847051753990875901934561821401990257179810747091279801412648697856\n", + "108908095015566022844519459570825637179250154397670874294919731436378097117387810881130992497315427008338194807403397632420839527757245938669654174184850359146790574549301300043512282213699319042694059824235908039167190017518272487327851135863004580314840575715083653778709968012493051016236100690824543872603698809712648723591822489270058014864894133824585376520001251275409382227887493548331253172668596047968925961542200999434000662315632614960356593453775356980039091447933796851046503717238870779804427584609984855512385040925194073342763906588553209540991033937244852817323924819634717625375337166666624610095471694103507981751803869123642803980514359621494182559602825297395712\n", + "217816190031132045689038919141651274358500308795341748589839462872756194234775621762261984994630854016676389614806795264841679055514491877339308348369700718293581149098602600087024564427398638085388119648471816078334380035036544974655702271726009160629681151430167307557419936024986102032472201381649087745207397619425297447183644978540116029729788267649170753040002502550818764455774987096662506345337192095937851923084401998868001324631265229920713186907550713960078182895867593702093007434477741559608855169219969711024770081850388146685527813177106419081982067874489705634647849639269435250750674333333249220190943388207015963503607738247285607961028719242988365119205650594791424\n", + "435632380062264091378077838283302548717000617590683497179678925745512388469551243524523969989261708033352779229613590529683358111028983754678616696739401436587162298197205200174049128854797276170776239296943632156668760070073089949311404543452018321259362302860334615114839872049972204064944402763298175490414795238850594894367289957080232059459576535298341506080005005101637528911549974193325012690674384191875703846168803997736002649262530459841426373815101427920156365791735187404186014868955483119217710338439939422049540163700776293371055626354212838163964135748979411269295699278538870501501348666666498440381886776414031927007215476494571215922057438485976730238411301189582848\n", + "871264760124528182756155676566605097434001235181366994359357851491024776939102487049047939978523416066705558459227181059366716222057967509357233393478802873174324596394410400348098257709594552341552478593887264313337520140146179898622809086904036642518724605720669230229679744099944408129888805526596350980829590477701189788734579914160464118919153070596683012160010010203275057823099948386650025381348768383751407692337607995472005298525060919682852747630202855840312731583470374808372029737910966238435420676879878844099080327401552586742111252708425676327928271497958822538591398557077741003002697333332996880763773552828063854014430952989142431844114876971953460476822602379165696\n", + "1742529520249056365512311353133210194868002470362733988718715702982049553878204974098095879957046832133411116918454362118733432444115935018714466786957605746348649192788820800696196515419189104683104957187774528626675040280292359797245618173808073285037449211441338460459359488199888816259777611053192701961659180955402379577469159828320928237838306141193366024320020020406550115646199896773300050762697536767502815384675215990944010597050121839365705495260405711680625463166940749616744059475821932476870841353759757688198160654803105173484222505416851352655856542995917645077182797114155482006005394666665993761527547105656127708028861905978284863688229753943906920953645204758331392\n", + "3485059040498112731024622706266420389736004940725467977437431405964099107756409948196191759914093664266822233836908724237466864888231870037428933573915211492697298385577641601392393030838378209366209914375549057253350080560584719594491236347616146570074898422882676920918718976399777632519555222106385403923318361910804759154938319656641856475676612282386732048640040040813100231292399793546600101525395073535005630769350431981888021194100243678731410990520811423361250926333881499233488118951643864953741682707519515376396321309606210346968445010833702705311713085991835290154365594228310964012010789333331987523055094211312255416057723811956569727376459507887813841907290409516662784\n", + "6970118080996225462049245412532840779472009881450935954874862811928198215512819896392383519828187328533644467673817448474933729776463740074857867147830422985394596771155283202784786061676756418732419828751098114506700161121169439188982472695232293140149796845765353841837437952799555265039110444212770807846636723821609518309876639313283712951353224564773464097280080081626200462584799587093200203050790147070011261538700863963776042388200487357462821981041622846722501852667762998466976237903287729907483365415039030752792642619212420693936890021667405410623426171983670580308731188456621928024021578666663975046110188422624510832115447623913139454752919015775627683814580819033325568\n", + "13940236161992450924098490825065681558944019762901871909749725623856396431025639792784767039656374657067288935347634896949867459552927480149715734295660845970789193542310566405569572123353512837464839657502196229013400322242338878377964945390464586280299593691530707683674875905599110530078220888425541615693273447643219036619753278626567425902706449129546928194560160163252400925169599174186400406101580294140022523077401727927552084776400974714925643962083245693445003705335525996933952475806575459814966730830078061505585285238424841387873780043334810821246852343967341160617462376913243856048043157333327950092220376845249021664230895247826278909505838031551255367629161638066651136\n", + "27880472323984901848196981650131363117888039525803743819499451247712792862051279585569534079312749314134577870695269793899734919105854960299431468591321691941578387084621132811139144246707025674929679315004392458026800644484677756755929890780929172560599187383061415367349751811198221060156441776851083231386546895286438073239506557253134851805412898259093856389120320326504801850339198348372800812203160588280045046154803455855104169552801949429851287924166491386890007410671051993867904951613150919629933461660156123011170570476849682775747560086669621642493704687934682321234924753826487712096086314666655900184440753690498043328461790495652557819011676063102510735258323276133302272\n", + "55760944647969803696393963300262726235776079051607487638998902495425585724102559171139068158625498628269155741390539587799469838211709920598862937182643383883156774169242265622278288493414051349859358630008784916053601288969355513511859781561858345121198374766122830734699503622396442120312883553702166462773093790572876146479013114506269703610825796518187712778240640653009603700678396696745601624406321176560090092309606911710208339105603898859702575848332982773780014821342103987735809903226301839259866923320312246022341140953699365551495120173339243284987409375869364642469849507652975424192172629333311800368881507380996086656923580991305115638023352126205021470516646552266604544\n", + "111521889295939607392787926600525452471552158103214975277997804990851171448205118342278136317250997256538311482781079175598939676423419841197725874365286767766313548338484531244556576986828102699718717260017569832107202577938711027023719563123716690242396749532245661469399007244792884240625767107404332925546187581145752292958026229012539407221651593036375425556481281306019207401356793393491203248812642353120180184619213823420416678211207797719405151696665965547560029642684207975471619806452603678519733846640624492044682281907398731102990240346678486569974818751738729284939699015305950848384345258666623600737763014761992173313847161982610231276046704252410042941033293104533209088\n", + "223043778591879214785575853201050904943104316206429950555995609981702342896410236684556272634501994513076622965562158351197879352846839682395451748730573535532627096676969062489113153973656205399437434520035139664214405155877422054047439126247433380484793499064491322938798014489585768481251534214808665851092375162291504585916052458025078814443303186072750851112962562612038414802713586786982406497625284706240360369238427646840833356422415595438810303393331931095120059285368415950943239612905207357039467693281248984089364563814797462205980480693356973139949637503477458569879398030611901696768690517333247201475526029523984346627694323965220462552093408504820085882066586209066418176\n", + "446087557183758429571151706402101809886208632412859901111991219963404685792820473369112545269003989026153245931124316702395758705693679364790903497461147071065254193353938124978226307947312410798874869040070279328428810311754844108094878252494866760969586998128982645877596028979171536962503068429617331702184750324583009171832104916050157628886606372145501702225925125224076829605427173573964812995250569412480720738476855293681666712844831190877620606786663862190240118570736831901886479225810414714078935386562497968178729127629594924411960961386713946279899275006954917139758796061223803393537381034666494402951052059047968693255388647930440925104186817009640171764133172418132836352\n", + "892175114367516859142303412804203619772417264825719802223982439926809371585640946738225090538007978052306491862248633404791517411387358729581806994922294142130508386707876249956452615894624821597749738080140558656857620623509688216189756504989733521939173996257965291755192057958343073925006136859234663404369500649166018343664209832100315257773212744291003404451850250448153659210854347147929625990501138824961441476953710587363333425689662381755241213573327724380480237141473663803772958451620829428157870773124995936357458255259189848823921922773427892559798550013909834279517592122447606787074762069332988805902104118095937386510777295860881850208373634019280343528266344836265672704\n", + "1784350228735033718284606825608407239544834529651439604447964879853618743171281893476450181076015956104612983724497266809583034822774717459163613989844588284261016773415752499912905231789249643195499476160281117313715241247019376432379513009979467043878347992515930583510384115916686147850012273718469326808739001298332036687328419664200630515546425488582006808903700500896307318421708694295859251981002277649922882953907421174726666851379324763510482427146655448760960474282947327607545916903241658856315741546249991872714916510518379697647843845546855785119597100027819668559035184244895213574149524138665977611804208236191874773021554591721763700416747268038560687056532689672531345408\n", + "3568700457470067436569213651216814479089669059302879208895929759707237486342563786952900362152031912209225967448994533619166069645549434918327227979689176568522033546831504999825810463578499286390998952320562234627430482494038752864759026019958934087756695985031861167020768231833372295700024547436938653617478002596664073374656839328401261031092850977164013617807401001792614636843417388591718503962004555299845765907814842349453333702758649527020964854293310897521920948565894655215091833806483317712631483092499983745429833021036759395295687691093711570239194200055639337118070368489790427148299048277331955223608416472383749546043109183443527400833494536077121374113065379345062690816\n", + "7137400914940134873138427302433628958179338118605758417791859519414474972685127573905800724304063824418451934897989067238332139291098869836654455959378353137044067093663009999651620927156998572781997904641124469254860964988077505729518052039917868175513391970063722334041536463666744591400049094873877307234956005193328146749313678656802522062185701954328027235614802003585229273686834777183437007924009110599691531815629684698906667405517299054041929708586621795043841897131789310430183667612966635425262966184999967490859666042073518790591375382187423140478388400111278674236140736979580854296598096554663910447216832944767499092086218366887054801666989072154242748226130758690125381632\n", + "14274801829880269746276854604867257916358676237211516835583719038828949945370255147811601448608127648836903869795978134476664278582197739673308911918756706274088134187326019999303241854313997145563995809282248938509721929976155011459036104079835736351026783940127444668083072927333489182800098189747754614469912010386656293498627357313605044124371403908656054471229604007170458547373669554366874015848018221199383063631259369397813334811034598108083859417173243590087683794263578620860367335225933270850525932369999934981719332084147037581182750764374846280956776800222557348472281473959161708593196193109327820894433665889534998184172436733774109603333978144308485496452261517380250763264\n", + "28549603659760539492553709209734515832717352474423033671167438077657899890740510295623202897216255297673807739591956268953328557164395479346617823837513412548176268374652039998606483708627994291127991618564497877019443859952310022918072208159671472702053567880254889336166145854666978365600196379495509228939824020773312586997254714627210088248742807817312108942459208014340917094747339108733748031696036442398766127262518738795626669622069196216167718834346487180175367588527157241720734670451866541701051864739999869963438664168294075162365501528749692561913553600445114696944562947918323417186392386218655641788867331779069996368344873467548219206667956288616970992904523034760501526528\n", + "57099207319521078985107418419469031665434704948846067342334876155315799781481020591246405794432510595347615479183912537906657114328790958693235647675026825096352536749304079997212967417255988582255983237128995754038887719904620045836144416319342945404107135760509778672332291709333956731200392758991018457879648041546625173994509429254420176497485615634624217884918416028681834189494678217467496063392072884797532254525037477591253339244138392432335437668692974360350735177054314483441469340903733083402103729479999739926877328336588150324731003057499385123827107200890229393889125895836646834372784772437311283577734663558139992736689746935096438413335912577233941985809046069521003053056\n", + "114198414639042157970214836838938063330869409897692134684669752310631599562962041182492811588865021190695230958367825075813314228657581917386471295350053650192705073498608159994425934834511977164511966474257991508077775439809240091672288832638685890808214271521019557344664583418667913462400785517982036915759296083093250347989018858508840352994971231269248435769836832057363668378989356434934992126784145769595064509050074955182506678488276784864670875337385948720701470354108628966882938681807466166804207458959999479853754656673176300649462006114998770247654214401780458787778251791673293668745569544874622567155469327116279985473379493870192876826671825154467883971618092139042006106112\n", + "228396829278084315940429673677876126661738819795384269369339504621263199125924082364985623177730042381390461916735650151626628457315163834772942590700107300385410146997216319988851869669023954329023932948515983016155550879618480183344577665277371781616428543042039114689329166837335826924801571035964073831518592166186500695978037717017680705989942462538496871539673664114727336757978712869869984253568291539190129018100149910365013356976553569729341750674771897441402940708217257933765877363614932333608414917919998959707509313346352601298924012229997540495308428803560917575556503583346587337491139089749245134310938654232559970946758987740385753653343650308935767943236184278084012212224\n", + "456793658556168631880859347355752253323477639590768538738679009242526398251848164729971246355460084762780923833471300303253256914630327669545885181400214600770820293994432639977703739338047908658047865897031966032311101759236960366689155330554743563232857086084078229378658333674671653849603142071928147663037184332373001391956075434035361411979884925076993743079347328229454673515957425739739968507136583078380258036200299820730026713953107139458683501349543794882805881416434515867531754727229864667216829835839997919415018626692705202597848024459995080990616857607121835151113007166693174674982278179498490268621877308465119941893517975480771507306687300617871535886472368556168024424448\n", + "913587317112337263761718694711504506646955279181537077477358018485052796503696329459942492710920169525561847666942600606506513829260655339091770362800429201541640587988865279955407478676095817316095731794063932064622203518473920733378310661109487126465714172168156458757316667349343307699206284143856295326074368664746002783912150868070722823959769850153987486158694656458909347031914851479479937014273166156760516072400599641460053427906214278917367002699087589765611762832869031735063509454459729334433659671679995838830037253385410405195696048919990161981233715214243670302226014333386349349964556358996980537243754616930239883787035950961543014613374601235743071772944737112336048848896\n", + "1827174634224674527523437389423009013293910558363074154954716036970105593007392658919884985421840339051123695333885201213013027658521310678183540725600858403083281175977730559910814957352191634632191463588127864129244407036947841466756621322218974252931428344336312917514633334698686615398412568287712590652148737329492005567824301736141445647919539700307974972317389312917818694063829702958959874028546332313521032144801199282920106855812428557834734005398175179531223525665738063470127018908919458668867319343359991677660074506770820810391392097839980323962467430428487340604452028666772698699929112717993961074487509233860479767574071901923086029226749202471486143545889474224672097697792\n", + "3654349268449349055046874778846018026587821116726148309909432073940211186014785317839769970843680678102247390667770402426026055317042621356367081451201716806166562351955461119821629914704383269264382927176255728258488814073895682933513242644437948505862856688672625835029266669397373230796825136575425181304297474658984011135648603472282891295839079400615949944634778625835637388127659405917919748057092664627042064289602398565840213711624857115669468010796350359062447051331476126940254037817838917337734638686719983355320149013541641620782784195679960647924934860856974681208904057333545397399858225435987922148975018467720959535148143803846172058453498404942972287091778948449344195395584\n", + "7308698536898698110093749557692036053175642233452296619818864147880422372029570635679539941687361356204494781335540804852052110634085242712734162902403433612333124703910922239643259829408766538528765854352511456516977628147791365867026485288875897011725713377345251670058533338794746461593650273150850362608594949317968022271297206944565782591678158801231899889269557251671274776255318811835839496114185329254084128579204797131680427423249714231338936021592700718124894102662952253880508075635677834675469277373439966710640298027083283241565568391359921295849869721713949362417808114667090794799716450871975844297950036935441919070296287607692344116906996809885944574183557896898688390791168\n", + "14617397073797396220187499115384072106351284466904593239637728295760844744059141271359079883374722712408989562671081609704104221268170485425468325804806867224666249407821844479286519658817533077057531708705022913033955256295582731734052970577751794023451426754690503340117066677589492923187300546301700725217189898635936044542594413889131565183356317602463799778539114503342549552510637623671678992228370658508168257158409594263360854846499428462677872043185401436249788205325904507761016151271355669350938554746879933421280596054166566483131136782719842591699739443427898724835616229334181589599432901743951688595900073870883838140592575215384688233813993619771889148367115793797376781582336\n", + "29234794147594792440374998230768144212702568933809186479275456591521689488118282542718159766749445424817979125342163219408208442536340970850936651609613734449332498815643688958573039317635066154115063417410045826067910512591165463468105941155503588046902853509381006680234133355178985846374601092603401450434379797271872089085188827778263130366712635204927599557078229006685099105021275247343357984456741317016336514316819188526721709692998856925355744086370802872499576410651809015522032302542711338701877109493759866842561192108333132966262273565439685183399478886855797449671232458668363179198865803487903377191800147741767676281185150430769376467627987239543778296734231587594753563164672\n", + "58469588295189584880749996461536288425405137867618372958550913183043378976236565085436319533498890849635958250684326438816416885072681941701873303219227468898664997631287377917146078635270132308230126834820091652135821025182330926936211882311007176093805707018762013360468266710357971692749202185206802900868759594543744178170377655556526260733425270409855199114156458013370198210042550494686715968913482634032673028633638377053443419385997713850711488172741605744999152821303618031044064605085422677403754218987519733685122384216666265932524547130879370366798957773711594899342464917336726358397731606975806754383600295483535352562370300861538752935255974479087556593468463175189507126329344\n", + "116939176590379169761499992923072576850810275735236745917101826366086757952473130170872639066997781699271916501368652877632833770145363883403746606438454937797329995262574755834292157270540264616460253669640183304271642050364661853872423764622014352187611414037524026720936533420715943385498404370413605801737519189087488356340755311113052521466850540819710398228312916026740396420085100989373431937826965268065346057267276754106886838771995427701422976345483211489998305642607236062088129210170845354807508437975039467370244768433332531865049094261758740733597915547423189798684929834673452716795463213951613508767200590967070705124740601723077505870511948958175113186936926350379014252658688\n", + "233878353180758339522999985846145153701620551470473491834203652732173515904946260341745278133995563398543833002737305755265667540290727766807493212876909875594659990525149511668584314541080529232920507339280366608543284100729323707744847529244028704375222828075048053441873066841431886770996808740827211603475038378174976712681510622226105042933701081639420796456625832053480792840170201978746863875653930536130692114534553508213773677543990855402845952690966422979996611285214472124176258420341690709615016875950078934740489536866665063730098188523517481467195831094846379597369859669346905433590926427903227017534401181934141410249481203446155011741023897916350226373873852700758028505317376\n", + "467756706361516679045999971692290307403241102940946983668407305464347031809892520683490556267991126797087666005474611510531335080581455533614986425753819751189319981050299023337168629082161058465841014678560733217086568201458647415489695058488057408750445656150096106883746133682863773541993617481654423206950076756349953425363021244452210085867402163278841592913251664106961585680340403957493727751307861072261384229069107016427547355087981710805691905381932845959993222570428944248352516840683381419230033751900157869480979073733330127460196377047034962934391662189692759194739719338693810867181852855806454035068802363868282820498962406892310023482047795832700452747747705401516057010634752\n", + "935513412723033358091999943384580614806482205881893967336814610928694063619785041366981112535982253594175332010949223021062670161162911067229972851507639502378639962100598046674337258164322116931682029357121466434173136402917294830979390116976114817500891312300192213767492267365727547083987234963308846413900153512699906850726042488904420171734804326557683185826503328213923171360680807914987455502615722144522768458138214032855094710175963421611383810763865691919986445140857888496705033681366762838460067503800315738961958147466660254920392754094069925868783324379385518389479438677387621734363705711612908070137604727736565640997924813784620046964095591665400905495495410803032114021269504\n", + "1871026825446066716183999886769161229612964411763787934673629221857388127239570082733962225071964507188350664021898446042125340322325822134459945703015279004757279924201196093348674516328644233863364058714242932868346272805834589661958780233952229635001782624600384427534984534731455094167974469926617692827800307025399813701452084977808840343469608653115366371653006656427846342721361615829974911005231444289045536916276428065710189420351926843222767621527731383839972890281715776993410067362733525676920135007600631477923916294933320509840785508188139851737566648758771036778958877354775243468727411423225816140275209455473131281995849627569240093928191183330801810990990821606064228042539008\n", + "3742053650892133432367999773538322459225928823527575869347258443714776254479140165467924450143929014376701328043796892084250680644651644268919891406030558009514559848402392186697349032657288467726728117428485865736692545611669179323917560467904459270003565249200768855069969069462910188335948939853235385655600614050799627402904169955617680686939217306230732743306013312855692685442723231659949822010462888578091073832552856131420378840703853686445535243055462767679945780563431553986820134725467051353840270015201262955847832589866641019681571016376279703475133297517542073557917754709550486937454822846451632280550418910946262563991699255138480187856382366661603621981981643212128456085078016\n", + "7484107301784266864735999547076644918451857647055151738694516887429552508958280330935848900287858028753402656087593784168501361289303288537839782812061116019029119696804784373394698065314576935453456234856971731473385091223338358647835120935808918540007130498401537710139938138925820376671897879706470771311201228101599254805808339911235361373878434612461465486612026625711385370885446463319899644020925777156182147665105712262840757681407707372891070486110925535359891561126863107973640269450934102707680540030402525911695665179733282039363142032752559406950266595035084147115835509419100973874909645692903264561100837821892525127983398510276960375712764733323207243963963286424256912170156032\n", + "14968214603568533729471999094153289836903715294110303477389033774859105017916560661871697800575716057506805312175187568337002722578606577075679565624122232038058239393609568746789396130629153870906912469713943462946770182446676717295670241871617837080014260996803075420279876277851640753343795759412941542622402456203198509611616679822470722747756869224922930973224053251422770741770892926639799288041851554312364295330211424525681515362815414745782140972221851070719783122253726215947280538901868205415361080060805051823391330359466564078726284065505118813900533190070168294231671018838201947749819291385806529122201675643785050255966797020553920751425529466646414487927926572848513824340312064\n", + "29936429207137067458943998188306579673807430588220606954778067549718210035833121323743395601151432115013610624350375136674005445157213154151359131248244464076116478787219137493578792261258307741813824939427886925893540364893353434591340483743235674160028521993606150840559752555703281506687591518825883085244804912406397019223233359644941445495513738449845861946448106502845541483541785853279598576083703108624728590660422849051363030725630829491564281944443702141439566244507452431894561077803736410830722160121610103646782660718933128157452568131010237627801066380140336588463342037676403895499638582771613058244403351287570100511933594041107841502851058933292828975855853145697027648680624128\n", + "59872858414274134917887996376613159347614861176441213909556135099436420071666242647486791202302864230027221248700750273348010890314426308302718262496488928152232957574438274987157584522516615483627649878855773851787080729786706869182680967486471348320057043987212301681119505111406563013375183037651766170489609824812794038446466719289882890991027476899691723892896213005691082967083571706559197152167406217249457181320845698102726061451261658983128563888887404282879132489014904863789122155607472821661444320243220207293565321437866256314905136262020475255602132760280673176926684075352807790999277165543226116488806702575140201023867188082215683005702117866585657951711706291394055297361248256\n", + "119745716828548269835775992753226318695229722352882427819112270198872840143332485294973582404605728460054442497401500546696021780628852616605436524992977856304465915148876549974315169045033230967255299757711547703574161459573413738365361934972942696640114087974424603362239010222813126026750366075303532340979219649625588076892933438579765781982054953799383447785792426011382165934167143413118394304334812434498914362641691396205452122902523317966257127777774808565758264978029809727578244311214945643322888640486440414587130642875732512629810272524040950511204265520561346353853368150705615581998554331086452232977613405150280402047734376164431366011404235733171315903423412582788110594722496512\n", + "239491433657096539671551985506452637390459444705764855638224540397745680286664970589947164809211456920108884994803001093392043561257705233210873049985955712608931830297753099948630338090066461934510599515423095407148322919146827476730723869945885393280228175948849206724478020445626252053500732150607064681958439299251176153785866877159531563964109907598766895571584852022764331868334286826236788608669624868997828725283382792410904245805046635932514255555549617131516529956059619455156488622429891286645777280972880829174261285751465025259620545048081901022408531041122692707706736301411231163997108662172904465955226810300560804095468752328862732022808471466342631806846825165576221189444993024\n", + "478982867314193079343103971012905274780918889411529711276449080795491360573329941179894329618422913840217769989606002186784087122515410466421746099971911425217863660595506199897260676180132923869021199030846190814296645838293654953461447739891770786560456351897698413448956040891252504107001464301214129363916878598502352307571733754319063127928219815197533791143169704045528663736668573652473577217339249737995657450566765584821808491610093271865028511111099234263033059912119238910312977244859782573291554561945761658348522571502930050519241090096163802044817062082245385415413472602822462327994217324345808931910453620601121608190937504657725464045616942932685263613693650331152442378889986048\n", + "957965734628386158686207942025810549561837778823059422552898161590982721146659882359788659236845827680435539979212004373568174245030820932843492199943822850435727321191012399794521352360265847738042398061692381628593291676587309906922895479783541573120912703795396826897912081782505008214002928602428258727833757197004704615143467508638126255856439630395067582286339408091057327473337147304947154434678499475991314901133531169643616983220186543730057022222198468526066119824238477820625954489719565146583109123891523316697045143005860101038482180192327604089634124164490770830826945205644924655988434648691617863820907241202243216381875009315450928091233885865370527227387300662304884757779972096\n", + "1915931469256772317372415884051621099123675557646118845105796323181965442293319764719577318473691655360871079958424008747136348490061641865686984399887645700871454642382024799589042704720531695476084796123384763257186583353174619813845790959567083146241825407590793653795824163565010016428005857204856517455667514394009409230286935017276252511712879260790135164572678816182114654946674294609894308869356998951982629802267062339287233966440373087460114044444396937052132239648476955641251908979439130293166218247783046633394090286011720202076964360384655208179268248328981541661653890411289849311976869297383235727641814482404486432763750018630901856182467771730741054454774601324609769515559944192\n", + "3831862938513544634744831768103242198247351115292237690211592646363930884586639529439154636947383310721742159916848017494272696980123283731373968799775291401742909284764049599178085409441063390952169592246769526514373166706349239627691581919134166292483650815181587307591648327130020032856011714409713034911335028788018818460573870034552505023425758521580270329145357632364229309893348589219788617738713997903965259604534124678574467932880746174920228088888793874104264479296953911282503817958878260586332436495566093266788180572023440404153928720769310416358536496657963083323307780822579698623953738594766471455283628964808972865527500037261803712364935543461482108909549202649219539031119888384\n", + "7663725877027089269489663536206484396494702230584475380423185292727861769173279058878309273894766621443484319833696034988545393960246567462747937599550582803485818569528099198356170818882126781904339184493539053028746333412698479255383163838268332584967301630363174615183296654260040065712023428819426069822670057576037636921147740069105010046851517043160540658290715264728458619786697178439577235477427995807930519209068249357148935865761492349840456177777587748208528958593907822565007635917756521172664872991132186533576361144046880808307857441538620832717072993315926166646615561645159397247907477189532942910567257929617945731055000074523607424729871086922964217819098405298439078062239776768\n", + "15327451754054178538979327072412968792989404461168950760846370585455723538346558117756618547789533242886968639667392069977090787920493134925495875199101165606971637139056198396712341637764253563808678368987078106057492666825396958510766327676536665169934603260726349230366593308520080131424046857638852139645340115152075273842295480138210020093703034086321081316581430529456917239573394356879154470954855991615861038418136498714297871731522984699680912355555175496417057917187815645130015271835513042345329745982264373067152722288093761616615714883077241665434145986631852333293231123290318794495814954379065885821134515859235891462110000149047214849459742173845928435638196810596878156124479553536\n", + "30654903508108357077958654144825937585978808922337901521692741170911447076693116235513237095579066485773937279334784139954181575840986269850991750398202331213943274278112396793424683275528507127617356737974156212114985333650793917021532655353073330339869206521452698460733186617040160262848093715277704279290680230304150547684590960276420040187406068172642162633162861058913834479146788713758308941909711983231722076836272997428595743463045969399361824711110350992834115834375631290260030543671026084690659491964528746134305444576187523233231429766154483330868291973263704666586462246580637588991629908758131771642269031718471782924220000298094429698919484347691856871276393621193756312248959107072\n", + "61309807016216714155917308289651875171957617844675803043385482341822894153386232471026474191158132971547874558669568279908363151681972539701983500796404662427886548556224793586849366551057014255234713475948312424229970667301587834043065310706146660679738413042905396921466373234080320525696187430555408558581360460608301095369181920552840080374812136345284325266325722117827668958293577427516617883819423966463444153672545994857191486926091938798723649422220701985668231668751262580520061087342052169381318983929057492268610889152375046466462859532308966661736583946527409333172924493161275177983259817516263543284538063436943565848440000596188859397838968695383713742552787242387512624497918214144\n", + "122619614032433428311834616579303750343915235689351606086770964683645788306772464942052948382316265943095749117339136559816726303363945079403967001592809324855773097112449587173698733102114028510469426951896624848459941334603175668086130621412293321359476826085810793842932746468160641051392374861110817117162720921216602190738363841105680160749624272690568650532651444235655337916587154855033235767638847932926888307345091989714382973852183877597447298844441403971336463337502525161040122174684104338762637967858114984537221778304750092932925719064617933323473167893054818666345848986322550355966519635032527086569076126873887131696880001192377718795677937390767427485105574484775025248995836428288\n", + "245239228064866856623669233158607500687830471378703212173541929367291576613544929884105896764632531886191498234678273119633452606727890158807934003185618649711546194224899174347397466204228057020938853903793249696919882669206351336172261242824586642718953652171621587685865492936321282102784749722221634234325441842433204381476727682211360321499248545381137301065302888471310675833174309710066471535277695865853776614690183979428765947704367755194894597688882807942672926675005050322080244349368208677525275935716229969074443556609500185865851438129235866646946335786109637332691697972645100711933039270065054173138152253747774263393760002384755437591355874781534854970211148969550050497991672856576\n", + "490478456129733713247338466317215001375660942757406424347083858734583153227089859768211793529265063772382996469356546239266905213455780317615868006371237299423092388449798348694794932408456114041877707807586499393839765338412702672344522485649173285437907304343243175371730985872642564205569499444443268468650883684866408762953455364422720642998497090762274602130605776942621351666348619420132943070555391731707553229380367958857531895408735510389789195377765615885345853350010100644160488698736417355050551871432459938148887113219000371731702876258471733293892671572219274665383395945290201423866078540130108346276304507495548526787520004769510875182711749563069709940422297939100100995983345713152\n", + "980956912259467426494676932634430002751321885514812848694167717469166306454179719536423587058530127544765992938713092478533810426911560635231736012742474598846184776899596697389589864816912228083755415615172998787679530676825405344689044971298346570875814608686486350743461971745285128411138998888886536937301767369732817525906910728845441285996994181524549204261211553885242703332697238840265886141110783463415106458760735917715063790817471020779578390755531231770691706700020201288320977397472834710101103742864919876297774226438000743463405752516943466587785343144438549330766791890580402847732157080260216692552609014991097053575040009539021750365423499126139419880844595878200201991966691426304\n", + "1961913824518934852989353865268860005502643771029625697388335434938332612908359439072847174117060255089531985877426184957067620853823121270463472025484949197692369553799193394779179729633824456167510831230345997575359061353650810689378089942596693141751629217372972701486923943490570256822277997777773073874603534739465635051813821457690882571993988363049098408522423107770485406665394477680531772282221566926830212917521471835430127581634942041559156781511062463541383413400040402576641954794945669420202207485729839752595548452876001486926811505033886933175570686288877098661533583781160805695464314160520433385105218029982194107150080019078043500730846998252278839761689191756400403983933382852608\n", + "3923827649037869705978707730537720011005287542059251394776670869876665225816718878145694348234120510179063971754852369914135241707646242540926944050969898395384739107598386789558359459267648912335021662460691995150718122707301621378756179885193386283503258434745945402973847886981140513644555995555546147749207069478931270103627642915381765143987976726098196817044846215540970813330788955361063544564443133853660425835042943670860255163269884083118313563022124927082766826800080805153283909589891338840404414971459679505191096905752002973853623010067773866351141372577754197323067167562321611390928628321040866770210436059964388214300160038156087001461693996504557679523378383512800807967866765705216\n", + "7847655298075739411957415461075440022010575084118502789553341739753330451633437756291388696468241020358127943509704739828270483415292485081853888101939796790769478215196773579116718918535297824670043324921383990301436245414603242757512359770386772567006516869491890805947695773962281027289111991111092295498414138957862540207255285830763530287975953452196393634089692431081941626661577910722127089128886267707320851670085887341720510326539768166236627126044249854165533653600161610306567819179782677680808829942919359010382193811504005947707246020135547732702282745155508394646134335124643222781857256642081733540420872119928776428600320076312174002923387993009115359046756767025601615935733531410432\n", + "15695310596151478823914830922150880044021150168237005579106683479506660903266875512582777392936482040716255887019409479656540966830584970163707776203879593581538956430393547158233437837070595649340086649842767980602872490829206485515024719540773545134013033738983781611895391547924562054578223982222184590996828277915725080414510571661527060575951906904392787268179384862163883253323155821444254178257772535414641703340171774683441020653079536332473254252088499708331067307200323220613135638359565355361617659885838718020764387623008011895414492040271095465404565490311016789292268670249286445563714513284163467080841744239857552857200640152624348005846775986018230718093513534051203231871467062820864\n", + "31390621192302957647829661844301760088042300336474011158213366959013321806533751025165554785872964081432511774038818959313081933661169940327415552407759187163077912860787094316466875674141191298680173299685535961205744981658412971030049439081547090268026067477967563223790783095849124109156447964444369181993656555831450160829021143323054121151903813808785574536358769724327766506646311642888508356515545070829283406680343549366882041306159072664946508504176999416662134614400646441226271276719130710723235319771677436041528775246016023790828984080542190930809130980622033578584537340498572891127429026568326934161683488479715105714401280305248696011693551972036461436187027068102406463742934125641728\n", + "62781242384605915295659323688603520176084600672948022316426733918026643613067502050331109571745928162865023548077637918626163867322339880654831104815518374326155825721574188632933751348282382597360346599371071922411489963316825942060098878163094180536052134955935126447581566191698248218312895928888738363987313111662900321658042286646108242303807627617571149072717539448655533013292623285777016713031090141658566813360687098733764082612318145329893017008353998833324269228801292882452542553438261421446470639543354872083057550492032047581657968161084381861618261961244067157169074680997145782254858053136653868323366976959430211428802560610497392023387103944072922872374054136204812927485868251283456\n", + "125562484769211830591318647377207040352169201345896044632853467836053287226135004100662219143491856325730047096155275837252327734644679761309662209631036748652311651443148377265867502696564765194720693198742143844822979926633651884120197756326188361072104269911870252895163132383396496436625791857777476727974626223325800643316084573292216484607615255235142298145435078897311066026585246571554033426062180283317133626721374197467528165224636290659786034016707997666648538457602585764905085106876522842892941279086709744166115100984064095163315936322168763723236523922488134314338149361994291564509716106273307736646733953918860422857605121220994784046774207888145845744748108272409625854971736502566912\n", + "251124969538423661182637294754414080704338402691792089265706935672106574452270008201324438286983712651460094192310551674504655469289359522619324419262073497304623302886296754531735005393129530389441386397484287689645959853267303768240395512652376722144208539823740505790326264766792992873251583715554953455949252446651601286632169146584432969215230510470284596290870157794622132053170493143108066852124360566634267253442748394935056330449272581319572068033415995333297076915205171529810170213753045685785882558173419488332230201968128190326631872644337527446473047844976268628676298723988583129019432212546615473293467907837720845715210242441989568093548415776291691489496216544819251709943473005133824\n", + "502249939076847322365274589508828161408676805383584178531413871344213148904540016402648876573967425302920188384621103349009310938578719045238648838524146994609246605772593509063470010786259060778882772794968575379291919706534607536480791025304753444288417079647481011580652529533585985746503167431109906911898504893303202573264338293168865938430461020940569192581740315589244264106340986286216133704248721133268534506885496789870112660898545162639144136066831990666594153830410343059620340427506091371571765116346838976664460403936256380653263745288675054892946095689952537257352597447977166258038864425093230946586935815675441691430420484883979136187096831552583382978992433089638503419886946010267648\n", + "1004499878153694644730549179017656322817353610767168357062827742688426297809080032805297753147934850605840376769242206698018621877157438090477297677048293989218493211545187018126940021572518121557765545589937150758583839413069215072961582050609506888576834159294962023161305059067171971493006334862219813823797009786606405146528676586337731876860922041881138385163480631178488528212681972572432267408497442266537069013770993579740225321797090325278288272133663981333188307660820686119240680855012182743143530232693677953328920807872512761306527490577350109785892191379905074514705194895954332516077728850186461893173871631350883382860840969767958272374193663105166765957984866179277006839773892020535296\n", + "2008999756307389289461098358035312645634707221534336714125655485376852595618160065610595506295869701211680753538484413396037243754314876180954595354096587978436986423090374036253880043145036243115531091179874301517167678826138430145923164101219013777153668318589924046322610118134343942986012669724439627647594019573212810293057353172675463753721844083762276770326961262356977056425363945144864534816994884533074138027541987159480450643594180650556576544267327962666376615321641372238481361710024365486287060465387355906657841615745025522613054981154700219571784382759810149029410389791908665032155457700372923786347743262701766765721681939535916544748387326210333531915969732358554013679547784041070592\n", + "4017999512614778578922196716070625291269414443068673428251310970753705191236320131221191012591739402423361507076968826792074487508629752361909190708193175956873972846180748072507760086290072486231062182359748603034335357652276860291846328202438027554307336637179848092645220236268687885972025339448879255295188039146425620586114706345350927507443688167524553540653922524713954112850727890289729069633989769066148276055083974318960901287188361301113153088534655925332753230643282744476962723420048730972574120930774711813315683231490051045226109962309400439143568765519620298058820779583817330064310915400745847572695486525403533531443363879071833089496774652420667063831939464717108027359095568082141184\n", + "8035999025229557157844393432141250582538828886137346856502621941507410382472640262442382025183478804846723014153937653584148975017259504723818381416386351913747945692361496145015520172580144972462124364719497206068670715304553720583692656404876055108614673274359696185290440472537375771944050678897758510590376078292851241172229412690701855014887376335049107081307845049427908225701455780579458139267979538132296552110167948637921802574376722602226306177069311850665506461286565488953925446840097461945148241861549423626631366462980102090452219924618800878287137531039240596117641559167634660128621830801491695145390973050807067062886727758143666178993549304841334127663878929434216054718191136164282368\n", + "16071998050459114315688786864282501165077657772274693713005243883014820764945280524884764050366957609693446028307875307168297950034519009447636762832772703827495891384722992290031040345160289944924248729438994412137341430609107441167385312809752110217229346548719392370580880945074751543888101357795517021180752156585702482344458825381403710029774752670098214162615690098855816451402911561158916278535959076264593104220335897275843605148753445204452612354138623701331012922573130977907850893680194923890296483723098847253262732925960204180904439849237601756574275062078481192235283118335269320257243661602983390290781946101614134125773455516287332357987098609682668255327757858868432109436382272328564736\n", + "32143996100918228631377573728565002330155315544549387426010487766029641529890561049769528100733915219386892056615750614336595900069038018895273525665545407654991782769445984580062080690320579889848497458877988824274682861218214882334770625619504220434458693097438784741161761890149503087776202715591034042361504313171404964688917650762807420059549505340196428325231380197711632902805823122317832557071918152529186208440671794551687210297506890408905224708277247402662025845146261955815701787360389847780592967446197694506525465851920408361808879698475203513148550124156962384470566236670538640514487323205966780581563892203228268251546911032574664715974197219365336510655515717736864218872764544657129472\n", + "64287992201836457262755147457130004660310631089098774852020975532059283059781122099539056201467830438773784113231501228673191800138076037790547051331090815309983565538891969160124161380641159779696994917755977648549365722436429764669541251239008440868917386194877569482323523780299006175552405431182068084723008626342809929377835301525614840119099010680392856650462760395423265805611646244635665114143836305058372416881343589103374420595013780817810449416554494805324051690292523911631403574720779695561185934892395389013050931703840816723617759396950407026297100248313924768941132473341077281028974646411933561163127784406456536503093822065149329431948394438730673021311031435473728437745529089314258944\n", + "128575984403672914525510294914260009320621262178197549704041951064118566119562244199078112402935660877547568226463002457346383600276152075581094102662181630619967131077783938320248322761282319559393989835511955297098731444872859529339082502478016881737834772389755138964647047560598012351104810862364136169446017252685619858755670603051229680238198021360785713300925520790846531611223292489271330228287672610116744833762687178206748841190027561635620898833108989610648103380585047823262807149441559391122371869784790778026101863407681633447235518793900814052594200496627849537882264946682154562057949292823867122326255568812913073006187644130298658863896788877461346042622062870947456875491058178628517888\n", + "257151968807345829051020589828520018641242524356395099408083902128237132239124488398156224805871321755095136452926004914692767200552304151162188205324363261239934262155567876640496645522564639118787979671023910594197462889745719058678165004956033763475669544779510277929294095121196024702209621724728272338892034505371239717511341206102459360476396042721571426601851041581693063222446584978542660456575345220233489667525374356413497682380055123271241797666217979221296206761170095646525614298883118782244743739569581556052203726815363266894471037587801628105188400993255699075764529893364309124115898585647734244652511137625826146012375288260597317727793577754922692085244125741894913750982116357257035776\n", + "514303937614691658102041179657040037282485048712790198816167804256474264478248976796312449611742643510190272905852009829385534401104608302324376410648726522479868524311135753280993291045129278237575959342047821188394925779491438117356330009912067526951339089559020555858588190242392049404419243449456544677784069010742479435022682412204918720952792085443142853203702083163386126444893169957085320913150690440466979335050748712826995364760110246542483595332435958442592413522340191293051228597766237564489487479139163112104407453630726533788942075175603256210376801986511398151529059786728618248231797171295468489305022275251652292024750576521194635455587155509845384170488251483789827501964232714514071552\n", + "1028607875229383316204082359314080074564970097425580397632335608512948528956497953592624899223485287020380545811704019658771068802209216604648752821297453044959737048622271506561986582090258556475151918684095642376789851558982876234712660019824135053902678179118041111717176380484784098808838486898913089355568138021484958870045364824409837441905584170886285706407404166326772252889786339914170641826301380880933958670101497425653990729520220493084967190664871916885184827044680382586102457195532475128978974958278326224208814907261453067577884150351206512420753603973022796303058119573457236496463594342590936978610044550503304584049501153042389270911174311019690768340976502967579655003928465429028143104\n", + "2057215750458766632408164718628160149129940194851160795264671217025897057912995907185249798446970574040761091623408039317542137604418433209297505642594906089919474097244543013123973164180517112950303837368191284753579703117965752469425320039648270107805356358236082223434352760969568197617676973797826178711136276042969917740090729648819674883811168341772571412814808332653544505779572679828341283652602761761867917340202994851307981459040440986169934381329743833770369654089360765172204914391064950257957949916556652448417629814522906135155768300702413024841507207946045592606116239146914472992927188685181873957220089101006609168099002306084778541822348622039381536681953005935159310007856930858056286208\n", + "4114431500917533264816329437256320298259880389702321590529342434051794115825991814370499596893941148081522183246816078635084275208836866418595011285189812179838948194489086026247946328361034225900607674736382569507159406235931504938850640079296540215610712716472164446868705521939136395235353947595652357422272552085939835480181459297639349767622336683545142825629616665307089011559145359656682567305205523523735834680405989702615962918080881972339868762659487667540739308178721530344409828782129900515915899833113304896835259629045812270311536601404826049683014415892091185212232478293828945985854377370363747914440178202013218336198004612169557083644697244078763073363906011870318620015713861716112572416\n", + "8228863001835066529632658874512640596519760779404643181058684868103588231651983628740999193787882296163044366493632157270168550417673732837190022570379624359677896388978172052495892656722068451801215349472765139014318812471863009877701280158593080431221425432944328893737411043878272790470707895191304714844545104171879670960362918595278699535244673367090285651259233330614178023118290719313365134610411047047471669360811979405231925836161763944679737525318975335081478616357443060688819657564259801031831799666226609793670519258091624540623073202809652099366028831784182370424464956587657891971708754740727495828880356404026436672396009224339114167289394488157526146727812023740637240031427723432225144832\n", + "16457726003670133059265317749025281193039521558809286362117369736207176463303967257481998387575764592326088732987264314540337100835347465674380045140759248719355792777956344104991785313444136903602430698945530278028637624943726019755402560317186160862442850865888657787474822087756545580941415790382609429689090208343759341920725837190557399070489346734180571302518466661228356046236581438626730269220822094094943338721623958810463851672323527889359475050637950670162957232714886121377639315128519602063663599332453219587341038516183249081246146405619304198732057663568364740848929913175315783943417509481454991657760712808052873344792018448678228334578788976315052293455624047481274480062855446864450289664\n", + "32915452007340266118530635498050562386079043117618572724234739472414352926607934514963996775151529184652177465974528629080674201670694931348760090281518497438711585555912688209983570626888273807204861397891060556057275249887452039510805120634372321724885701731777315574949644175513091161882831580765218859378180416687518683841451674381114798140978693468361142605036933322456712092473162877253460538441644188189886677443247917620927703344647055778718950101275901340325914465429772242755278630257039204127327198664906439174682077032366498162492292811238608397464115327136729481697859826350631567886835018962909983315521425616105746689584036897356456669157577952630104586911248094962548960125710893728900579328\n", + "65830904014680532237061270996101124772158086235237145448469478944828705853215869029927993550303058369304354931949057258161348403341389862697520180563036994877423171111825376419967141253776547614409722795782121112114550499774904079021610241268744643449771403463554631149899288351026182323765663161530437718756360833375037367682903348762229596281957386936722285210073866644913424184946325754506921076883288376379773354886495835241855406689294111557437900202551802680651828930859544485510557260514078408254654397329812878349364154064732996324984585622477216794928230654273458963395719652701263135773670037925819966631042851232211493379168073794712913338315155905260209173822496189925097920251421787457801158656\n", + "131661808029361064474122541992202249544316172470474290896938957889657411706431738059855987100606116738608709863898114516322696806682779725395040361126073989754846342223650752839934282507553095228819445591564242224229100999549808158043220482537489286899542806927109262299798576702052364647531326323060875437512721666750074735365806697524459192563914773873444570420147733289826848369892651509013842153766576752759546709772991670483710813378588223114875800405103605361303657861719088971021114521028156816509308794659625756698728308129465992649969171244954433589856461308546917926791439305402526271547340075851639933262085702464422986758336147589425826676630311810520418347644992379850195840502843574915602317312\n", + "263323616058722128948245083984404499088632344940948581793877915779314823412863476119711974201212233477217419727796229032645393613365559450790080722252147979509692684447301505679868565015106190457638891183128484448458201999099616316086440965074978573799085613854218524599597153404104729295062652646121750875025443333500149470731613395048918385127829547746889140840295466579653696739785303018027684307533153505519093419545983340967421626757176446229751600810207210722607315723438177942042229042056313633018617589319251513397456616258931985299938342489908867179712922617093835853582878610805052543094680151703279866524171404928845973516672295178851653353260623621040836695289984759700391681005687149831204634624\n", + "526647232117444257896490167968808998177264689881897163587755831558629646825726952239423948402424466954434839455592458065290787226731118901580161444504295959019385368894603011359737130030212380915277782366256968896916403998199232632172881930149957147598171227708437049199194306808209458590125305292243501750050886667000298941463226790097836770255659095493778281680590933159307393479570606036055368615066307011038186839091966681934843253514352892459503201620414421445214631446876355884084458084112627266037235178638503026794913232517863970599876684979817734359425845234187671707165757221610105086189360303406559733048342809857691947033344590357703306706521247242081673390579969519400783362011374299662409269248\n", + "1053294464234888515792980335937617996354529379763794327175511663117259293651453904478847896804848933908869678911184916130581574453462237803160322889008591918038770737789206022719474260060424761830555564732513937793832807996398465264345763860299914295196342455416874098398388613616418917180250610584487003500101773334000597882926453580195673540511318190987556563361181866318614786959141212072110737230132614022076373678183933363869686507028705784919006403240828842890429262893752711768168916168225254532074470357277006053589826465035727941199753369959635468718851690468375343414331514443220210172378720606813119466096685619715383894066689180715406613413042494484163346781159939038801566724022748599324818538496\n", + "2106588928469777031585960671875235992709058759527588654351023326234518587302907808957695793609697867817739357822369832261163148906924475606320645778017183836077541475578412045438948520120849523661111129465027875587665615992796930528691527720599828590392684910833748196796777227232837834360501221168974007000203546668001195765852907160391347081022636381975113126722363732637229573918282424144221474460265228044152747356367866727739373014057411569838012806481657685780858525787505423536337832336450509064148940714554012107179652930071455882399506739919270937437703380936750686828663028886440420344757441213626238932193371239430767788133378361430813226826084988968326693562319878077603133448045497198649637076992\n", + "4213177856939554063171921343750471985418117519055177308702046652469037174605815617915391587219395735635478715644739664522326297813848951212641291556034367672155082951156824090877897040241699047322222258930055751175331231985593861057383055441199657180785369821667496393593554454465675668721002442337948014000407093336002391531705814320782694162045272763950226253444727465274459147836564848288442948920530456088305494712735733455478746028114823139676025612963315371561717051575010847072675664672901018128297881429108024214359305860142911764799013479838541874875406761873501373657326057772880840689514882427252477864386742478861535576266756722861626453652169977936653387124639756155206266896090994397299274153984\n", + "8426355713879108126343842687500943970836235038110354617404093304938074349211631235830783174438791471270957431289479329044652595627697902425282583112068735344310165902313648181755794080483398094644444517860111502350662463971187722114766110882399314361570739643334992787187108908931351337442004884675896028000814186672004783063411628641565388324090545527900452506889454930548918295673129696576885897841060912176610989425471466910957492056229646279352051225926630743123434103150021694145351329345802036256595762858216048428718611720285823529598026959677083749750813523747002747314652115545761681379029764854504955728773484957723071152533513445723252907304339955873306774249279512310412533792181988794598548307968\n", + "16852711427758216252687685375001887941672470076220709234808186609876148698423262471661566348877582942541914862578958658089305191255395804850565166224137470688620331804627296363511588160966796189288889035720223004701324927942375444229532221764798628723141479286669985574374217817862702674884009769351792056001628373344009566126823257283130776648181091055800905013778909861097836591346259393153771795682121824353221978850942933821914984112459292558704102451853261486246868206300043388290702658691604072513191525716432096857437223440571647059196053919354167499501627047494005494629304231091523362758059529709009911457546969915446142305067026891446505814608679911746613548498559024620825067584363977589197096615936\n", + "33705422855516432505375370750003775883344940152441418469616373219752297396846524943323132697755165885083829725157917316178610382510791609701130332448274941377240663609254592727023176321933592378577778071440446009402649855884750888459064443529597257446282958573339971148748435635725405349768019538703584112003256746688019132253646514566261553296362182111601810027557819722195673182692518786307543591364243648706443957701885867643829968224918585117408204903706522972493736412600086776581405317383208145026383051432864193714874446881143294118392107838708334999003254094988010989258608462183046725516119059418019822915093939830892284610134053782893011629217359823493227096997118049241650135168727955178394193231872\n", + "67410845711032865010750741500007551766689880304882836939232746439504594793693049886646265395510331770167659450315834632357220765021583219402260664896549882754481327218509185454046352643867184757155556142880892018805299711769501776918128887059194514892565917146679942297496871271450810699536039077407168224006513493376038264507293029132523106592724364223203620055115639444391346365385037572615087182728487297412887915403771735287659936449837170234816409807413045944987472825200173553162810634766416290052766102865728387429748893762286588236784215677416669998006508189976021978517216924366093451032238118836039645830187879661784569220268107565786023258434719646986454193994236098483300270337455910356788386463744\n", + "134821691422065730021501483000015103533379760609765673878465492879009189587386099773292530791020663540335318900631669264714441530043166438804521329793099765508962654437018370908092705287734369514311112285761784037610599423539003553836257774118389029785131834293359884594993742542901621399072078154814336448013026986752076529014586058265046213185448728446407240110231278888782692730770075145230174365456974594825775830807543470575319872899674340469632819614826091889974945650400347106325621269532832580105532205731456774859497787524573176473568431354833339996013016379952043957034433848732186902064476237672079291660375759323569138440536215131572046516869439293972908387988472196966600540674911820713576772927488\n", + "269643382844131460043002966000030207066759521219531347756930985758018379174772199546585061582041327080670637801263338529428883060086332877609042659586199531017925308874036741816185410575468739028622224571523568075221198847078007107672515548236778059570263668586719769189987485085803242798144156309628672896026053973504153058029172116530092426370897456892814480220462557777565385461540150290460348730913949189651551661615086941150639745799348680939265639229652183779949891300800694212651242539065665160211064411462913549718995575049146352947136862709666679992026032759904087914068867697464373804128952475344158583320751518647138276881072430263144093033738878587945816775976944393933201081349823641427153545854976\n", + "539286765688262920086005932000060414133519042439062695513861971516036758349544399093170123164082654161341275602526677058857766120172665755218085319172399062035850617748073483632370821150937478057244449143047136150442397694156014215345031096473556119140527337173439538379974970171606485596288312619257345792052107947008306116058344233060184852741794913785628960440925115555130770923080300580920697461827898379303103323230173882301279491598697361878531278459304367559899782601601388425302485078131330320422128822925827099437991150098292705894273725419333359984052065519808175828137735394928747608257904950688317166641503037294276553762144860526288186067477757175891633551953888787866402162699647282854307091709952\n", + "1078573531376525840172011864000120828267038084878125391027723943032073516699088798186340246328165308322682551205053354117715532240345331510436170638344798124071701235496146967264741642301874956114488898286094272300884795388312028430690062192947112238281054674346879076759949940343212971192576625238514691584104215894016612232116688466120369705483589827571257920881850231110261541846160601161841394923655796758606206646460347764602558983197394723757062556918608735119799565203202776850604970156262660640844257645851654198875982300196585411788547450838666719968104131039616351656275470789857495216515809901376634333283006074588553107524289721052576372134955514351783267103907777575732804325399294565708614183419904\n", + "2157147062753051680344023728000241656534076169756250782055447886064147033398177596372680492656330616645365102410106708235431064480690663020872341276689596248143402470992293934529483284603749912228977796572188544601769590776624056861380124385894224476562109348693758153519899880686425942385153250477029383168208431788033224464233376932240739410967179655142515841763700462220523083692321202323682789847311593517212413292920695529205117966394789447514125113837217470239599130406405553701209940312525321281688515291703308397751964600393170823577094901677333439936208262079232703312550941579714990433031619802753268666566012149177106215048579442105152744269911028703566534207815555151465608650798589131417228366839808\n", + "4314294125506103360688047456000483313068152339512501564110895772128294066796355192745360985312661233290730204820213416470862128961381326041744682553379192496286804941984587869058966569207499824457955593144377089203539181553248113722760248771788448953124218697387516307039799761372851884770306500954058766336416863576066448928466753864481478821934359310285031683527400924441046167384642404647365579694623187034424826585841391058410235932789578895028250227674434940479198260812811107402419880625050642563377030583406616795503929200786341647154189803354666879872416524158465406625101883159429980866063239605506537333132024298354212430097158884210305488539822057407133068415631110302931217301597178262834456733679616\n", + "8628588251012206721376094912000966626136304679025003128221791544256588133592710385490721970625322466581460409640426832941724257922762652083489365106758384992573609883969175738117933138414999648915911186288754178407078363106496227445520497543576897906248437394775032614079599522745703769540613001908117532672833727152132897856933507728962957643868718620570063367054801848882092334769284809294731159389246374068849653171682782116820471865579157790056500455348869880958396521625622214804839761250101285126754061166813233591007858401572683294308379606709333759744833048316930813250203766318859961732126479211013074666264048596708424860194317768420610977079644114814266136831262220605862434603194356525668913467359232\n", + "17257176502024413442752189824001933252272609358050006256443583088513176267185420770981443941250644933162920819280853665883448515845525304166978730213516769985147219767938351476235866276829999297831822372577508356814156726212992454891040995087153795812496874789550065228159199045491407539081226003816235065345667454304265795713867015457925915287737437241140126734109603697764184669538569618589462318778492748137699306343365564233640943731158315580113000910697739761916793043251244429609679522500202570253508122333626467182015716803145366588616759213418667519489666096633861626500407532637719923464252958422026149332528097193416849720388635536841221954159288229628532273662524441211724869206388713051337826934718464\n", + "34514353004048826885504379648003866504545218716100012512887166177026352534370841541962887882501289866325841638561707331766897031691050608333957460427033539970294439535876702952471732553659998595663644745155016713628313452425984909782081990174307591624993749579100130456318398090982815078162452007632470130691334908608531591427734030915851830575474874482280253468219207395528369339077139237178924637556985496275398612686731128467281887462316631160226001821395479523833586086502488859219359045000405140507016244667252934364031433606290733177233518426837335038979332193267723253000815065275439846928505916844052298665056194386833699440777271073682443908318576459257064547325048882423449738412777426102675653869436928\n", + "69028706008097653771008759296007733009090437432200025025774332354052705068741683083925775765002579732651683277123414663533794063382101216667914920854067079940588879071753405904943465107319997191327289490310033427256626904851969819564163980348615183249987499158200260912636796181965630156324904015264940261382669817217063182855468061831703661150949748964560506936438414791056738678154278474357849275113970992550797225373462256934563774924633262320452003642790959047667172173004977718438718090000810281014032489334505868728062867212581466354467036853674670077958664386535446506001630130550879693857011833688104597330112388773667398881554542147364887816637152918514129094650097764846899476825554852205351307738873856\n", + "138057412016195307542017518592015466018180874864400050051548664708105410137483366167851551530005159465303366554246829327067588126764202433335829841708134159881177758143506811809886930214639994382654578980620066854513253809703939639128327960697230366499974998316400521825273592363931260312649808030529880522765339634434126365710936123663407322301899497929121013872876829582113477356308556948715698550227941985101594450746924513869127549849266524640904007285581918095334344346009955436877436180001620562028064978669011737456125734425162932708934073707349340155917328773070893012003260261101759387714023667376209194660224777547334797763109084294729775633274305837028258189300195529693798953651109704410702615477747712\n", + "276114824032390615084035037184030932036361749728800100103097329416210820274966732335703103060010318930606733108493658654135176253528404866671659683416268319762355516287013623619773860429279988765309157961240133709026507619407879278256655921394460732999949996632801043650547184727862520625299616061059761045530679268868252731421872247326814644603798995858242027745753659164226954712617113897431397100455883970203188901493849027738255099698533049281808014571163836190668688692019910873754872360003241124056129957338023474912251468850325865417868147414698680311834657546141786024006520522203518775428047334752418389320449555094669595526218168589459551266548611674056516378600391059387597907302219408821405230955495424\n", + "552229648064781230168070074368061864072723499457600200206194658832421640549933464671406206120020637861213466216987317308270352507056809733343319366832536639524711032574027247239547720858559977530618315922480267418053015238815758556513311842788921465999899993265602087301094369455725041250599232122119522091061358537736505462843744494653629289207597991716484055491507318328453909425234227794862794200911767940406377802987698055476510199397066098563616029142327672381337377384039821747509744720006482248112259914676046949824502937700651730835736294829397360623669315092283572048013041044407037550856094669504836778640899110189339191052436337178919102533097223348113032757200782118775195814604438817642810461910990848\n", + "1104459296129562460336140148736123728145446998915200400412389317664843281099866929342812412240041275722426932433974634616540705014113619466686638733665073279049422065148054494479095441717119955061236631844960534836106030477631517113026623685577842931999799986531204174602188738911450082501198464244239044182122717075473010925687488989307258578415195983432968110983014636656907818850468455589725588401823535880812755605975396110953020398794132197127232058284655344762674754768079643495019489440012964496224519829352093899649005875401303461671472589658794721247338630184567144096026082088814075101712189339009673557281798220378678382104872674357838205066194446696226065514401564237550391629208877635285620923821981696\n", + "2208918592259124920672280297472247456290893997830400800824778635329686562199733858685624824480082551444853864867949269233081410028227238933373277467330146558098844130296108988958190883434239910122473263689921069672212060955263034226053247371155685863999599973062408349204377477822900165002396928488478088364245434150946021851374977978614517156830391966865936221966029273313815637700936911179451176803647071761625511211950792221906040797588264394254464116569310689525349509536159286990038978880025928992449039658704187799298011750802606923342945179317589442494677260369134288192052164177628150203424378678019347114563596440757356764209745348715676410132388893392452131028803128475100783258417755270571241847643963392\n", + "4417837184518249841344560594944494912581787995660801601649557270659373124399467717371249648960165102889707729735898538466162820056454477866746554934660293116197688260592217977916381766868479820244946527379842139344424121910526068452106494742311371727999199946124816698408754955645800330004793856976956176728490868301892043702749955957229034313660783933731872443932058546627631275401873822358902353607294143523251022423901584443812081595176528788508928233138621379050699019072318573980077957760051857984898079317408375598596023501605213846685890358635178884989354520738268576384104328355256300406848757356038694229127192881514713528419490697431352820264777786784904262057606256950201566516835510541142483695287926784\n", + "8835674369036499682689121189888989825163575991321603203299114541318746248798935434742499297920330205779415459471797076932325640112908955733493109869320586232395376521184435955832763533736959640489893054759684278688848243821052136904212989484622743455998399892249633396817509911291600660009587713953912353456981736603784087405499911914458068627321567867463744887864117093255262550803747644717804707214588287046502044847803168887624163190353057577017856466277242758101398038144637147960155915520103715969796158634816751197192047003210427693371780717270357769978709041476537152768208656710512600813697514712077388458254385763029427056838981394862705640529555573569808524115212513900403133033671021082284967390575853568\n", + "17671348738072999365378242379777979650327151982643206406598229082637492497597870869484998595840660411558830918943594153864651280225817911466986219738641172464790753042368871911665527067473919280979786109519368557377696487642104273808425978969245486911996799784499266793635019822583201320019175427907824706913963473207568174810999823828916137254643135734927489775728234186510525101607495289435609414429176574093004089695606337775248326380706115154035712932554485516202796076289274295920311831040207431939592317269633502394384094006420855386743561434540715539957418082953074305536417313421025201627395029424154776916508771526058854113677962789725411281059111147139617048230425027800806266067342042164569934781151707136\n", + "35342697476145998730756484759555959300654303965286412813196458165274984995195741738969997191681320823117661837887188307729302560451635822933972439477282344929581506084737743823331054134947838561959572219038737114755392975284208547616851957938490973823993599568998533587270039645166402640038350855815649413827926946415136349621999647657832274509286271469854979551456468373021050203214990578871218828858353148186008179391212675550496652761412230308071425865108971032405592152578548591840623662080414863879184634539267004788768188012841710773487122869081431079914836165906148611072834626842050403254790058848309553833017543052117708227355925579450822562118222294279234096460850055601612532134684084329139869562303414272\n", + "70685394952291997461512969519111918601308607930572825626392916330549969990391483477939994383362641646235323675774376615458605120903271645867944878954564689859163012169475487646662108269895677123919144438077474229510785950568417095233703915876981947647987199137997067174540079290332805280076701711631298827655853892830272699243999295315664549018572542939709959102912936746042100406429981157742437657716706296372016358782425351100993305522824460616142851730217942064811184305157097183681247324160829727758369269078534009577536376025683421546974245738162862159829672331812297222145669253684100806509580117696619107666035086104235416454711851158901645124236444588558468192921700111203225064269368168658279739124606828544\n", + "141370789904583994923025939038223837202617215861145651252785832661099939980782966955879988766725283292470647351548753230917210241806543291735889757909129379718326024338950975293324216539791354247838288876154948459021571901136834190467407831753963895295974398275994134349080158580665610560153403423262597655311707785660545398487998590631329098037145085879419918205825873492084200812859962315484875315433412592744032717564850702201986611045648921232285703460435884129622368610314194367362494648321659455516738538157068019155072752051366843093948491476325724319659344663624594444291338507368201613019160235393238215332070172208470832909423702317803290248472889177116936385843400222406450128538736337316559478249213657088\n", + "282741579809167989846051878076447674405234431722291302505571665322199879961565933911759977533450566584941294703097506461834420483613086583471779515818258759436652048677901950586648433079582708495676577752309896918043143802273668380934815663507927790591948796551988268698160317161331221120306806846525195310623415571321090796975997181262658196074290171758839836411651746984168401625719924630969750630866825185488065435129701404403973222091297842464571406920871768259244737220628388734724989296643318911033477076314136038310145504102733686187896982952651448639318689327249188888582677014736403226038320470786476430664140344416941665818847404635606580496945778354233872771686800444812900257077472674633118956498427314176\n", + "565483159618335979692103756152895348810468863444582605011143330644399759923131867823519955066901133169882589406195012923668840967226173166943559031636517518873304097355803901173296866159165416991353155504619793836086287604547336761869631327015855581183897593103976537396320634322662442240613613693050390621246831142642181593951994362525316392148580343517679672823303493968336803251439849261939501261733650370976130870259402808807946444182595684929142813841743536518489474441256777469449978593286637822066954152628272076620291008205467372375793965905302897278637378654498377777165354029472806452076640941572952861328280688833883331637694809271213160993891556708467745543373600889625800514154945349266237912996854628352\n", + "1130966319236671959384207512305790697620937726889165210022286661288799519846263735647039910133802266339765178812390025847337681934452346333887118063273035037746608194711607802346593732318330833982706311009239587672172575209094673523739262654031711162367795186207953074792641268645324884481227227386100781242493662285284363187903988725050632784297160687035359345646606987936673606502879698523879002523467300741952261740518805617615892888365191369858285627683487073036978948882513554938899957186573275644133908305256544153240582016410934744751587931810605794557274757308996755554330708058945612904153281883145905722656561377667766663275389618542426321987783113416935491086747201779251601028309890698532475825993709256704\n", + "2261932638473343918768415024611581395241875453778330420044573322577599039692527471294079820267604532679530357624780051694675363868904692667774236126546070075493216389423215604693187464636661667965412622018479175344345150418189347047478525308063422324735590372415906149585282537290649768962454454772201562484987324570568726375807977450101265568594321374070718691293213975873347213005759397047758005046934601483904523481037611235231785776730382739716571255366974146073957897765027109877799914373146551288267816610513088306481164032821869489503175863621211589114549514617993511108661416117891225808306563766291811445313122755335533326550779237084852643975566226833870982173494403558503202056619781397064951651987418513408\n", + "4523865276946687837536830049223162790483750907556660840089146645155198079385054942588159640535209065359060715249560103389350727737809385335548472253092140150986432778846431209386374929273323335930825244036958350688690300836378694094957050616126844649471180744831812299170565074581299537924908909544403124969974649141137452751615954900202531137188642748141437382586427951746694426011518794095516010093869202967809046962075222470463571553460765479433142510733948292147915795530054219755599828746293102576535633221026176612962328065643738979006351727242423178229099029235987022217322832235782451616613127532583622890626245510671066653101558474169705287951132453667741964346988807117006404113239562794129903303974837026816\n", + "9047730553893375675073660098446325580967501815113321680178293290310396158770109885176319281070418130718121430499120206778701455475618770671096944506184280301972865557692862418772749858546646671861650488073916701377380601672757388189914101232253689298942361489663624598341130149162599075849817819088806249939949298282274905503231909800405062274377285496282874765172855903493388852023037588191032020187738405935618093924150444940927143106921530958866285021467896584295831591060108439511199657492586205153071266442052353225924656131287477958012703454484846356458198058471974044434645664471564903233226255065167245781252491021342133306203116948339410575902264907335483928693977614234012808226479125588259806607949674053632\n", + "18095461107786751350147320196892651161935003630226643360356586580620792317540219770352638562140836261436242860998240413557402910951237541342193889012368560603945731115385724837545499717093293343723300976147833402754761203345514776379828202464507378597884722979327249196682260298325198151699635638177612499879898596564549811006463819600810124548754570992565749530345711806986777704046075176382064040375476811871236187848300889881854286213843061917732570042935793168591663182120216879022399314985172410306142532884104706451849312262574955916025406908969692712916396116943948088869291328943129806466452510130334491562504982042684266612406233896678821151804529814670967857387955228468025616452958251176519613215899348107264\n", + "36190922215573502700294640393785302323870007260453286720713173161241584635080439540705277124281672522872485721996480827114805821902475082684387778024737121207891462230771449675090999434186586687446601952295666805509522406691029552759656404929014757195769445958654498393364520596650396303399271276355224999759797193129099622012927639201620249097509141985131499060691423613973555408092150352764128080750953623742472375696601779763708572427686123835465140085871586337183326364240433758044798629970344820612285065768209412903698624525149911832050813817939385425832792233887896177738582657886259612932905020260668983125009964085368533224812467793357642303609059629341935714775910456936051232905916502353039226431798696214528\n", + "72381844431147005400589280787570604647740014520906573441426346322483169270160879081410554248563345045744971443992961654229611643804950165368775556049474242415782924461542899350181998868373173374893203904591333611019044813382059105519312809858029514391538891917308996786729041193300792606798542552710449999519594386258199244025855278403240498195018283970262998121382847227947110816184300705528256161501907247484944751393203559527417144855372247670930280171743172674366652728480867516089597259940689641224570131536418825807397249050299823664101627635878770851665584467775792355477165315772519225865810040521337966250019928170737066449624935586715284607218119258683871429551820913872102465811833004706078452863597392429056\n", + "144763688862294010801178561575141209295480029041813146882852692644966338540321758162821108497126690091489942887985923308459223287609900330737551112098948484831565848923085798700363997736746346749786407809182667222038089626764118211038625619716059028783077783834617993573458082386601585213597085105420899999039188772516398488051710556806480996390036567940525996242765694455894221632368601411056512323003814494969889502786407119054834289710744495341860560343486345348733305456961735032179194519881379282449140263072837651614794498100599647328203255271757541703331168935551584710954330631545038451731620081042675932500039856341474132899249871173430569214436238517367742859103641827744204931623666009412156905727194784858112\n", + "289527377724588021602357123150282418590960058083626293765705385289932677080643516325642216994253380182979885775971846616918446575219800661475102224197896969663131697846171597400727995473492693499572815618365334444076179253528236422077251239432118057566155567669235987146916164773203170427194170210841799998078377545032796976103421113612961992780073135881051992485531388911788443264737202822113024646007628989939779005572814238109668579421488990683721120686972690697466610913923470064358389039762758564898280526145675303229588996201199294656406510543515083406662337871103169421908661263090076903463240162085351865000079712682948265798499742346861138428872477034735485718207283655488409863247332018824313811454389569716224\n", + "579054755449176043204714246300564837181920116167252587531410770579865354161287032651284433988506760365959771551943693233836893150439601322950204448395793939326263395692343194801455990946985386999145631236730668888152358507056472844154502478864236115132311135338471974293832329546406340854388340421683599996156755090065593952206842227225923985560146271762103984971062777823576886529474405644226049292015257979879558011145628476219337158842977981367442241373945381394933221827846940128716778079525517129796561052291350606459177992402398589312813021087030166813324675742206338843817322526180153806926480324170703730000159425365896531596999484693722276857744954069470971436414567310976819726494664037648627622908779139432448\n", + "1158109510898352086409428492601129674363840232334505175062821541159730708322574065302568867977013520731919543103887386467673786300879202645900408896791587878652526791384686389602911981893970773998291262473461337776304717014112945688309004957728472230264622270676943948587664659092812681708776680843367199992313510180131187904413684454451847971120292543524207969942125555647153773058948811288452098584030515959759116022291256952438674317685955962734884482747890762789866443655693880257433556159051034259593122104582701212918355984804797178625626042174060333626649351484412677687634645052360307613852960648341407460000318850731793063193998969387444553715489908138941942872829134621953639452989328075297255245817558278864896\n", + "2316219021796704172818856985202259348727680464669010350125643082319461416645148130605137735954027041463839086207774772935347572601758405291800817793583175757305053582769372779205823963787941547996582524946922675552609434028225891376618009915456944460529244541353887897175329318185625363417553361686734399984627020360262375808827368908903695942240585087048415939884251111294307546117897622576904197168061031919518232044582513904877348635371911925469768965495781525579732887311387760514867112318102068519186244209165402425836711969609594357251252084348120667253298702968825355375269290104720615227705921296682814920000637701463586126387997938774889107430979816277883885745658269243907278905978656150594510491635116557729792\n", + "4632438043593408345637713970404518697455360929338020700251286164638922833290296261210275471908054082927678172415549545870695145203516810583601635587166351514610107165538745558411647927575883095993165049893845351105218868056451782753236019830913888921058489082707775794350658636371250726835106723373468799969254040720524751617654737817807391884481170174096831879768502222588615092235795245153808394336122063839036464089165027809754697270743823850939537930991563051159465774622775521029734224636204137038372488418330804851673423939219188714502504168696241334506597405937650710750538580209441230455411842593365629840001275402927172252775995877549778214861959632555767771491316538487814557811957312301189020983270233115459584\n", + "9264876087186816691275427940809037394910721858676041400502572329277845666580592522420550943816108165855356344831099091741390290407033621167203271174332703029220214331077491116823295855151766191986330099787690702210437736112903565506472039661827777842116978165415551588701317272742501453670213446746937599938508081441049503235309475635614783768962340348193663759537004445177230184471590490307616788672244127678072928178330055619509394541487647701879075861983126102318931549245551042059468449272408274076744976836661609703346847878438377429005008337392482669013194811875301421501077160418882460910823685186731259680002550805854344505551991755099556429723919265111535542982633076975629115623914624602378041966540466230919168\n", + "18529752174373633382550855881618074789821443717352082801005144658555691333161185044841101887632216331710712689662198183482780580814067242334406542348665406058440428662154982233646591710303532383972660199575381404420875472225807131012944079323655555684233956330831103177402634545485002907340426893493875199877016162882099006470618951271229567537924680696387327519074008890354460368943180980615233577344488255356145856356660111239018789082975295403758151723966252204637863098491102084118936898544816548153489953673323219406693695756876754858010016674784965338026389623750602843002154320837764921821647370373462519360005101611708689011103983510199112859447838530223071085965266153951258231247829249204756083933080932461838336\n", + "37059504348747266765101711763236149579642887434704165602010289317111382666322370089682203775264432663421425379324396366965561161628134484668813084697330812116880857324309964467293183420607064767945320399150762808841750944451614262025888158647311111368467912661662206354805269090970005814680853786987750399754032325764198012941237902542459135075849361392774655038148017780708920737886361961230467154688976510712291712713320222478037578165950590807516303447932504409275726196982204168237873797089633096306979907346646438813387391513753509716020033349569930676052779247501205686004308641675529843643294740746925038720010203223417378022207967020398225718895677060446142171930532307902516462495658498409512167866161864923676672\n", + "74119008697494533530203423526472299159285774869408331204020578634222765332644740179364407550528865326842850758648792733931122323256268969337626169394661624233761714648619928934586366841214129535890640798301525617683501888903228524051776317294622222736935825323324412709610538181940011629361707573975500799508064651528396025882475805084918270151698722785549310076296035561417841475772723922460934309377953021424583425426640444956075156331901181615032606895865008818551452393964408336475747594179266192613959814693292877626774783027507019432040066699139861352105558495002411372008617283351059687286589481493850077440020406446834756044415934040796451437791354120892284343861064615805032924991316996819024335732323729847353344\n", + "148238017394989067060406847052944598318571549738816662408041157268445530665289480358728815101057730653685701517297585467862244646512537938675252338789323248467523429297239857869172733682428259071781281596603051235367003777806457048103552634589244445473871650646648825419221076363880023258723415147951001599016129303056792051764951610169836540303397445571098620152592071122835682951545447844921868618755906042849166850853280889912150312663802363230065213791730017637102904787928816672951495188358532385227919629386585755253549566055014038864080133398279722704211116990004822744017234566702119374573178962987700154880040812893669512088831868081592902875582708241784568687722129231610065849982633993638048671464647459694706688\n", + "296476034789978134120813694105889196637143099477633324816082314536891061330578960717457630202115461307371403034595170935724489293025075877350504677578646496935046858594479715738345467364856518143562563193206102470734007555612914096207105269178488890947743301293297650838442152727760046517446830295902003198032258606113584103529903220339673080606794891142197240305184142245671365903090895689843737237511812085698333701706561779824300625327604726460130427583460035274205809575857633345902990376717064770455839258773171510507099132110028077728160266796559445408422233980009645488034469133404238749146357925975400309760081625787339024177663736163185805751165416483569137375444258463220131699965267987276097342929294919389413376\n", + "592952069579956268241627388211778393274286198955266649632164629073782122661157921434915260404230922614742806069190341871448978586050151754701009355157292993870093717188959431476690934729713036287125126386412204941468015111225828192414210538356977781895486602586595301676884305455520093034893660591804006396064517212227168207059806440679346161213589782284394480610368284491342731806181791379687474475023624171396667403413123559648601250655209452920260855166920070548411619151715266691805980753434129540911678517546343021014198264220056155456320533593118890816844467960019290976068938266808477498292715851950800619520163251574678048355327472326371611502330832967138274750888516926440263399930535974552194685858589838778826752\n", + "1185904139159912536483254776423556786548572397910533299264329258147564245322315842869830520808461845229485612138380683742897957172100303509402018710314585987740187434377918862953381869459426072574250252772824409882936030222451656384828421076713955563790973205173190603353768610911040186069787321183608012792129034424454336414119612881358692322427179564568788961220736568982685463612363582759374948950047248342793334806826247119297202501310418905840521710333840141096823238303430533383611961506868259081823357035092686042028396528440112310912641067186237781633688935920038581952137876533616954996585431703901601239040326503149356096710654944652743223004661665934276549501777033852880526799861071949104389371717179677557653504\n", + "2371808278319825072966509552847113573097144795821066598528658516295128490644631685739661041616923690458971224276761367485795914344200607018804037420629171975480374868755837725906763738918852145148500505545648819765872060444903312769656842153427911127581946410346381206707537221822080372139574642367216025584258068848908672828239225762717384644854359129137577922441473137965370927224727165518749897900094496685586669613652494238594405002620837811681043420667680282193646476606861066767223923013736518163646714070185372084056793056880224621825282134372475563267377871840077163904275753067233909993170863407803202478080653006298712193421309889305486446009323331868553099003554067705761053599722143898208778743434359355115307008\n", + "4743616556639650145933019105694227146194289591642133197057317032590256981289263371479322083233847380917942448553522734971591828688401214037608074841258343950960749737511675451813527477837704290297001011091297639531744120889806625539313684306855822255163892820692762413415074443644160744279149284734432051168516137697817345656478451525434769289708718258275155844882946275930741854449454331037499795800188993371173339227304988477188810005241675623362086841335360564387292953213722133534447846027473036327293428140370744168113586113760449243650564268744951126534755743680154327808551506134467819986341726815606404956161306012597424386842619778610972892018646663737106198007108135411522107199444287796417557486868718710230614016\n", + "9487233113279300291866038211388454292388579183284266394114634065180513962578526742958644166467694761835884897107045469943183657376802428075216149682516687901921499475023350903627054955675408580594002022182595279063488241779613251078627368613711644510327785641385524826830148887288321488558298569468864102337032275395634691312956903050869538579417436516550311689765892551861483708898908662074999591600377986742346678454609976954377620010483351246724173682670721128774585906427444267068895692054946072654586856280741488336227172227520898487301128537489902253069511487360308655617103012268935639972683453631212809912322612025194848773685239557221945784037293327474212396014216270823044214398888575592835114973737437420461228032\n", + "18974466226558600583732076422776908584777158366568532788229268130361027925157053485917288332935389523671769794214090939886367314753604856150432299365033375803842998950046701807254109911350817161188004044365190558126976483559226502157254737227423289020655571282771049653660297774576642977116597138937728204674064550791269382625913806101739077158834873033100623379531785103722967417797817324149999183200755973484693356909219953908755240020966702493448347365341442257549171812854888534137791384109892145309173712561482976672454344455041796974602257074979804506139022974720617311234206024537871279945366907262425619824645224050389697547370479114443891568074586654948424792028432541646088428797777151185670229947474874840922456064\n", + "37948932453117201167464152845553817169554316733137065576458536260722055850314106971834576665870779047343539588428181879772734629507209712300864598730066751607685997900093403614508219822701634322376008088730381116253952967118453004314509474454846578041311142565542099307320595549153285954233194277875456409348129101582538765251827612203478154317669746066201246759063570207445934835595634648299998366401511946969386713818439907817510480041933404986896694730682884515098343625709777068275582768219784290618347425122965953344908688910083593949204514149959609012278045949441234622468412049075742559890733814524851239649290448100779395094740958228887783136149173309896849584056865083292176857595554302371340459894949749681844912128\n", + "75897864906234402334928305691107634339108633466274131152917072521444111700628213943669153331741558094687079176856363759545469259014419424601729197460133503215371995800186807229016439645403268644752016177460762232507905934236906008629018948909693156082622285131084198614641191098306571908466388555750912818696258203165077530503655224406956308635339492132402493518127140414891869671191269296599996732803023893938773427636879815635020960083866809973793389461365769030196687251419554136551165536439568581236694850245931906689817377820167187898409028299919218024556091898882469244936824098151485119781467629049702479298580896201558790189481916457775566272298346619793699168113730166584353715191108604742680919789899499363689824256\n", + "151795729812468804669856611382215268678217266932548262305834145042888223401256427887338306663483116189374158353712727519090938518028838849203458394920267006430743991600373614458032879290806537289504032354921524465015811868473812017258037897819386312165244570262168397229282382196613143816932777111501825637392516406330155061007310448813912617270678984264804987036254280829783739342382538593199993465606047787877546855273759631270041920167733619947586778922731538060393374502839108273102331072879137162473389700491863813379634755640334375796818056599838436049112183797764938489873648196302970239562935258099404958597161792403117580378963832915551132544596693239587398336227460333168707430382217209485361839579798998727379648512\n", + "303591459624937609339713222764430537356434533865096524611668290085776446802512855774676613326966232378748316707425455038181877036057677698406916789840534012861487983200747228916065758581613074579008064709843048930031623736947624034516075795638772624330489140524336794458564764393226287633865554223003651274785032812660310122014620897627825234541357968529609974072508561659567478684765077186399986931212095575755093710547519262540083840335467239895173557845463076120786749005678216546204662145758274324946779400983727626759269511280668751593636113199676872098224367595529876979747296392605940479125870516198809917194323584806235160757927665831102265089193386479174796672454920666337414860764434418970723679159597997454759297024\n", + "607182919249875218679426445528861074712869067730193049223336580171552893605025711549353226653932464757496633414850910076363754072115355396813833579681068025722975966401494457832131517163226149158016129419686097860063247473895248069032151591277545248660978281048673588917129528786452575267731108446007302549570065625320620244029241795255650469082715937059219948145017123319134957369530154372799973862424191151510187421095038525080167680670934479790347115690926152241573498011356433092409324291516548649893558801967455253518539022561337503187272226399353744196448735191059753959494592785211880958251741032397619834388647169612470321515855331662204530178386772958349593344909841332674829721528868837941447358319195994909518594048\n", + "1214365838499750437358852891057722149425738135460386098446673160343105787210051423098706453307864929514993266829701820152727508144230710793627667159362136051445951932802988915664263034326452298316032258839372195720126494947790496138064303182555090497321956562097347177834259057572905150535462216892014605099140131250641240488058483590511300938165431874118439896290034246638269914739060308745599947724848382303020374842190077050160335361341868959580694231381852304483146996022712866184818648583033097299787117603934910507037078045122675006374544452798707488392897470382119507918989185570423761916503482064795239668777294339224940643031710663324409060356773545916699186689819682665349659443057737675882894716638391989819037188096\n", + "2428731676999500874717705782115444298851476270920772196893346320686211574420102846197412906615729859029986533659403640305455016288461421587255334318724272102891903865605977831328526068652904596632064517678744391440252989895580992276128606365110180994643913124194694355668518115145810301070924433784029210198280262501282480976116967181022601876330863748236879792580068493276539829478120617491199895449696764606040749684380154100320670722683737919161388462763704608966293992045425732369637297166066194599574235207869821014074156090245350012749088905597414976785794940764239015837978371140847523833006964129590479337554588678449881286063421326648818120713547091833398373379639365330699318886115475351765789433276783979638074376192\n", + "4857463353999001749435411564230888597702952541841544393786692641372423148840205692394825813231459718059973067318807280610910032576922843174510668637448544205783807731211955662657052137305809193264129035357488782880505979791161984552257212730220361989287826248389388711337036230291620602141848867568058420396560525002564961952233934362045203752661727496473759585160136986553079658956241234982399790899393529212081499368760308200641341445367475838322776925527409217932587984090851464739274594332132389199148470415739642028148312180490700025498177811194829953571589881528478031675956742281695047666013928259180958675109177356899762572126842653297636241427094183666796746759278730661398637772230950703531578866553567959276148752384\n", + "9714926707998003498870823128461777195405905083683088787573385282744846297680411384789651626462919436119946134637614561221820065153845686349021337274897088411567615462423911325314104274611618386528258070714977565761011959582323969104514425460440723978575652496778777422674072460583241204283697735136116840793121050005129923904467868724090407505323454992947519170320273973106159317912482469964799581798787058424162998737520616401282682890734951676645553851054818435865175968181702929478549188664264778398296940831479284056296624360981400050996355622389659907143179763056956063351913484563390095332027856518361917350218354713799525144253685306595272482854188367333593493518557461322797275544461901407063157733107135918552297504768\n", + "19429853415996006997741646256923554390811810167366177575146770565489692595360822769579303252925838872239892269275229122443640130307691372698042674549794176823135230924847822650628208549223236773056516141429955131522023919164647938209028850920881447957151304993557554845348144921166482408567395470272233681586242100010259847808935737448180815010646909985895038340640547946212318635824964939929599163597574116848325997475041232802565365781469903353291107702109636871730351936363405858957098377328529556796593881662958568112593248721962800101992711244779319814286359526113912126703826969126780190664055713036723834700436709427599050288507370613190544965708376734667186987037114922645594551088923802814126315466214271837104595009536\n", + "38859706831992013995483292513847108781623620334732355150293541130979385190721645539158606505851677744479784538550458244887280260615382745396085349099588353646270461849695645301256417098446473546113032282859910263044047838329295876418057701841762895914302609987115109690696289842332964817134790940544467363172484200020519695617871474896361630021293819971790076681281095892424637271649929879859198327195148233696651994950082465605130731562939806706582215404219273743460703872726811717914196754657059113593187763325917136225186497443925600203985422489558639628572719052227824253407653938253560381328111426073447669400873418855198100577014741226381089931416753469334373974074229845291189102177847605628252630932428543674209190019072\n", + "77719413663984027990966585027694217563247240669464710300587082261958770381443291078317213011703355488959569077100916489774560521230765490792170698199176707292540923699391290602512834196892947092226064565719820526088095676658591752836115403683525791828605219974230219381392579684665929634269581881088934726344968400041039391235742949792723260042587639943580153362562191784849274543299859759718396654390296467393303989900164931210261463125879613413164430808438547486921407745453623435828393509314118227186375526651834272450372994887851200407970844979117279257145438104455648506815307876507120762656222852146895338801746837710396201154029482452762179862833506938668747948148459690582378204355695211256505261864857087348418380038144\n", + "155438827327968055981933170055388435126494481338929420601174164523917540762886582156634426023406710977919138154201832979549121042461530981584341396398353414585081847398782581205025668393785894184452129131439641052176191353317183505672230807367051583657210439948460438762785159369331859268539163762177869452689936800082078782471485899585446520085175279887160306725124383569698549086599719519436793308780592934786607979800329862420522926251759226826328861616877094973842815490907246871656787018628236454372751053303668544900745989775702400815941689958234558514290876208911297013630615753014241525312445704293790677603493675420792402308058964905524359725667013877337495896296919381164756408711390422513010523729714174696836760076288\n", + "310877654655936111963866340110776870252988962677858841202348329047835081525773164313268852046813421955838276308403665959098242084923061963168682792796706829170163694797565162410051336787571788368904258262879282104352382706634367011344461614734103167314420879896920877525570318738663718537078327524355738905379873600164157564942971799170893040170350559774320613450248767139397098173199439038873586617561185869573215959600659724841045852503518453652657723233754189947685630981814493743313574037256472908745502106607337089801491979551404801631883379916469117028581752417822594027261231506028483050624891408587581355206987350841584804616117929811048719451334027754674991792593838762329512817422780845026021047459428349393673520152576\n", + "621755309311872223927732680221553740505977925355717682404696658095670163051546328626537704093626843911676552616807331918196484169846123926337365585593413658340327389595130324820102673575143576737808516525758564208704765413268734022688923229468206334628841759793841755051140637477327437074156655048711477810759747200328315129885943598341786080340701119548641226900497534278794196346398878077747173235122371739146431919201319449682091705007036907305315446467508379895371261963628987486627148074512945817491004213214674179602983959102809603263766759832938234057163504835645188054522463012056966101249782817175162710413974701683169609232235859622097438902668055509349983585187677524659025634845561690052042094918856698787347040305152\n", + "1243510618623744447855465360443107481011955850711435364809393316191340326103092657253075408187253687823353105233614663836392968339692247852674731171186827316680654779190260649640205347150287153475617033051517128417409530826537468045377846458936412669257683519587683510102281274954654874148313310097422955621519494400656630259771887196683572160681402239097282453800995068557588392692797756155494346470244743478292863838402638899364183410014073814610630892935016759790742523927257974973254296149025891634982008426429348359205967918205619206527533519665876468114327009671290376109044926024113932202499565634350325420827949403366339218464471719244194877805336111018699967170375355049318051269691123380104084189837713397574694080610304\n", + "2487021237247488895710930720886214962023911701422870729618786632382680652206185314506150816374507375646706210467229327672785936679384495705349462342373654633361309558380521299280410694300574306951234066103034256834819061653074936090755692917872825338515367039175367020204562549909309748296626620194845911243038988801313260519543774393367144321362804478194564907601990137115176785385595512310988692940489486956585727676805277798728366820028147629221261785870033519581485047854515949946508592298051783269964016852858696718411935836411238413055067039331752936228654019342580752218089852048227864404999131268700650841655898806732678436928943438488389755610672222037399934340750710098636102539382246760208168379675426795149388161220608\n", + "4974042474494977791421861441772429924047823402845741459237573264765361304412370629012301632749014751293412420934458655345571873358768991410698924684747309266722619116761042598560821388601148613902468132206068513669638123306149872181511385835745650677030734078350734040409125099818619496593253240389691822486077977602626521039087548786734288642725608956389129815203980274230353570771191024621977385880978973913171455353610555597456733640056295258442523571740067039162970095709031899893017184596103566539928033705717393436823871672822476826110134078663505872457308038685161504436179704096455728809998262537401301683311797613465356873857886876976779511221344444074799868681501420197272205078764493520416336759350853590298776322441216\n", + "9948084948989955582843722883544859848095646805691482918475146529530722608824741258024603265498029502586824841868917310691143746717537982821397849369494618533445238233522085197121642777202297227804936264412137027339276246612299744363022771671491301354061468156701468080818250199637238993186506480779383644972155955205253042078175097573468577285451217912778259630407960548460707141542382049243954771761957947826342910707221111194913467280112590516885047143480134078325940191418063799786034369192207133079856067411434786873647743345644953652220268157327011744914616077370323008872359408192911457619996525074802603366623595226930713747715773753953559022442688888149599737363002840394544410157528987040832673518701707180597552644882432\n", + "19896169897979911165687445767089719696191293611382965836950293059061445217649482516049206530996059005173649683737834621382287493435075965642795698738989237066890476467044170394243285554404594455609872528824274054678552493224599488726045543342982602708122936313402936161636500399274477986373012961558767289944311910410506084156350195146937154570902435825556519260815921096921414283084764098487909543523915895652685821414442222389826934560225181033770094286960268156651880382836127599572068738384414266159712134822869573747295486691289907304440536314654023489829232154740646017744718816385822915239993050149605206733247190453861427495431547507907118044885377776299199474726005680789088820315057974081665347037403414361195105289764864\n", + "39792339795959822331374891534179439392382587222765931673900586118122890435298965032098413061992118010347299367475669242764574986870151931285591397477978474133780952934088340788486571108809188911219745057648548109357104986449198977452091086685965205416245872626805872323273000798548955972746025923117534579888623820821012168312700390293874309141804871651113038521631842193842828566169528196975819087047831791305371642828884444779653869120450362067540188573920536313303760765672255199144137476768828532319424269645739147494590973382579814608881072629308046979658464309481292035489437632771645830479986100299210413466494380907722854990863095015814236089770755552598398949452011361578177640630115948163330694074806828722390210579529728\n", + "79584679591919644662749783068358878784765174445531863347801172236245780870597930064196826123984236020694598734951338485529149973740303862571182794955956948267561905868176681576973142217618377822439490115297096218714209972898397954904182173371930410832491745253611744646546001597097911945492051846235069159777247641642024336625400780587748618283609743302226077043263684387685657132339056393951638174095663582610743285657768889559307738240900724135080377147841072626607521531344510398288274953537657064638848539291478294989181946765159629217762145258616093959316928618962584070978875265543291660959972200598420826932988761815445709981726190031628472179541511105196797898904022723156355281260231896326661388149613657444780421159059456\n", + "159169359183839289325499566136717757569530348891063726695602344472491561741195860128393652247968472041389197469902676971058299947480607725142365589911913896535123811736353363153946284435236755644878980230594192437428419945796795909808364346743860821664983490507223489293092003194195823890984103692470138319554495283284048673250801561175497236567219486604452154086527368775371314264678112787903276348191327165221486571315537779118615476481801448270160754295682145253215043062689020796576549907075314129277697078582956589978363893530319258435524290517232187918633857237925168141957750531086583321919944401196841653865977523630891419963452380063256944359083022210393595797808045446312710562520463792653322776299227314889560842318118912\n", + "318338718367678578650999132273435515139060697782127453391204688944983123482391720256787304495936944082778394939805353942116599894961215450284731179823827793070247623472706726307892568870473511289757960461188384874856839891593591819616728693487721643329966981014446978586184006388391647781968207384940276639108990566568097346501603122350994473134438973208904308173054737550742628529356225575806552696382654330442973142631075558237230952963602896540321508591364290506430086125378041593153099814150628258555394157165913179956727787060638516871048581034464375837267714475850336283915501062173166643839888802393683307731955047261782839926904760126513888718166044420787191595616090892625421125040927585306645552598454629779121684636237824\n", + "636677436735357157301998264546871030278121395564254906782409377889966246964783440513574608991873888165556789879610707884233199789922430900569462359647655586140495246945413452615785137740947022579515920922376769749713679783187183639233457386975443286659933962028893957172368012776783295563936414769880553278217981133136194693003206244701988946268877946417808616346109475101485257058712451151613105392765308660885946285262151116474461905927205793080643017182728581012860172250756083186306199628301256517110788314331826359913455574121277033742097162068928751674535428951700672567831002124346333287679777604787366615463910094523565679853809520253027777436332088841574383191232181785250842250081855170613291105196909259558243369272475648\n", + "1273354873470714314603996529093742060556242791128509813564818755779932493929566881027149217983747776331113579759221415768466399579844861801138924719295311172280990493890826905231570275481894045159031841844753539499427359566374367278466914773950886573319867924057787914344736025553566591127872829539761106556435962266272389386006412489403977892537755892835617232692218950202970514117424902303226210785530617321771892570524302232948923811854411586161286034365457162025720344501512166372612399256602513034221576628663652719826911148242554067484194324137857503349070857903401345135662004248692666575359555209574733230927820189047131359707619040506055554872664177683148766382464363570501684500163710341226582210393818519116486738544951296\n", + "2546709746941428629207993058187484121112485582257019627129637511559864987859133762054298435967495552662227159518442831536932799159689723602277849438590622344561980987781653810463140550963788090318063683689507078998854719132748734556933829547901773146639735848115575828689472051107133182255745659079522213112871924532544778772012824978807955785075511785671234465384437900405941028234849804606452421571061234643543785141048604465897847623708823172322572068730914324051440689003024332745224798513205026068443153257327305439653822296485108134968388648275715006698141715806802690271324008497385333150719110419149466461855640378094262719415238081012111109745328355366297532764928727141003369000327420682453164420787637038232973477089902592\n", + "5093419493882857258415986116374968242224971164514039254259275023119729975718267524108596871934991105324454319036885663073865598319379447204555698877181244689123961975563307620926281101927576180636127367379014157997709438265497469113867659095803546293279471696231151657378944102214266364511491318159044426225743849065089557544025649957615911570151023571342468930768875800811882056469699609212904843142122469287087570282097208931795695247417646344645144137461828648102881378006048665490449597026410052136886306514654610879307644592970216269936777296551430013396283431613605380542648016994770666301438220838298932923711280756188525438830476162024222219490656710732595065529857454282006738000654841364906328841575274076465946954179805184\n", + "10186838987765714516831972232749936484449942329028078508518550046239459951436535048217193743869982210648908638073771326147731196638758894409111397754362489378247923951126615241852562203855152361272254734758028315995418876530994938227735318191607092586558943392462303314757888204428532729022982636318088852451487698130179115088051299915231823140302047142684937861537751601623764112939399218425809686284244938574175140564194417863591390494835292689290288274923657296205762756012097330980899194052820104273772613029309221758615289185940432539873554593102860026792566863227210761085296033989541332602876441676597865847422561512377050877660952324048444438981313421465190131059714908564013476001309682729812657683150548152931893908359610368\n", + "20373677975531429033663944465499872968899884658056157017037100092478919902873070096434387487739964421297817276147542652295462393277517788818222795508724978756495847902253230483705124407710304722544509469516056631990837753061989876455470636383214185173117886784924606629515776408857065458045965272636177704902975396260358230176102599830463646280604094285369875723075503203247528225878798436851619372568489877148350281128388835727182780989670585378580576549847314592411525512024194661961798388105640208547545226058618443517230578371880865079747109186205720053585133726454421522170592067979082665205752883353195731694845123024754101755321904648096888877962626842930380262119429817128026952002619365459625315366301096305863787816719220736\n", + "40747355951062858067327888930999745937799769316112314034074200184957839805746140192868774975479928842595634552295085304590924786555035577636445591017449957512991695804506460967410248815420609445089018939032113263981675506123979752910941272766428370346235773569849213259031552817714130916091930545272355409805950792520716460352205199660927292561208188570739751446151006406495056451757596873703238745136979754296700562256777671454365561979341170757161153099694629184823051024048389323923596776211280417095090452117236887034461156743761730159494218372411440107170267452908843044341184135958165330411505766706391463389690246049508203510643809296193777755925253685860760524238859634256053904005238730919250630732602192611727575633438441472\n", + "81494711902125716134655777861999491875599538632224628068148400369915679611492280385737549950959857685191269104590170609181849573110071155272891182034899915025983391609012921934820497630841218890178037878064226527963351012247959505821882545532856740692471547139698426518063105635428261832183861090544710819611901585041432920704410399321854585122416377141479502892302012812990112903515193747406477490273959508593401124513555342908731123958682341514322306199389258369646102048096778647847193552422560834190180904234473774068922313487523460318988436744822880214340534905817686088682368271916330660823011533412782926779380492099016407021287618592387555511850507371721521048477719268512107808010477461838501261465204385223455151266876882944\n", + "162989423804251432269311555723998983751199077264449256136296800739831359222984560771475099901919715370382538209180341218363699146220142310545782364069799830051966783218025843869640995261682437780356075756128453055926702024495919011643765091065713481384943094279396853036126211270856523664367722181089421639223803170082865841408820798643709170244832754282959005784604025625980225807030387494812954980547919017186802249027110685817462247917364683028644612398778516739292204096193557295694387104845121668380361808468947548137844626975046920637976873489645760428681069811635372177364736543832661321646023066825565853558760984198032814042575237184775111023701014743443042096955438537024215616020954923677002522930408770446910302533753765888\n", + "325978847608502864538623111447997967502398154528898512272593601479662718445969121542950199803839430740765076418360682436727398292440284621091564728139599660103933566436051687739281990523364875560712151512256906111853404048991838023287530182131426962769886188558793706072252422541713047328735444362178843278447606340165731682817641597287418340489665508565918011569208051251960451614060774989625909961095838034373604498054221371634924495834729366057289224797557033478584408192387114591388774209690243336760723616937895096275689253950093841275953746979291520857362139623270744354729473087665322643292046133651131707117521968396065628085150474369550222047402029486886084193910877074048431232041909847354005045860817540893820605067507531776\n", + "651957695217005729077246222895995935004796309057797024545187202959325436891938243085900399607678861481530152836721364873454796584880569242183129456279199320207867132872103375478563981046729751121424303024513812223706808097983676046575060364262853925539772377117587412144504845083426094657470888724357686556895212680331463365635283194574836680979331017131836023138416102503920903228121549979251819922191676068747208996108442743269848991669458732114578449595114066957168816384774229182777548419380486673521447233875790192551378507900187682551907493958583041714724279246541488709458946175330645286584092267302263414235043936792131256170300948739100444094804058973772168387821754148096862464083819694708010091721635081787641210135015063552\n", + "1303915390434011458154492445791991870009592618115594049090374405918650873783876486171800799215357722963060305673442729746909593169761138484366258912558398640415734265744206750957127962093459502242848606049027624447413616195967352093150120728525707851079544754235174824289009690166852189314941777448715373113790425360662926731270566389149673361958662034263672046276832205007841806456243099958503639844383352137494417992216885486539697983338917464229156899190228133914337632769548458365555096838760973347042894467751580385102757015800375365103814987917166083429448558493082977418917892350661290573168184534604526828470087873584262512340601897478200888189608117947544336775643508296193724928167639389416020183443270163575282420270030127104\n", + "2607830780868022916308984891583983740019185236231188098180748811837301747567752972343601598430715445926120611346885459493819186339522276968732517825116797280831468531488413501914255924186919004485697212098055248894827232391934704186300241457051415702159089508470349648578019380333704378629883554897430746227580850721325853462541132778299346723917324068527344092553664410015683612912486199917007279688766704274988835984433770973079395966677834928458313798380456267828675265539096916731110193677521946694085788935503160770205514031600750730207629975834332166858897116986165954837835784701322581146336369069209053656940175747168525024681203794956401776379216235895088673551287016592387449856335278778832040366886540327150564840540060254208\n", + "5215661561736045832617969783167967480038370472462376196361497623674603495135505944687203196861430891852241222693770918987638372679044553937465035650233594561662937062976827003828511848373838008971394424196110497789654464783869408372600482914102831404318179016940699297156038760667408757259767109794861492455161701442651706925082265556598693447834648137054688185107328820031367225824972399834014559377533408549977671968867541946158791933355669856916627596760912535657350531078193833462220387355043893388171577871006321540411028063201501460415259951668664333717794233972331909675671569402645162292672738138418107313880351494337050049362407589912803552758432471790177347102574033184774899712670557557664080733773080654301129681080120508416\n", + "10431323123472091665235939566335934960076740944924752392722995247349206990271011889374406393722861783704482445387541837975276745358089107874930071300467189123325874125953654007657023696747676017942788848392220995579308929567738816745200965828205662808636358033881398594312077521334817514519534219589722984910323402885303413850164531113197386895669296274109376370214657640062734451649944799668029118755066817099955343937735083892317583866711339713833255193521825071314701062156387666924440774710087786776343155742012643080822056126403002920830519903337328667435588467944663819351343138805290324585345476276836214627760702988674100098724815179825607105516864943580354694205148066369549799425341115115328161467546161308602259362160241016832\n", + "20862646246944183330471879132671869920153481889849504785445990494698413980542023778748812787445723567408964890775083675950553490716178215749860142600934378246651748251907308015314047393495352035885577696784441991158617859135477633490401931656411325617272716067762797188624155042669635029039068439179445969820646805770606827700329062226394773791338592548218752740429315280125468903299889599336058237510133634199910687875470167784635167733422679427666510387043650142629402124312775333848881549420175573552686311484025286161644112252806005841661039806674657334871176935889327638702686277610580649170690952553672429255521405977348200197449630359651214211033729887160709388410296132739099598850682230230656322935092322617204518724320482033664\n", + "41725292493888366660943758265343739840306963779699009570891980989396827961084047557497625574891447134817929781550167351901106981432356431499720285201868756493303496503814616030628094786990704071771155393568883982317235718270955266980803863312822651234545432135525594377248310085339270058078136878358891939641293611541213655400658124452789547582677185096437505480858630560250937806599779198672116475020267268399821375750940335569270335466845358855333020774087300285258804248625550667697763098840351147105372622968050572323288224505612011683322079613349314669742353871778655277405372555221161298341381905107344858511042811954696400394899260719302428422067459774321418776820592265478199197701364460461312645870184645234409037448640964067328\n", + "83450584987776733321887516530687479680613927559398019141783961978793655922168095114995251149782894269635859563100334703802213962864712862999440570403737512986606993007629232061256189573981408143542310787137767964634471436541910533961607726625645302469090864271051188754496620170678540116156273756717783879282587223082427310801316248905579095165354370192875010961717261120501875613199558397344232950040534536799642751501880671138540670933690717710666041548174600570517608497251101335395526197680702294210745245936101144646576449011224023366644159226698629339484707743557310554810745110442322596682763810214689717022085623909392800789798521438604856844134919548642837553641184530956398395402728920922625291740369290468818074897281928134656\n", + "166901169975553466643775033061374959361227855118796038283567923957587311844336190229990502299565788539271719126200669407604427925729425725998881140807475025973213986015258464122512379147962816287084621574275535929268942873083821067923215453251290604938181728542102377508993240341357080232312547513435567758565174446164854621602632497811158190330708740385750021923434522241003751226399116794688465900081069073599285503003761342277081341867381435421332083096349201141035216994502202670791052395361404588421490491872202289293152898022448046733288318453397258678969415487114621109621490220884645193365527620429379434044171247818785601579597042877209713688269839097285675107282369061912796790805457841845250583480738580937636149794563856269312\n", + "333802339951106933287550066122749918722455710237592076567135847915174623688672380459981004599131577078543438252401338815208855851458851451997762281614950051946427972030516928245024758295925632574169243148551071858537885746167642135846430906502581209876363457084204755017986480682714160464625095026871135517130348892329709243205264995622316380661417480771500043846869044482007502452798233589376931800162138147198571006007522684554162683734762870842664166192698402282070433989004405341582104790722809176842980983744404578586305796044896093466576636906794517357938830974229242219242980441769290386731055240858758868088342495637571203159194085754419427376539678194571350214564738123825593581610915683690501166961477161875272299589127712538624\n", + "667604679902213866575100132245499837444911420475184153134271695830349247377344760919962009198263154157086876504802677630417711702917702903995524563229900103892855944061033856490049516591851265148338486297102143717075771492335284271692861813005162419752726914168409510035972961365428320929250190053742271034260697784659418486410529991244632761322834961543000087693738088964015004905596467178753863600324276294397142012015045369108325367469525741685328332385396804564140867978008810683164209581445618353685961967488809157172611592089792186933153273813589034715877661948458484438485960883538580773462110481717517736176684991275142406318388171508838854753079356389142700429129476247651187163221831367381002333922954323750544599178255425077248\n", + "1335209359804427733150200264490999674889822840950368306268543391660698494754689521839924018396526308314173753009605355260835423405835405807991049126459800207785711888122067712980099033183702530296676972594204287434151542984670568543385723626010324839505453828336819020071945922730856641858500380107484542068521395569318836972821059982489265522645669923086000175387476177928030009811192934357507727200648552588794284024030090738216650734939051483370656664770793609128281735956017621366328419162891236707371923934977618314345223184179584373866306547627178069431755323896916968876971921767077161546924220963435035472353369982550284812636776343017677709506158712778285400858258952495302374326443662734762004667845908647501089198356510850154496\n", + "2670418719608855466300400528981999349779645681900736612537086783321396989509379043679848036793052616628347506019210710521670846811670811615982098252919600415571423776244135425960198066367405060593353945188408574868303085969341137086771447252020649679010907656673638040143891845461713283717000760214969084137042791138637673945642119964978531045291339846172000350774952355856060019622385868715015454401297105177588568048060181476433301469878102966741313329541587218256563471912035242732656838325782473414743847869955236628690446368359168747732613095254356138863510647793833937753943843534154323093848441926870070944706739965100569625273552686035355419012317425556570801716517904990604748652887325469524009335691817295002178396713021700308992\n", + "5340837439217710932600801057963998699559291363801473225074173566642793979018758087359696073586105233256695012038421421043341693623341623231964196505839200831142847552488270851920396132734810121186707890376817149736606171938682274173542894504041299358021815313347276080287783690923426567434001520429938168274085582277275347891284239929957062090582679692344000701549904711712120039244771737430030908802594210355177136096120362952866602939756205933482626659083174436513126943824070485465313676651564946829487695739910473257380892736718337495465226190508712277727021295587667875507887687068308646187696883853740141889413479930201139250547105372070710838024634851113141603433035809981209497305774650939048018671383634590004356793426043400617984\n", + "10681674878435421865201602115927997399118582727602946450148347133285587958037516174719392147172210466513390024076842842086683387246683246463928393011678401662285695104976541703840792265469620242373415780753634299473212343877364548347085789008082598716043630626694552160575567381846853134868003040859876336548171164554550695782568479859914124181165359384688001403099809423424240078489543474860061817605188420710354272192240725905733205879512411866965253318166348873026253887648140970930627353303129893658975391479820946514761785473436674990930452381017424555454042591175335751015775374136617292375393767707480283778826959860402278501094210744141421676049269702226283206866071619962418994611549301878096037342767269180008713586852086801235968\n", + "21363349756870843730403204231855994798237165455205892900296694266571175916075032349438784294344420933026780048153685684173366774493366492927856786023356803324571390209953083407681584530939240484746831561507268598946424687754729096694171578016165197432087261253389104321151134763693706269736006081719752673096342329109101391565136959719828248362330718769376002806199618846848480156979086949720123635210376841420708544384481451811466411759024823733930506636332697746052507775296281941861254706606259787317950782959641893029523570946873349981860904762034849110908085182350671502031550748273234584750787535414960567557653919720804557002188421488282843352098539404452566413732143239924837989223098603756192074685534538360017427173704173602471936\n", + "42726699513741687460806408463711989596474330910411785800593388533142351832150064698877568588688841866053560096307371368346733548986732985855713572046713606649142780419906166815363169061878480969493663123014537197892849375509458193388343156032330394864174522506778208642302269527387412539472012163439505346192684658218202783130273919439656496724661437538752005612399237693696960313958173899440247270420753682841417088768962903622932823518049647467861013272665395492105015550592563883722509413212519574635901565919283786059047141893746699963721809524069698221816170364701343004063101496546469169501575070829921135115307839441609114004376842976565686704197078808905132827464286479849675978446197207512384149371069076720034854347408347204943872\n", + "85453399027483374921612816927423979192948661820823571601186777066284703664300129397755137177377683732107120192614742736693467097973465971711427144093427213298285560839812333630726338123756961938987326246029074395785698751018916386776686312064660789728349045013556417284604539054774825078944024326879010692385369316436405566260547838879312993449322875077504011224798475387393920627916347798880494540841507365682834177537925807245865647036099294935722026545330790984210031101185127767445018826425039149271803131838567572118094283787493399927443619048139396443632340729402686008126202993092938339003150141659842270230615678883218228008753685953131373408394157617810265654928572959699351956892394415024768298742138153440069708694816694409887744\n", + "170906798054966749843225633854847958385897323641647143202373554132569407328600258795510274354755367464214240385229485473386934195946931943422854288186854426596571121679624667261452676247513923877974652492058148791571397502037832773553372624129321579456698090027112834569209078109549650157888048653758021384770738632872811132521095677758625986898645750155008022449596950774787841255832695597760989081683014731365668355075851614491731294072198589871444053090661581968420062202370255534890037652850078298543606263677135144236188567574986799854887238096278792887264681458805372016252405986185876678006300283319684540461231357766436456017507371906262746816788315235620531309857145919398703913784788830049536597484276306880139417389633388819775488\n", + "341813596109933499686451267709695916771794647283294286404747108265138814657200517591020548709510734928428480770458970946773868391893863886845708576373708853193142243359249334522905352495027847755949304984116297583142795004075665547106745248258643158913396180054225669138418156219099300315776097307516042769541477265745622265042191355517251973797291500310016044899193901549575682511665391195521978163366029462731336710151703228983462588144397179742888106181323163936840124404740511069780075305700156597087212527354270288472377135149973599709774476192557585774529362917610744032504811972371753356012600566639369080922462715532872912035014743812525493633576630471241062619714291838797407827569577660099073194968552613760278834779266777639550976\n", + "683627192219866999372902535419391833543589294566588572809494216530277629314401035182041097419021469856856961540917941893547736783787727773691417152747417706386284486718498669045810704990055695511898609968232595166285590008151331094213490496517286317826792360108451338276836312438198600631552194615032085539082954531491244530084382711034503947594583000620032089798387803099151365023330782391043956326732058925462673420303406457966925176288794359485776212362646327873680248809481022139560150611400313194174425054708540576944754270299947199419548952385115171549058725835221488065009623944743506712025201133278738161844925431065745824070029487625050987267153260942482125239428583677594815655139155320198146389937105227520557669558533555279101952\n", + "1367254384439733998745805070838783667087178589133177145618988433060555258628802070364082194838042939713713923081835883787095473567575455547382834305494835412772568973436997338091621409980111391023797219936465190332571180016302662188426980993034572635653584720216902676553672624876397201263104389230064171078165909062982489060168765422069007895189166001240064179596775606198302730046661564782087912653464117850925346840606812915933850352577588718971552424725292655747360497618962044279120301222800626388348850109417081153889508540599894398839097904770230343098117451670442976130019247889487013424050402266557476323689850862131491648140058975250101974534306521884964250478857167355189631310278310640396292779874210455041115339117067110558203904\n", + "2734508768879467997491610141677567334174357178266354291237976866121110517257604140728164389676085879427427846163671767574190947135150911094765668610989670825545137946873994676183242819960222782047594439872930380665142360032605324376853961986069145271307169440433805353107345249752794402526208778460128342156331818125964978120337530844138015790378332002480128359193551212396605460093323129564175825306928235701850693681213625831867700705155177437943104849450585311494720995237924088558240602445601252776697700218834162307779017081199788797678195809540460686196234903340885952260038495778974026848100804533114952647379701724262983296280117950500203949068613043769928500957714334710379262620556621280792585559748420910082230678234134221116407808\n", + "5469017537758935994983220283355134668348714356532708582475953732242221034515208281456328779352171758854855692327343535148381894270301822189531337221979341651090275893747989352366485639920445564095188879745860761330284720065210648753707923972138290542614338880867610706214690499505588805052417556920256684312663636251929956240675061688276031580756664004960256718387102424793210920186646259128351650613856471403701387362427251663735401410310354875886209698901170622989441990475848177116481204891202505553395400437668324615558034162399577595356391619080921372392469806681771904520076991557948053696201609066229905294759403448525966592560235901000407898137226087539857001915428669420758525241113242561585171119496841820164461356468268442232815616\n", + "10938035075517871989966440566710269336697428713065417164951907464484442069030416562912657558704343517709711384654687070296763788540603644379062674443958683302180551787495978704732971279840891128190377759491721522660569440130421297507415847944276581085228677761735221412429380999011177610104835113840513368625327272503859912481350123376552063161513328009920513436774204849586421840373292518256703301227712942807402774724854503327470802820620709751772419397802341245978883980951696354232962409782405011106790800875336649231116068324799155190712783238161842744784939613363543809040153983115896107392403218132459810589518806897051933185120471802000815796274452175079714003830857338841517050482226485123170342238993683640328922712936536884465631232\n", + "21876070151035743979932881133420538673394857426130834329903814928968884138060833125825315117408687035419422769309374140593527577081207288758125348887917366604361103574991957409465942559681782256380755518983443045321138880260842595014831695888553162170457355523470442824858761998022355220209670227681026737250654545007719824962700246753104126323026656019841026873548409699172843680746585036513406602455425885614805549449709006654941605641241419503544838795604682491957767961903392708465924819564810022213581601750673298462232136649598310381425566476323685489569879226727087618080307966231792214784806436264919621179037613794103866370240943604001631592548904350159428007661714677683034100964452970246340684477987367280657845425873073768931262464\n", + "43752140302071487959865762266841077346789714852261668659807629857937768276121666251650630234817374070838845538618748281187055154162414577516250697775834733208722207149983914818931885119363564512761511037966886090642277760521685190029663391777106324340914711046940885649717523996044710440419340455362053474501309090015439649925400493506208252646053312039682053747096819398345687361493170073026813204910851771229611098899418013309883211282482839007089677591209364983915535923806785416931849639129620044427163203501346596924464273299196620762851132952647370979139758453454175236160615932463584429569612872529839242358075227588207732740481887208003263185097808700318856015323429355366068201928905940492681368955974734561315690851746147537862524928\n", + "87504280604142975919731524533682154693579429704523337319615259715875536552243332503301260469634748141677691077237496562374110308324829155032501395551669466417444414299967829637863770238727129025523022075933772181284555521043370380059326783554212648681829422093881771299435047992089420880838680910724106949002618180030879299850800987012416505292106624079364107494193638796691374722986340146053626409821703542459222197798836026619766422564965678014179355182418729967831071847613570833863699278259240088854326407002693193848928546598393241525702265905294741958279516906908350472321231864927168859139225745059678484716150455176415465480963774416006526370195617400637712030646858710732136403857811880985362737911949469122631381703492295075725049856\n", + "175008561208285951839463049067364309387158859409046674639230519431751073104486665006602520939269496283355382154474993124748220616649658310065002791103338932834888828599935659275727540477454258051046044151867544362569111042086740760118653567108425297363658844187763542598870095984178841761677361821448213898005236360061758599701601974024833010584213248158728214988387277593382749445972680292107252819643407084918444395597672053239532845129931356028358710364837459935662143695227141667727398556518480177708652814005386387697857093196786483051404531810589483916559033813816700944642463729854337718278451490119356969432300910352830930961927548832013052740391234801275424061293717421464272807715623761970725475823898938245262763406984590151450099712\n", + "350017122416571903678926098134728618774317718818093349278461038863502146208973330013205041878538992566710764308949986249496441233299316620130005582206677865669777657199871318551455080954908516102092088303735088725138222084173481520237307134216850594727317688375527085197740191968357683523354723642896427796010472720123517199403203948049666021168426496317456429976774555186765498891945360584214505639286814169836888791195344106479065690259862712056717420729674919871324287390454283335454797113036960355417305628010772775395714186393572966102809063621178967833118067627633401889284927459708675436556902980238713938864601820705661861923855097664026105480782469602550848122587434842928545615431247523941450951647797876490525526813969180302900199424\n", + "700034244833143807357852196269457237548635437636186698556922077727004292417946660026410083757077985133421528617899972498992882466598633240260011164413355731339555314399742637102910161909817032204184176607470177450276444168346963040474614268433701189454635376751054170395480383936715367046709447285792855592020945440247034398806407896099332042336852992634912859953549110373530997783890721168429011278573628339673777582390688212958131380519725424113434841459349839742648574780908566670909594226073920710834611256021545550791428372787145932205618127242357935666236135255266803778569854919417350873113805960477427877729203641411323723847710195328052210961564939205101696245174869685857091230862495047882901903295595752981051053627938360605800398848\n", + "1400068489666287614715704392538914475097270875272373397113844155454008584835893320052820167514155970266843057235799944997985764933197266480520022328826711462679110628799485274205820323819634064408368353214940354900552888336693926080949228536867402378909270753502108340790960767873430734093418894571585711184041890880494068797612815792198664084673705985269825719907098220747061995567781442336858022557147256679347555164781376425916262761039450848226869682918699679485297149561817133341819188452147841421669222512043091101582856745574291864411236254484715871332472270510533607557139709838834701746227611920954855755458407282822647447695420390656104421923129878410203392490349739371714182461724990095765803806591191505962102107255876721211600797696\n", + "2800136979332575229431408785077828950194541750544746794227688310908017169671786640105640335028311940533686114471599889995971529866394532961040044657653422925358221257598970548411640647639268128816736706429880709801105776673387852161898457073734804757818541507004216681581921535746861468186837789143171422368083781760988137595225631584397328169347411970539651439814196441494123991135562884673716045114294513358695110329562752851832525522078901696453739365837399358970594299123634266683638376904295682843338445024086182203165713491148583728822472508969431742664944541021067215114279419677669403492455223841909711510916814565645294895390840781312208843846259756820406784980699478743428364923449980191531607613182383011924204214511753442423201595392\n", + "5600273958665150458862817570155657900389083501089493588455376621816034339343573280211280670056623881067372228943199779991943059732789065922080089315306845850716442515197941096823281295278536257633473412859761419602211553346775704323796914147469609515637083014008433363163843071493722936373675578286342844736167563521976275190451263168794656338694823941079302879628392882988247982271125769347432090228589026717390220659125505703665051044157803392907478731674798717941188598247268533367276753808591365686676890048172364406331426982297167457644945017938863485329889082042134430228558839355338806984910447683819423021833629131290589790781681562624417687692519513640813569961398957486856729846899960383063215226364766023848408429023506884846403190784\n", + "11200547917330300917725635140311315800778167002178987176910753243632068678687146560422561340113247762134744457886399559983886119465578131844160178630613691701432885030395882193646562590557072515266946825719522839204423106693551408647593828294939219031274166028016866726327686142987445872747351156572685689472335127043952550380902526337589312677389647882158605759256785765976495964542251538694864180457178053434780441318251011407330102088315606785814957463349597435882377196494537066734553507617182731373353780096344728812662853964594334915289890035877726970659778164084268860457117678710677613969820895367638846043667258262581179581563363125248835375385039027281627139922797914973713459693799920766126430452729532047696816858047013769692806381568\n", + "22401095834660601835451270280622631601556334004357974353821506487264137357374293120845122680226495524269488915772799119967772238931156263688320357261227383402865770060791764387293125181114145030533893651439045678408846213387102817295187656589878438062548332056033733452655372285974891745494702313145371378944670254087905100761805052675178625354779295764317211518513571531952991929084503077389728360914356106869560882636502022814660204176631213571629914926699194871764754392989074133469107015234365462746707560192689457625325707929188669830579780071755453941319556328168537720914235357421355227939641790735277692087334516525162359163126726250497670750770078054563254279845595829947426919387599841532252860905459064095393633716094027539385612763136\n", + "44802191669321203670902540561245263203112668008715948707643012974528274714748586241690245360452991048538977831545598239935544477862312527376640714522454766805731540121583528774586250362228290061067787302878091356817692426774205634590375313179756876125096664112067466905310744571949783490989404626290742757889340508175810201523610105350357250709558591528634423037027143063905983858169006154779456721828712213739121765273004045629320408353262427143259829853398389743529508785978148266938214030468730925493415120385378915250651415858377339661159560143510907882639112656337075441828470714842710455879283581470555384174669033050324718326253452500995341501540156109126508559691191659894853838775199683064505721810918128190787267432188055078771225526272\n", + "89604383338642407341805081122490526406225336017431897415286025949056549429497172483380490720905982097077955663091196479871088955724625054753281429044909533611463080243167057549172500724456580122135574605756182713635384853548411269180750626359513752250193328224134933810621489143899566981978809252581485515778681016351620403047220210700714501419117183057268846074054286127811967716338012309558913443657424427478243530546008091258640816706524854286519659706796779487059017571956296533876428060937461850986830240770757830501302831716754679322319120287021815765278225312674150883656941429685420911758567162941110768349338066100649436652506905001990683003080312218253017119382383319789707677550399366129011443621836256381574534864376110157542451052544\n", + "179208766677284814683610162244981052812450672034863794830572051898113098858994344966760981441811964194155911326182392959742177911449250109506562858089819067222926160486334115098345001448913160244271149211512365427270769707096822538361501252719027504500386656448269867621242978287799133963957618505162971031557362032703240806094440421401429002838234366114537692148108572255623935432676024619117826887314848854956487061092016182517281633413049708573039319413593558974118035143912593067752856121874923701973660481541515661002605663433509358644638240574043631530556450625348301767313882859370841823517134325882221536698676132201298873305013810003981366006160624436506034238764766639579415355100798732258022887243672512763149069728752220315084902105088\n", + "358417533354569629367220324489962105624901344069727589661144103796226197717988689933521962883623928388311822652364785919484355822898500219013125716179638134445852320972668230196690002897826320488542298423024730854541539414193645076723002505438055009000773312896539735242485956575598267927915237010325942063114724065406481612188880842802858005676468732229075384296217144511247870865352049238235653774629697709912974122184032365034563266826099417146078638827187117948236070287825186135505712243749847403947320963083031322005211326867018717289276481148087263061112901250696603534627765718741683647034268651764443073397352264402597746610027620007962732012321248873012068477529533279158830710201597464516045774487345025526298139457504440630169804210176\n", + "716835066709139258734440648979924211249802688139455179322288207592452395435977379867043925767247856776623645304729571838968711645797000438026251432359276268891704641945336460393380005795652640977084596846049461709083078828387290153446005010876110018001546625793079470484971913151196535855830474020651884126229448130812963224377761685605716011352937464458150768592434289022495741730704098476471307549259395419825948244368064730069126533652198834292157277654374235896472140575650372271011424487499694807894641926166062644010422653734037434578552962296174526122225802501393207069255531437483367294068537303528886146794704528805195493220055240015925464024642497746024136955059066558317661420403194929032091548974690051052596278915008881260339608420352\n", + "1433670133418278517468881297959848422499605376278910358644576415184904790871954759734087851534495713553247290609459143677937423291594000876052502864718552537783409283890672920786760011591305281954169193692098923418166157656774580306892010021752220036003093251586158940969943826302393071711660948041303768252458896261625926448755523371211432022705874928916301537184868578044991483461408196952942615098518790839651896488736129460138253067304397668584314555308748471792944281151300744542022848974999389615789283852332125288020845307468074869157105924592349052244451605002786414138511062874966734588137074607057772293589409057610390986440110480031850928049284995492048273910118133116635322840806389858064183097949380102105192557830017762520679216840704\n", + "2867340266836557034937762595919696844999210752557820717289152830369809581743909519468175703068991427106494581218918287355874846583188001752105005729437105075566818567781345841573520023182610563908338387384197846836332315313549160613784020043504440072006186503172317881939887652604786143423321896082607536504917792523251852897511046742422864045411749857832603074369737156089982966922816393905885230197037581679303792977472258920276506134608795337168629110617496943585888562302601489084045697949998779231578567704664250576041690614936149738314211849184698104488903210005572828277022125749933469176274149214115544587178818115220781972880220960063701856098569990984096547820236266233270645681612779716128366195898760204210385115660035525041358433681408\n", + "5734680533673114069875525191839393689998421505115641434578305660739619163487819038936351406137982854212989162437836574711749693166376003504210011458874210151133637135562691683147040046365221127816676774768395693672664630627098321227568040087008880144012373006344635763879775305209572286846643792165215073009835585046503705795022093484845728090823499715665206148739474312179965933845632787811770460394075163358607585954944517840553012269217590674337258221234993887171777124605202978168091395899997558463157135409328501152083381229872299476628423698369396208977806420011145656554044251499866938352548298428231089174357636230441563945760441920127403712197139981968193095640472532466541291363225559432256732391797520408420770231320071050082716867362816\n", + "11469361067346228139751050383678787379996843010231282869156611321479238326975638077872702812275965708425978324875673149423499386332752007008420022917748420302267274271125383366294080092730442255633353549536791387345329261254196642455136080174017760288024746012689271527759550610419144573693287584330430146019671170093007411590044186969691456181646999431330412297478948624359931867691265575623540920788150326717215171909889035681106024538435181348674516442469987774343554249210405956336182791799995116926314270818657002304166762459744598953256847396738792417955612840022291313108088502999733876705096596856462178348715272460883127891520883840254807424394279963936386191280945064933082582726451118864513464783595040816841540462640142100165433734725632\n", + "22938722134692456279502100767357574759993686020462565738313222642958476653951276155745405624551931416851956649751346298846998772665504014016840045835496840604534548542250766732588160185460884511266707099073582774690658522508393284910272160348035520576049492025378543055519101220838289147386575168660860292039342340186014823180088373939382912363293998862660824594957897248719863735382531151247081841576300653434430343819778071362212049076870362697349032884939975548687108498420811912672365583599990233852628541637314004608333524919489197906513694793477584835911225680044582626216177005999467753410193193712924356697430544921766255783041767680509614848788559927872772382561890129866165165452902237729026929567190081633683080925280284200330867469451264\n", + "45877444269384912559004201534715149519987372040925131476626445285916953307902552311490811249103862833703913299502692597693997545331008028033680091670993681209069097084501533465176320370921769022533414198147165549381317045016786569820544320696071041152098984050757086111038202441676578294773150337321720584078684680372029646360176747878765824726587997725321649189915794497439727470765062302494163683152601306868860687639556142724424098153740725394698065769879951097374216996841623825344731167199980467705257083274628009216667049838978395813027389586955169671822451360089165252432354011998935506820386387425848713394861089843532511566083535361019229697577119855745544765123780259732330330905804475458053859134380163267366161850560568400661734938902528\n", + "91754888538769825118008403069430299039974744081850262953252890571833906615805104622981622498207725667407826599005385195387995090662016056067360183341987362418138194169003066930352640741843538045066828396294331098762634090033573139641088641392142082304197968101514172222076404883353156589546300674643441168157369360744059292720353495757531649453175995450643298379831588994879454941530124604988327366305202613737721375279112285448848196307481450789396131539759902194748433993683247650689462334399960935410514166549256018433334099677956791626054779173910339343644902720178330504864708023997871013640772774851697426789722179687065023132167070722038459395154239711491089530247560519464660661811608950916107718268760326534732323701121136801323469877805056\n", + "183509777077539650236016806138860598079949488163700525906505781143667813231610209245963244996415451334815653198010770390775990181324032112134720366683974724836276388338006133860705281483687076090133656792588662197525268180067146279282177282784284164608395936203028344444152809766706313179092601349286882336314738721488118585440706991515063298906351990901286596759663177989758909883060249209976654732610405227475442750558224570897696392614962901578792263079519804389496867987366495301378924668799921870821028333098512036866668199355913583252109558347820678687289805440356661009729416047995742027281545549703394853579444359374130046264334141444076918790308479422982179060495121038929321323623217901832215436537520653069464647402242273602646939755610112\n", + "367019554155079300472033612277721196159898976327401051813011562287335626463220418491926489992830902669631306396021540781551980362648064224269440733367949449672552776676012267721410562967374152180267313585177324395050536360134292558564354565568568329216791872406056688888305619533412626358185202698573764672629477442976237170881413983030126597812703981802573193519326355979517819766120498419953309465220810454950885501116449141795392785229925803157584526159039608778993735974732990602757849337599843741642056666197024073733336398711827166504219116695641357374579610880713322019458832095991484054563091099406789707158888718748260092528668282888153837580616958845964358120990242077858642647246435803664430873075041306138929294804484547205293879511220224\n", + "734039108310158600944067224555442392319797952654802103626023124574671252926440836983852979985661805339262612792043081563103960725296128448538881466735898899345105553352024535442821125934748304360534627170354648790101072720268585117128709131137136658433583744812113377776611239066825252716370405397147529345258954885952474341762827966060253195625407963605146387038652711959035639532240996839906618930441620909901771002232898283590785570459851606315169052318079217557987471949465981205515698675199687483284113332394048147466672797423654333008438233391282714749159221761426644038917664191982968109126182198813579414317777437496520185057336565776307675161233917691928716241980484155717285294492871607328861746150082612277858589608969094410587759022440448\n", + "1468078216620317201888134449110884784639595905309604207252046249149342505852881673967705959971323610678525225584086163126207921450592256897077762933471797798690211106704049070885642251869496608721069254340709297580202145440537170234257418262274273316867167489624226755553222478133650505432740810794295058690517909771904948683525655932120506391250815927210292774077305423918071279064481993679813237860883241819803542004465796567181571140919703212630338104636158435115974943898931962411031397350399374966568226664788096294933345594847308666016876466782565429498318443522853288077835328383965936218252364397627158828635554874993040370114673131552615350322467835383857432483960968311434570588985743214657723492300165224555717179217938188821175518044880896\n", + "2936156433240634403776268898221769569279191810619208414504092498298685011705763347935411919942647221357050451168172326252415842901184513794155525866943595597380422213408098141771284503738993217442138508681418595160404290881074340468514836524548546633734334979248453511106444956267301010865481621588590117381035819543809897367051311864241012782501631854420585548154610847836142558128963987359626475721766483639607084008931593134363142281839406425260676209272316870231949887797863924822062794700798749933136453329576192589866691189694617332033752933565130858996636887045706576155670656767931872436504728795254317657271109749986080740229346263105230700644935670767714864967921936622869141177971486429315446984600330449111434358435876377642351036089761792\n", + "5872312866481268807552537796443539138558383621238416829008184996597370023411526695870823839885294442714100902336344652504831685802369027588311051733887191194760844426816196283542569007477986434884277017362837190320808581762148680937029673049097093267468669958496907022212889912534602021730963243177180234762071639087619794734102623728482025565003263708841171096309221695672285116257927974719252951443532967279214168017863186268726284563678812850521352418544633740463899775595727849644125589401597499866272906659152385179733382379389234664067505867130261717993273774091413152311341313535863744873009457590508635314542219499972161480458692526210461401289871341535429729935843873245738282355942972858630893969200660898222868716871752755284702072179523584\n", + "11744625732962537615105075592887078277116767242476833658016369993194740046823053391741647679770588885428201804672689305009663371604738055176622103467774382389521688853632392567085138014955972869768554034725674380641617163524297361874059346098194186534937339916993814044425779825069204043461926486354360469524143278175239589468205247456964051130006527417682342192618443391344570232515855949438505902887065934558428336035726372537452569127357625701042704837089267480927799551191455699288251178803194999732545813318304770359466764758778469328135011734260523435986547548182826304622682627071727489746018915181017270629084438999944322960917385052420922802579742683070859459871687746491476564711885945717261787938401321796445737433743505510569404144359047168\n", + "23489251465925075230210151185774156554233534484953667316032739986389480093646106783483295359541177770856403609345378610019326743209476110353244206935548764779043377707264785134170276029911945739537108069451348761283234327048594723748118692196388373069874679833987628088851559650138408086923852972708720939048286556350479178936410494913928102260013054835364684385236886782689140465031711898877011805774131869116856672071452745074905138254715251402085409674178534961855599102382911398576502357606389999465091626636609540718933529517556938656270023468521046871973095096365652609245365254143454979492037830362034541258168877999888645921834770104841845605159485366141718919743375492982953129423771891434523575876802643592891474867487011021138808288718094336\n", + "46978502931850150460420302371548313108467068969907334632065479972778960187292213566966590719082355541712807218690757220038653486418952220706488413871097529558086755414529570268340552059823891479074216138902697522566468654097189447496237384392776746139749359667975256177703119300276816173847705945417441878096573112700958357872820989827856204520026109670729368770473773565378280930063423797754023611548263738233713344142905490149810276509430502804170819348357069923711198204765822797153004715212779998930183253273219081437867059035113877312540046937042093743946190192731305218490730508286909958984075660724069082516337755999777291843669540209683691210318970732283437839486750985965906258847543782869047151753605287185782949734974022042277616577436188672\n", + "93957005863700300920840604743096626216934137939814669264130959945557920374584427133933181438164711083425614437381514440077306972837904441412976827742195059116173510829059140536681104119647782958148432277805395045132937308194378894992474768785553492279498719335950512355406238600553632347695411890834883756193146225401916715745641979655712409040052219341458737540947547130756561860126847595508047223096527476467426688285810980299620553018861005608341638696714139847422396409531645594306009430425559997860366506546438162875734118070227754625080093874084187487892380385462610436981461016573819917968151321448138165032675511999554583687339080419367382420637941464566875678973501971931812517695087565738094303507210574371565899469948044084555233154872377344\n", + "187914011727400601841681209486193252433868275879629338528261919891115840749168854267866362876329422166851228874763028880154613945675808882825953655484390118232347021658118281073362208239295565916296864555610790090265874616388757789984949537571106984558997438671901024710812477201107264695390823781669767512386292450803833431491283959311424818080104438682917475081895094261513123720253695191016094446193054952934853376571621960599241106037722011216683277393428279694844792819063291188612018860851119995720733013092876325751468236140455509250160187748168374975784760770925220873962922033147639835936302642896276330065351023999109167374678160838734764841275882929133751357947003943863625035390175131476188607014421148743131798939896088169110466309744754688\n", + "375828023454801203683362418972386504867736551759258677056523839782231681498337708535732725752658844333702457749526057760309227891351617765651907310968780236464694043316236562146724416478591131832593729111221580180531749232777515579969899075142213969117994877343802049421624954402214529390781647563339535024772584901607666862982567918622849636160208877365834950163790188523026247440507390382032188892386109905869706753143243921198482212075444022433366554786856559389689585638126582377224037721702239991441466026185752651502936472280911018500320375496336749951569521541850441747925844066295279671872605285792552660130702047998218334749356321677469529682551765858267502715894007887727250070780350262952377214028842297486263597879792176338220932619489509376\n", + "751656046909602407366724837944773009735473103518517354113047679564463362996675417071465451505317688667404915499052115520618455782703235531303814621937560472929388086632473124293448832957182263665187458222443160361063498465555031159939798150284427938235989754687604098843249908804429058781563295126679070049545169803215333725965135837245699272320417754731669900327580377046052494881014780764064377784772219811739413506286487842396964424150888044866733109573713118779379171276253164754448075443404479982882932052371505303005872944561822037000640750992673499903139043083700883495851688132590559343745210571585105320261404095996436669498712643354939059365103531716535005431788015775454500141560700525904754428057684594972527195759584352676441865238979018752\n", + "1503312093819204814733449675889546019470946207037034708226095359128926725993350834142930903010635377334809830998104231041236911565406471062607629243875120945858776173264946248586897665914364527330374916444886320722126996931110062319879596300568855876471979509375208197686499817608858117563126590253358140099090339606430667451930271674491398544640835509463339800655160754092104989762029561528128755569544439623478827012572975684793928848301776089733466219147426237558758342552506329508896150886808959965765864104743010606011745889123644074001281501985346999806278086167401766991703376265181118687490421143170210640522808191992873338997425286709878118730207063433070010863576031550909000283121401051809508856115369189945054391519168705352883730477958037504\n", + "3006624187638409629466899351779092038941892414074069416452190718257853451986701668285861806021270754669619661996208462082473823130812942125215258487750241891717552346529892497173795331828729054660749832889772641444253993862220124639759192601137711752943959018750416395372999635217716235126253180506716280198180679212861334903860543348982797089281671018926679601310321508184209979524059123056257511139088879246957654025145951369587857696603552179466932438294852475117516685105012659017792301773617919931531728209486021212023491778247288148002563003970693999612556172334803533983406752530362237374980842286340421281045616383985746677994850573419756237460414126866140021727152063101818000566242802103619017712230738379890108783038337410705767460955916075008\n", + "6013248375276819258933798703558184077883784828148138832904381436515706903973403336571723612042541509339239323992416924164947646261625884250430516975500483783435104693059784994347590663657458109321499665779545282888507987724440249279518385202275423505887918037500832790745999270435432470252506361013432560396361358425722669807721086697965594178563342037853359202620643016368419959048118246112515022278177758493915308050291902739175715393207104358933864876589704950235033370210025318035584603547235839863063456418972042424046983556494576296005126007941387999225112344669607067966813505060724474749961684572680842562091232767971493355989701146839512474920828253732280043454304126203636001132485604207238035424461476759780217566076674821411534921911832150016\n", + "12026496750553638517867597407116368155767569656296277665808762873031413807946806673143447224085083018678478647984833848329895292523251768500861033951000967566870209386119569988695181327314916218642999331559090565777015975448880498559036770404550847011775836075001665581491998540870864940505012722026865120792722716851445339615442173395931188357126684075706718405241286032736839918096236492225030044556355516987830616100583805478351430786414208717867729753179409900470066740420050636071169207094471679726126912837944084848093967112989152592010252015882775998450224689339214135933627010121448949499923369145361685124182465535942986711979402293679024949841656507464560086908608252407272002264971208414476070848922953519560435132153349642823069843823664300032\n", + "24052993501107277035735194814232736311535139312592555331617525746062827615893613346286894448170166037356957295969667696659790585046503537001722067902001935133740418772239139977390362654629832437285998663118181131554031950897760997118073540809101694023551672150003331162983997081741729881010025444053730241585445433702890679230884346791862376714253368151413436810482572065473679836192472984450060089112711033975661232201167610956702861572828417435735459506358819800940133480840101272142338414188943359452253825675888169696187934225978305184020504031765551996900449378678428271867254020242897898999846738290723370248364931071885973423958804587358049899683313014929120173817216504814544004529942416828952141697845907039120870264306699285646139687647328600064\n", + "48105987002214554071470389628465472623070278625185110663235051492125655231787226692573788896340332074713914591939335393319581170093007074003444135804003870267480837544478279954780725309259664874571997326236362263108063901795521994236147081618203388047103344300006662325967994163483459762020050888107460483170890867405781358461768693583724753428506736302826873620965144130947359672384945968900120178225422067951322464402335221913405723145656834871470919012717639601880266961680202544284676828377886718904507651351776339392375868451956610368041008063531103993800898757356856543734508040485795797999693476581446740496729862143771946847917609174716099799366626029858240347634433009629088009059884833657904283395691814078241740528613398571292279375294657200128\n", + "96211974004429108142940779256930945246140557250370221326470102984251310463574453385147577792680664149427829183878670786639162340186014148006888271608007740534961675088956559909561450618519329749143994652472724526216127803591043988472294163236406776094206688600013324651935988326966919524040101776214920966341781734811562716923537387167449506857013472605653747241930288261894719344769891937800240356450844135902644928804670443826811446291313669742941838025435279203760533923360405088569353656755773437809015302703552678784751736903913220736082016127062207987601797514713713087469016080971591595999386953162893480993459724287543893695835218349432199598733252059716480695268866019258176018119769667315808566791383628156483481057226797142584558750589314400256\n", + "192423948008858216285881558513861890492281114500740442652940205968502620927148906770295155585361328298855658367757341573278324680372028296013776543216015481069923350177913119819122901237038659498287989304945449052432255607182087976944588326472813552188413377200026649303871976653933839048080203552429841932683563469623125433847074774334899013714026945211307494483860576523789438689539783875600480712901688271805289857609340887653622892582627339485883676050870558407521067846720810177138707313511546875618030605407105357569503473807826441472164032254124415975203595029427426174938032161943183191998773906325786961986919448575087787391670436698864399197466504119432961390537732038516352036239539334631617133582767256312966962114453594285169117501178628800512\n", + "384847896017716432571763117027723780984562229001480885305880411937005241854297813540590311170722656597711316735514683146556649360744056592027553086432030962139846700355826239638245802474077318996575978609890898104864511214364175953889176652945627104376826754400053298607743953307867678096160407104859683865367126939246250867694149548669798027428053890422614988967721153047578877379079567751200961425803376543610579715218681775307245785165254678971767352101741116815042135693441620354277414627023093751236061210814210715139006947615652882944328064508248831950407190058854852349876064323886366383997547812651573923973838897150175574783340873397728798394933008238865922781075464077032704072479078669263234267165534512625933924228907188570338235002357257601024\n", + "769695792035432865143526234055447561969124458002961770611760823874010483708595627081180622341445313195422633471029366293113298721488113184055106172864061924279693400711652479276491604948154637993151957219781796209729022428728351907778353305891254208753653508800106597215487906615735356192320814209719367730734253878492501735388299097339596054856107780845229977935442306095157754758159135502401922851606753087221159430437363550614491570330509357943534704203482233630084271386883240708554829254046187502472122421628421430278013895231305765888656129016497663900814380117709704699752128647772732767995095625303147847947677794300351149566681746795457596789866016477731845562150928154065408144958157338526468534331069025251867848457814377140676470004714515202048\n", + "1539391584070865730287052468110895123938248916005923541223521647748020967417191254162361244682890626390845266942058732586226597442976226368110212345728123848559386801423304958552983209896309275986303914439563592419458044857456703815556706611782508417507307017600213194430975813231470712384641628419438735461468507756985003470776598194679192109712215561690459955870884612190315509516318271004803845703213506174442318860874727101228983140661018715887069408406964467260168542773766481417109658508092375004944244843256842860556027790462611531777312258032995327801628760235419409399504257295545465535990191250606295695895355588600702299133363493590915193579732032955463691124301856308130816289916314677052937068662138050503735696915628754281352940009429030404096\n", + "3078783168141731460574104936221790247876497832011847082447043295496041934834382508324722489365781252781690533884117465172453194885952452736220424691456247697118773602846609917105966419792618551972607828879127184838916089714913407631113413223565016835014614035200426388861951626462941424769283256838877470922937015513970006941553196389358384219424431123380919911741769224380631019032636542009607691406427012348884637721749454202457966281322037431774138816813928934520337085547532962834219317016184750009888489686513685721112055580925223063554624516065990655603257520470838818799008514591090931071980382501212591391790711177201404598266726987181830387159464065910927382248603712616261632579832629354105874137324276101007471393831257508562705880018858060808192\n", + "6157566336283462921148209872443580495752995664023694164894086590992083869668765016649444978731562505563381067768234930344906389771904905472440849382912495394237547205693219834211932839585237103945215657758254369677832179429826815262226826447130033670029228070400852777723903252925882849538566513677754941845874031027940013883106392778716768438848862246761839823483538448761262038065273084019215382812854024697769275443498908404915932562644074863548277633627857869040674171095065925668438634032369500019776979373027371442224111161850446127109249032131981311206515040941677637598017029182181862143960765002425182783581422354402809196533453974363660774318928131821854764497207425232523265159665258708211748274648552202014942787662515017125411760037716121616384\n", + "12315132672566925842296419744887160991505991328047388329788173181984167739337530033298889957463125011126762135536469860689812779543809810944881698765824990788475094411386439668423865679170474207890431315516508739355664358859653630524453652894260067340058456140801705555447806505851765699077133027355509883691748062055880027766212785557433536877697724493523679646967076897522524076130546168038430765625708049395538550886997816809831865125288149727096555267255715738081348342190131851336877268064739000039553958746054742884448222323700892254218498064263962622413030081883355275196034058364363724287921530004850365567162844708805618393066907948727321548637856263643709528994414850465046530319330517416423496549297104404029885575325030034250823520075432243232768\n", + "24630265345133851684592839489774321983011982656094776659576346363968335478675060066597779914926250022253524271072939721379625559087619621889763397531649981576950188822772879336847731358340948415780862631033017478711328717719307261048907305788520134680116912281603411110895613011703531398154266054711019767383496124111760055532425571114867073755395448987047359293934153795045048152261092336076861531251416098791077101773995633619663730250576299454193110534511431476162696684380263702673754536129478000079107917492109485768896444647401784508436996128527925244826060163766710550392068116728727448575843060009700731134325689417611236786133815897454643097275712527287419057988829700930093060638661034832846993098594208808059771150650060068501647040150864486465536\n", + "49260530690267703369185678979548643966023965312189553319152692727936670957350120133195559829852500044507048542145879442759251118175239243779526795063299963153900377645545758673695462716681896831561725262066034957422657435438614522097814611577040269360233824563206822221791226023407062796308532109422039534766992248223520111064851142229734147510790897974094718587868307590090096304522184672153723062502832197582154203547991267239327460501152598908386221069022862952325393368760527405347509072258956000158215834984218971537792889294803569016873992257055850489652120327533421100784136233457454897151686120019401462268651378835222473572267631794909286194551425054574838115977659401860186121277322069665693986197188417616119542301300120137003294080301728972931072\n", + "98521061380535406738371357959097287932047930624379106638305385455873341914700240266391119659705000089014097084291758885518502236350478487559053590126599926307800755291091517347390925433363793663123450524132069914845314870877229044195629223154080538720467649126413644443582452046814125592617064218844079069533984496447040222129702284459468295021581795948189437175736615180180192609044369344307446125005664395164308407095982534478654921002305197816772442138045725904650786737521054810695018144517912000316431669968437943075585778589607138033747984514111700979304240655066842201568272466914909794303372240038802924537302757670444947144535263589818572389102850109149676231955318803720372242554644139331387972394376835232239084602600240274006588160603457945862144\n", + "197042122761070813476742715918194575864095861248758213276610770911746683829400480532782239319410000178028194168583517771037004472700956975118107180253199852615601510582183034694781850866727587326246901048264139829690629741754458088391258446308161077440935298252827288887164904093628251185234128437688158139067968992894080444259404568918936590043163591896378874351473230360360385218088738688614892250011328790328616814191965068957309842004610395633544884276091451809301573475042109621390036289035824000632863339936875886151171557179214276067495969028223401958608481310133684403136544933829819588606744480077605849074605515340889894289070527179637144778205700218299352463910637607440744485109288278662775944788753670464478169205200480548013176321206915891724288\n", + "394084245522141626953485431836389151728191722497516426553221541823493367658800961065564478638820000356056388337167035542074008945401913950236214360506399705231203021164366069389563701733455174652493802096528279659381259483508916176782516892616322154881870596505654577774329808187256502370468256875376316278135937985788160888518809137837873180086327183792757748702946460720720770436177477377229784500022657580657233628383930137914619684009220791267089768552182903618603146950084219242780072578071648001265726679873751772302343114358428552134991938056446803917216962620267368806273089867659639177213488960155211698149211030681779788578141054359274289556411400436598704927821275214881488970218576557325551889577507340928956338410400961096026352642413831783448576\n", + "788168491044283253906970863672778303456383444995032853106443083646986735317601922131128957277640000712112776674334071084148017890803827900472428721012799410462406042328732138779127403466910349304987604193056559318762518967017832353565033785232644309763741193011309155548659616374513004740936513750752632556271875971576321777037618275675746360172654367585515497405892921441441540872354954754459569000045315161314467256767860275829239368018441582534179537104365807237206293900168438485560145156143296002531453359747503544604686228716857104269983876112893607834433925240534737612546179735319278354426977920310423396298422061363559577156282108718548579112822800873197409855642550429762977940437153114651103779155014681857912676820801922192052705284827663566897152\n", + "1576336982088566507813941727345556606912766889990065706212886167293973470635203844262257914555280001424225553348668142168296035781607655800944857442025598820924812084657464277558254806933820698609975208386113118637525037934035664707130067570465288619527482386022618311097319232749026009481873027501505265112543751943152643554075236551351492720345308735171030994811785842882883081744709909508919138000090630322628934513535720551658478736036883165068359074208731614474412587800336876971120290312286592005062906719495007089209372457433714208539967752225787215668867850481069475225092359470638556708853955840620846792596844122727119154312564217437097158225645601746394819711285100859525955880874306229302207558310029363715825353641603844384105410569655327133794304\n", + "3152673964177133015627883454691113213825533779980131412425772334587946941270407688524515829110560002848451106697336284336592071563215311601889714884051197641849624169314928555116509613867641397219950416772226237275050075868071329414260135140930577239054964772045236622194638465498052018963746055003010530225087503886305287108150473102702985440690617470342061989623571685765766163489419819017838276000181260645257869027071441103316957472073766330136718148417463228948825175600673753942240580624573184010125813438990014178418744914867428417079935504451574431337735700962138950450184718941277113417707911681241693585193688245454238308625128434874194316451291203492789639422570201719051911761748612458604415116620058727431650707283207688768210821139310654267588608\n", + "6305347928354266031255766909382226427651067559960262824851544669175893882540815377049031658221120005696902213394672568673184143126430623203779429768102395283699248338629857110233019227735282794439900833544452474550100151736142658828520270281861154478109929544090473244389276930996104037927492110006021060450175007772610574216300946205405970881381234940684123979247143371531532326978839638035676552000362521290515738054142882206633914944147532660273436296834926457897650351201347507884481161249146368020251626877980028356837489829734856834159871008903148862675471401924277900900369437882554226835415823362483387170387376490908476617250256869748388632902582406985579278845140403438103823523497224917208830233240117454863301414566415377536421642278621308535177216\n", + "12610695856708532062511533818764452855302135119920525649703089338351787765081630754098063316442240011393804426789345137346368286252861246407558859536204790567398496677259714220466038455470565588879801667088904949100200303472285317657040540563722308956219859088180946488778553861992208075854984220012042120900350015545221148432601892410811941762762469881368247958494286743063064653957679276071353104000725042581031476108285764413267829888295065320546872593669852915795300702402695015768962322498292736040503253755960056713674979659469713668319742017806297725350942803848555801800738875765108453670831646724966774340774752981816953234500513739496777265805164813971158557690280806876207647046994449834417660466480234909726602829132830755072843284557242617070354432\n", + "25221391713417064125023067637528905710604270239841051299406178676703575530163261508196126632884480022787608853578690274692736572505722492815117719072409581134796993354519428440932076910941131177759603334177809898200400606944570635314081081127444617912439718176361892977557107723984416151709968440024084241800700031090442296865203784821623883525524939762736495916988573486126129307915358552142706208001450085162062952216571528826535659776590130641093745187339705831590601404805390031537924644996585472081006507511920113427349959318939427336639484035612595450701885607697111603601477751530216907341663293449933548681549505963633906469001027478993554531610329627942317115380561613752415294093988899668835320932960469819453205658265661510145686569114485234140708864\n", + "50442783426834128250046135275057811421208540479682102598812357353407151060326523016392253265768960045575217707157380549385473145011444985630235438144819162269593986709038856881864153821882262355519206668355619796400801213889141270628162162254889235824879436352723785955114215447968832303419936880048168483601400062180884593730407569643247767051049879525472991833977146972252258615830717104285412416002900170324125904433143057653071319553180261282187490374679411663181202809610780063075849289993170944162013015023840226854699918637878854673278968071225190901403771215394223207202955503060433814683326586899867097363099011927267812938002054957987109063220659255884634230761123227504830588187977799337670641865920939638906411316531323020291373138228970468281417728\n", + "100885566853668256500092270550115622842417080959364205197624714706814302120653046032784506531537920091150435414314761098770946290022889971260470876289638324539187973418077713763728307643764524711038413336711239592801602427778282541256324324509778471649758872705447571910228430895937664606839873760096336967202800124361769187460815139286495534102099759050945983667954293944504517231661434208570824832005800340648251808866286115306142639106360522564374980749358823326362405619221560126151698579986341888324026030047680453709399837275757709346557936142450381802807542430788446414405911006120867629366653173799734194726198023854535625876004109915974218126441318511769268461522246455009661176375955598675341283731841879277812822633062646040582746276457940936562835456\n", + "201771133707336513000184541100231245684834161918728410395249429413628604241306092065569013063075840182300870828629522197541892580045779942520941752579276649078375946836155427527456615287529049422076826673422479185603204855556565082512648649019556943299517745410895143820456861791875329213679747520192673934405600248723538374921630278572991068204199518101891967335908587889009034463322868417141649664011600681296503617732572230612285278212721045128749961498717646652724811238443120252303397159972683776648052060095360907418799674551515418693115872284900763605615084861576892828811822012241735258733306347599468389452396047709071251752008219831948436252882637023538536923044492910019322352751911197350682567463683758555625645266125292081165492552915881873125670912\n", + "403542267414673026000369082200462491369668323837456820790498858827257208482612184131138026126151680364601741657259044395083785160091559885041883505158553298156751893672310855054913230575058098844153653346844958371206409711113130165025297298039113886599035490821790287640913723583750658427359495040385347868811200497447076749843260557145982136408399036203783934671817175778018068926645736834283299328023201362593007235465144461224570556425442090257499922997435293305449622476886240504606794319945367553296104120190721814837599349103030837386231744569801527211230169723153785657623644024483470517466612695198936778904792095418142503504016439663896872505765274047077073846088985820038644705503822394701365134927367517111251290532250584162330985105831763746251341824\n", + "807084534829346052000738164400924982739336647674913641580997717654514416965224368262276052252303360729203483314518088790167570320183119770083767010317106596313503787344621710109826461150116197688307306693689916742412819422226260330050594596078227773198070981643580575281827447167501316854718990080770695737622400994894153499686521114291964272816798072407567869343634351556036137853291473668566598656046402725186014470930288922449141112850884180514999845994870586610899244953772481009213588639890735106592208240381443629675198698206061674772463489139603054422460339446307571315247288048966941034933225390397873557809584190836285007008032879327793745011530548094154147692177971640077289411007644789402730269854735034222502581064501168324661970211663527492502683648\n", + "1614169069658692104001476328801849965478673295349827283161995435309028833930448736524552104504606721458406966629036177580335140640366239540167534020634213192627007574689243420219652922300232395376614613387379833484825638844452520660101189192156455546396141963287161150563654894335002633709437980161541391475244801989788306999373042228583928545633596144815135738687268703112072275706582947337133197312092805450372028941860577844898282225701768361029999691989741173221798489907544962018427177279781470213184416480762887259350397396412123349544926978279206108844920678892615142630494576097933882069866450780795747115619168381672570014016065758655587490023061096188308295384355943280154578822015289578805460539709470068445005162129002336649323940423327054985005367296\n", + "3228338139317384208002952657603699930957346590699654566323990870618057667860897473049104209009213442916813933258072355160670281280732479080335068041268426385254015149378486840439305844600464790753229226774759666969651277688905041320202378384312911092792283926574322301127309788670005267418875960323082782950489603979576613998746084457167857091267192289630271477374537406224144551413165894674266394624185610900744057883721155689796564451403536722059999383979482346443596979815089924036854354559562940426368832961525774518700794792824246699089853956558412217689841357785230285260989152195867764139732901561591494231238336763345140028032131517311174980046122192376616590768711886560309157644030579157610921079418940136890010324258004673298647880846654109970010734592\n", + "6456676278634768416005905315207399861914693181399309132647981741236115335721794946098208418018426885833627866516144710321340562561464958160670136082536852770508030298756973680878611689200929581506458453549519333939302555377810082640404756768625822185584567853148644602254619577340010534837751920646165565900979207959153227997492168914335714182534384579260542954749074812448289102826331789348532789248371221801488115767442311379593128902807073444119998767958964692887193959630179848073708709119125880852737665923051549037401589585648493398179707913116824435379682715570460570521978304391735528279465803123182988462476673526690280056064263034622349960092244384753233181537423773120618315288061158315221842158837880273780020648516009346597295761693308219940021469184\n", + "12913352557269536832011810630414799723829386362798618265295963482472230671443589892196416836036853771667255733032289420642681125122929916321340272165073705541016060597513947361757223378401859163012916907099038667878605110755620165280809513537251644371169135706297289204509239154680021069675503841292331131801958415918306455994984337828671428365068769158521085909498149624896578205652663578697065578496742443602976231534884622759186257805614146888239997535917929385774387919260359696147417418238251761705475331846103098074803179171296986796359415826233648870759365431140921141043956608783471056558931606246365976924953347053380560112128526069244699920184488769506466363074847546241236630576122316630443684317675760547560041297032018693194591523386616439880042938368\n", + "25826705114539073664023621260829599447658772725597236530591926964944461342887179784392833672073707543334511466064578841285362250245859832642680544330147411082032121195027894723514446756803718326025833814198077335757210221511240330561619027074503288742338271412594578409018478309360042139351007682584662263603916831836612911989968675657342856730137538317042171818996299249793156411305327157394131156993484887205952463069769245518372515611228293776479995071835858771548775838520719392294834836476503523410950663692206196149606358342593973592718831652467297741518730862281842282087913217566942113117863212492731953849906694106761120224257052138489399840368977539012932726149695092482473261152244633260887368635351521095120082594064037386389183046773232879760085876736\n", + "51653410229078147328047242521659198895317545451194473061183853929888922685774359568785667344147415086669022932129157682570724500491719665285361088660294822164064242390055789447028893513607436652051667628396154671514420443022480661123238054149006577484676542825189156818036956618720084278702015365169324527207833663673225823979937351314685713460275076634084343637992598499586312822610654314788262313986969774411904926139538491036745031222456587552959990143671717543097551677041438784589669672953007046821901327384412392299212716685187947185437663304934595483037461724563684564175826435133884226235726424985463907699813388213522240448514104276978799680737955078025865452299390184964946522304489266521774737270703042190240165188128074772778366093546465759520171753472\n", + "103306820458156294656094485043318397790635090902388946122367707859777845371548719137571334688294830173338045864258315365141449000983439330570722177320589644328128484780111578894057787027214873304103335256792309343028840886044961322246476108298013154969353085650378313636073913237440168557404030730338649054415667327346451647959874702629371426920550153268168687275985196999172625645221308629576524627973939548823809852279076982073490062444913175105919980287343435086195103354082877569179339345906014093643802654768824784598425433370375894370875326609869190966074923449127369128351652870267768452471452849970927815399626776427044480897028208553957599361475910156051730904598780369929893044608978533043549474541406084380480330376256149545556732187092931519040343506944\n", + "206613640916312589312188970086636795581270181804777892244735415719555690743097438275142669376589660346676091728516630730282898001966878661141444354641179288656256969560223157788115574054429746608206670513584618686057681772089922644492952216596026309938706171300756627272147826474880337114808061460677298108831334654692903295919749405258742853841100306536337374551970393998345251290442617259153049255947879097647619704558153964146980124889826350211839960574686870172390206708165755138358678691812028187287605309537649569196850866740751788741750653219738381932149846898254738256703305740535536904942905699941855630799253552854088961794056417107915198722951820312103461809197560739859786089217957066087098949082812168760960660752512299091113464374185863038080687013888\n", + "413227281832625178624377940173273591162540363609555784489470831439111381486194876550285338753179320693352183457033261460565796003933757322282888709282358577312513939120446315576231148108859493216413341027169237372115363544179845288985904433192052619877412342601513254544295652949760674229616122921354596217662669309385806591839498810517485707682200613072674749103940787996690502580885234518306098511895758195295239409116307928293960249779652700423679921149373740344780413416331510276717357383624056374575210619075299138393701733481503577483501306439476763864299693796509476513406611481071073809885811399883711261598507105708177923588112834215830397445903640624206923618395121479719572178435914132174197898165624337521921321505024598182226928748371726076161374027776\n", + "826454563665250357248755880346547182325080727219111568978941662878222762972389753100570677506358641386704366914066522921131592007867514644565777418564717154625027878240892631152462296217718986432826682054338474744230727088359690577971808866384105239754824685203026509088591305899521348459232245842709192435325338618771613183678997621034971415364401226145349498207881575993381005161770469036612197023791516390590478818232615856587920499559305400847359842298747480689560826832663020553434714767248112749150421238150598276787403466963007154967002612878953527728599387593018953026813222962142147619771622799767422523197014211416355847176225668431660794891807281248413847236790242959439144356871828264348395796331248675043842643010049196364453857496743452152322748055552\n", + "1652909127330500714497511760693094364650161454438223137957883325756445525944779506201141355012717282773408733828133045842263184015735029289131554837129434309250055756481785262304924592435437972865653364108676949488461454176719381155943617732768210479509649370406053018177182611799042696918464491685418384870650677237543226367357995242069942830728802452290698996415763151986762010323540938073224394047583032781180957636465231713175840999118610801694719684597494961379121653665326041106869429534496225498300842476301196553574806933926014309934005225757907055457198775186037906053626445924284295239543245599534845046394028422832711694352451336863321589783614562496827694473580485918878288713743656528696791592662497350087685286020098392728907714993486904304645496111104\n", + "3305818254661001428995023521386188729300322908876446275915766651512891051889559012402282710025434565546817467656266091684526368031470058578263109674258868618500111512963570524609849184870875945731306728217353898976922908353438762311887235465536420959019298740812106036354365223598085393836928983370836769741301354475086452734715990484139885661457604904581397992831526303973524020647081876146448788095166065562361915272930463426351681998237221603389439369194989922758243307330652082213738859068992450996601684952602393107149613867852028619868010451515814110914397550372075812107252891848568590479086491199069690092788056845665423388704902673726643179567229124993655388947160971837756577427487313057393583185324994700175370572040196785457815429986973808609290992222208\n", + "6611636509322002857990047042772377458600645817752892551831533303025782103779118024804565420050869131093634935312532183369052736062940117156526219348517737237000223025927141049219698369741751891462613456434707797953845816706877524623774470931072841918038597481624212072708730447196170787673857966741673539482602708950172905469431980968279771322915209809162795985663052607947048041294163752292897576190332131124723830545860926852703363996474443206778878738389979845516486614661304164427477718137984901993203369905204786214299227735704057239736020903031628221828795100744151624214505783697137180958172982398139380185576113691330846777409805347453286359134458249987310777894321943675513154854974626114787166370649989400350741144080393570915630859973947617218581984444416\n", + "13223273018644005715980094085544754917201291635505785103663066606051564207558236049609130840101738262187269870625064366738105472125880234313052438697035474474000446051854282098439396739483503782925226912869415595907691633413755049247548941862145683836077194963248424145417460894392341575347715933483347078965205417900345810938863961936559542645830419618325591971326105215894096082588327504585795152380664262249447661091721853705406727992948886413557757476779959691032973229322608328854955436275969803986406739810409572428598455471408114479472041806063256443657590201488303248429011567394274361916345964796278760371152227382661693554819610694906572718268916499974621555788643887351026309709949252229574332741299978800701482288160787141831261719947895234437163968888832\n", + "26446546037288011431960188171089509834402583271011570207326133212103128415116472099218261680203476524374539741250128733476210944251760468626104877394070948948000892103708564196878793478967007565850453825738831191815383266827510098495097883724291367672154389926496848290834921788784683150695431866966694157930410835800691621877727923873119085291660839236651183942652210431788192165176655009171590304761328524498895322183443707410813455985897772827115514953559919382065946458645216657709910872551939607972813479620819144857196910942816228958944083612126512887315180402976606496858023134788548723832691929592557520742304454765323387109639221389813145436537832999949243111577287774702052619419898504459148665482599957601402964576321574283662523439895790468874327937777664\n", + "52893092074576022863920376342179019668805166542023140414652266424206256830232944198436523360406953048749079482500257466952421888503520937252209754788141897896001784207417128393757586957934015131700907651477662383630766533655020196990195767448582735344308779852993696581669843577569366301390863733933388315860821671601383243755455847746238170583321678473302367885304420863576384330353310018343180609522657048997790644366887414821626911971795545654231029907119838764131892917290433315419821745103879215945626959241638289714393821885632457917888167224253025774630360805953212993716046269577097447665383859185115041484608909530646774219278442779626290873075665999898486223154575549404105238839797008918297330965199915202805929152643148567325046879791580937748655875555328\n", + "105786184149152045727840752684358039337610333084046280829304532848412513660465888396873046720813906097498158965000514933904843777007041874504419509576283795792003568414834256787515173915868030263401815302955324767261533067310040393980391534897165470688617559705987393163339687155138732602781727467866776631721643343202766487510911695492476341166643356946604735770608841727152768660706620036686361219045314097995581288733774829643253823943591091308462059814239677528263785834580866630839643490207758431891253918483276579428787643771264915835776334448506051549260721611906425987432092539154194895330767718370230082969217819061293548438556885559252581746151331999796972446309151098808210477679594017836594661930399830405611858305286297134650093759583161875497311751110656\n", + "211572368298304091455681505368716078675220666168092561658609065696825027320931776793746093441627812194996317930001029867809687554014083749008839019152567591584007136829668513575030347831736060526803630605910649534523066134620080787960783069794330941377235119411974786326679374310277465205563454935733553263443286686405532975021823390984952682333286713893209471541217683454305537321413240073372722438090628195991162577467549659286507647887182182616924119628479355056527571669161733261679286980415516863782507836966553158857575287542529831671552668897012103098521443223812851974864185078308389790661535436740460165938435638122587096877113771118505163492302663999593944892618302197616420955359188035673189323860799660811223716610572594269300187519166323750994623502221312\n", + "423144736596608182911363010737432157350441332336185123317218131393650054641863553587492186883255624389992635860002059735619375108028167498017678038305135183168014273659337027150060695663472121053607261211821299069046132269240161575921566139588661882754470238823949572653358748620554930411126909871467106526886573372811065950043646781969905364666573427786418943082435366908611074642826480146745444876181256391982325154935099318573015295774364365233848239256958710113055143338323466523358573960831033727565015673933106317715150575085059663343105337794024206197042886447625703949728370156616779581323070873480920331876871276245174193754227542237010326984605327999187889785236604395232841910718376071346378647721599321622447433221145188538600375038332647501989247004442624\n", + "846289473193216365822726021474864314700882664672370246634436262787300109283727107174984373766511248779985271720004119471238750216056334996035356076610270366336028547318674054300121391326944242107214522423642598138092264538480323151843132279177323765508940477647899145306717497241109860822253819742934213053773146745622131900087293563939810729333146855572837886164870733817222149285652960293490889752362512783964650309870198637146030591548728730467696478513917420226110286676646933046717147921662067455130031347866212635430301150170119326686210675588048412394085772895251407899456740313233559162646141746961840663753742552490348387508455084474020653969210655998375779570473208790465683821436752142692757295443198643244894866442290377077200750076665295003978494008885248\n", + "1692578946386432731645452042949728629401765329344740493268872525574600218567454214349968747533022497559970543440008238942477500432112669992070712153220540732672057094637348108600242782653888484214429044847285196276184529076960646303686264558354647531017880955295798290613434994482219721644507639485868426107546293491244263800174587127879621458666293711145675772329741467634444298571305920586981779504725025567929300619740397274292061183097457460935392957027834840452220573353293866093434295843324134910260062695732425270860602300340238653372421351176096824788171545790502815798913480626467118325292283493923681327507485104980696775016910168948041307938421311996751559140946417580931367642873504285385514590886397286489789732884580754154401500153330590007956988017770496\n", + "3385157892772865463290904085899457258803530658689480986537745051149200437134908428699937495066044995119941086880016477884955000864225339984141424306441081465344114189274696217200485565307776968428858089694570392552369058153921292607372529116709295062035761910591596581226869988964439443289015278971736852215092586982488527600349174255759242917332587422291351544659482935268888597142611841173963559009450051135858601239480794548584122366194914921870785914055669680904441146706587732186868591686648269820520125391464850541721204600680477306744842702352193649576343091581005631597826961252934236650584566987847362655014970209961393550033820337896082615876842623993503118281892835161862735285747008570771029181772794572979579465769161508308803000306661180015913976035540992\n", + "6770315785545730926581808171798914517607061317378961973075490102298400874269816857399874990132089990239882173760032955769910001728450679968282848612882162930688228378549392434400971130615553936857716179389140785104738116307842585214745058233418590124071523821183193162453739977928878886578030557943473704430185173964977055200698348511518485834665174844582703089318965870537777194285223682347927118018900102271717202478961589097168244732389829843741571828111339361808882293413175464373737183373296539641040250782929701083442409201360954613489685404704387299152686183162011263195653922505868473301169133975694725310029940419922787100067640675792165231753685247987006236563785670323725470571494017141542058363545589145959158931538323016617606000613322360031827952071081984\n", + "13540631571091461853163616343597829035214122634757923946150980204596801748539633714799749980264179980479764347520065911539820003456901359936565697225764325861376456757098784868801942261231107873715432358778281570209476232615685170429490116466837180248143047642366386324907479955857757773156061115886947408860370347929954110401396697023036971669330349689165406178637931741075554388570447364695854236037800204543434404957923178194336489464779659687483143656222678723617764586826350928747474366746593079282080501565859402166884818402721909226979370809408774598305372366324022526391307845011736946602338267951389450620059880839845574200135281351584330463507370495974012473127571340647450941142988034283084116727091178291918317863076646033235212001226644720063655904142163968\n", + "27081263142182923706327232687195658070428245269515847892301960409193603497079267429599499960528359960959528695040131823079640006913802719873131394451528651722752913514197569737603884522462215747430864717556563140418952465231370340858980232933674360496286095284732772649814959911715515546312122231773894817720740695859908220802793394046073943338660699378330812357275863482151108777140894729391708472075600409086868809915846356388672978929559319374966287312445357447235529173652701857494948733493186158564161003131718804333769636805443818453958741618817549196610744732648045052782615690023473893204676535902778901240119761679691148400270562703168660927014740991948024946255142681294901882285976068566168233454182356583836635726153292066470424002453289440127311808284327936\n", + "54162526284365847412654465374391316140856490539031695784603920818387206994158534859198999921056719921919057390080263646159280013827605439746262788903057303445505827028395139475207769044924431494861729435113126280837904930462740681717960465867348720992572190569465545299629919823431031092624244463547789635441481391719816441605586788092147886677321398756661624714551726964302217554281789458783416944151200818173737619831692712777345957859118638749932574624890714894471058347305403714989897466986372317128322006263437608667539273610887636907917483237635098393221489465296090105565231380046947786409353071805557802480239523359382296800541125406337321854029481983896049892510285362589803764571952137132336466908364713167673271452306584132940848004906578880254623616568655872\n", + "108325052568731694825308930748782632281712981078063391569207841636774413988317069718397999842113439843838114780160527292318560027655210879492525577806114606891011654056790278950415538089848862989723458870226252561675809860925481363435920931734697441985144381138931090599259839646862062185248488927095579270882962783439632883211173576184295773354642797513323249429103453928604435108563578917566833888302401636347475239663385425554691915718237277499865149249781429788942116694610807429979794933972744634256644012526875217335078547221775273815834966475270196786442978930592180211130462760093895572818706143611115604960479046718764593601082250812674643708058963967792099785020570725179607529143904274264672933816729426335346542904613168265881696009813157760509247233137311744\n", + "216650105137463389650617861497565264563425962156126783138415683273548827976634139436795999684226879687676229560321054584637120055310421758985051155612229213782023308113580557900831076179697725979446917740452505123351619721850962726871841863469394883970288762277862181198519679293724124370496977854191158541765925566879265766422347152368591546709285595026646498858206907857208870217127157835133667776604803272694950479326770851109383831436474554999730298499562859577884233389221614859959589867945489268513288025053750434670157094443550547631669932950540393572885957861184360422260925520187791145637412287222231209920958093437529187202164501625349287416117927935584199570041141450359215058287808548529345867633458852670693085809226336531763392019626315521018494466274623488\n", + "433300210274926779301235722995130529126851924312253566276831366547097655953268278873591999368453759375352459120642109169274240110620843517970102311224458427564046616227161115801662152359395451958893835480905010246703239443701925453743683726938789767940577524555724362397039358587448248740993955708382317083531851133758531532844694304737183093418571190053292997716413815714417740434254315670267335553209606545389900958653541702218767662872949109999460596999125719155768466778443229719919179735890978537026576050107500869340314188887101095263339865901080787145771915722368720844521851040375582291274824574444462419841916186875058374404329003250698574832235855871168399140082282900718430116575617097058691735266917705341386171618452673063526784039252631042036988932549246976\n", + "866600420549853558602471445990261058253703848624507132553662733094195311906536557747183998736907518750704918241284218338548480221241687035940204622448916855128093232454322231603324304718790903917787670961810020493406478887403850907487367453877579535881155049111448724794078717174896497481987911416764634167063702267517063065689388609474366186837142380106585995432827631428835480868508631340534671106419213090779801917307083404437535325745898219998921193998251438311536933556886459439838359471781957074053152100215001738680628377774202190526679731802161574291543831444737441689043702080751164582549649148888924839683832373750116748808658006501397149664471711742336798280164565801436860233151234194117383470533835410682772343236905346127053568078505262084073977865098493952\n", + "1733200841099707117204942891980522116507407697249014265107325466188390623813073115494367997473815037501409836482568436677096960442483374071880409244897833710256186464908644463206648609437581807835575341923620040986812957774807701814974734907755159071762310098222897449588157434349792994963975822833529268334127404535034126131378777218948732373674284760213171990865655262857670961737017262681069342212838426181559603834614166808875070651491796439997842387996502876623073867113772918879676718943563914148106304200430003477361256755548404381053359463604323148583087662889474883378087404161502329165099298297777849679367664747500233497617316013002794299328943423484673596560329131602873720466302468388234766941067670821365544686473810692254107136157010524168147955730196987904\n", + "3466401682199414234409885783961044233014815394498028530214650932376781247626146230988735994947630075002819672965136873354193920884966748143760818489795667420512372929817288926413297218875163615671150683847240081973625915549615403629949469815510318143524620196445794899176314868699585989927951645667058536668254809070068252262757554437897464747348569520426343981731310525715341923474034525362138684425676852363119207669228333617750141302983592879995684775993005753246147734227545837759353437887127828296212608400860006954722513511096808762106718927208646297166175325778949766756174808323004658330198596595555699358735329495000466995234632026005588598657886846969347193120658263205747440932604936776469533882135341642731089372947621384508214272314021048336295911460393975808\n", + "6932803364398828468819771567922088466029630788996057060429301864753562495252292461977471989895260150005639345930273746708387841769933496287521636979591334841024745859634577852826594437750327231342301367694480163947251831099230807259898939631020636287049240392891589798352629737399171979855903291334117073336509618140136504525515108875794929494697139040852687963462621051430683846948069050724277368851353704726238415338456667235500282605967185759991369551986011506492295468455091675518706875774255656592425216801720013909445027022193617524213437854417292594332350651557899533512349616646009316660397193191111398717470658990000933990469264052011177197315773693938694386241316526411494881865209873552939067764270683285462178745895242769016428544628042096672591822920787951616\n", + "13865606728797656937639543135844176932059261577992114120858603729507124990504584923954943979790520300011278691860547493416775683539866992575043273959182669682049491719269155705653188875500654462684602735388960327894503662198461614519797879262041272574098480785783179596705259474798343959711806582668234146673019236280273009051030217751589858989394278081705375926925242102861367693896138101448554737702707409452476830676913334471000565211934371519982739103972023012984590936910183351037413751548511313184850433603440027818890054044387235048426875708834585188664701303115799067024699233292018633320794386382222797434941317980001867980938528104022354394631547387877388772482633052822989763730419747105878135528541366570924357491790485538032857089256084193345183645841575903232\n", + "27731213457595313875279086271688353864118523155984228241717207459014249981009169847909887959581040600022557383721094986833551367079733985150086547918365339364098983438538311411306377751001308925369205470777920655789007324396923229039595758524082545148196961571566359193410518949596687919423613165336468293346038472560546018102060435503179717978788556163410751853850484205722735387792276202897109475405414818904953661353826668942001130423868743039965478207944046025969181873820366702074827503097022626369700867206880055637780108088774470096853751417669170377329402606231598134049398466584037266641588772764445594869882635960003735961877056208044708789263094775754777544965266105645979527460839494211756271057082733141848714983580971076065714178512168386690367291683151806464\n", + "55462426915190627750558172543376707728237046311968456483434414918028499962018339695819775919162081200045114767442189973667102734159467970300173095836730678728197966877076622822612755502002617850738410941555841311578014648793846458079191517048165090296393923143132718386821037899193375838847226330672936586692076945121092036204120871006359435957577112326821503707700968411445470775584552405794218950810829637809907322707653337884002260847737486079930956415888092051938363747640733404149655006194045252739401734413760111275560216177548940193707502835338340754658805212463196268098796933168074533283177545528891189739765271920007471923754112416089417578526189551509555089930532211291959054921678988423512542114165466283697429967161942152131428357024336773380734583366303612928\n", + "110924853830381255501116345086753415456474092623936912966868829836056999924036679391639551838324162400090229534884379947334205468318935940600346191673461357456395933754153245645225511004005235701476821883111682623156029297587692916158383034096330180592787846286265436773642075798386751677694452661345873173384153890242184072408241742012718871915154224653643007415401936822890941551169104811588437901621659275619814645415306675768004521695474972159861912831776184103876727495281466808299310012388090505478803468827520222551120432355097880387415005670676681509317610424926392536197593866336149066566355091057782379479530543840014943847508224832178835157052379103019110179861064422583918109843357976847025084228330932567394859934323884304262856714048673546761469166732607225856\n", + "221849707660762511002232690173506830912948185247873825933737659672113999848073358783279103676648324800180459069768759894668410936637871881200692383346922714912791867508306491290451022008010471402953643766223365246312058595175385832316766068192660361185575692572530873547284151596773503355388905322691746346768307780484368144816483484025437743830308449307286014830803873645781883102338209623176875803243318551239629290830613351536009043390949944319723825663552368207753454990562933616598620024776181010957606937655040445102240864710195760774830011341353363018635220849852785072395187732672298133132710182115564758959061087680029887695016449664357670314104758206038220359722128845167836219686715953694050168456661865134789719868647768608525713428097347093522938333465214451712\n", + "443699415321525022004465380347013661825896370495747651867475319344227999696146717566558207353296649600360918139537519789336821873275743762401384766693845429825583735016612982580902044016020942805907287532446730492624117190350771664633532136385320722371151385145061747094568303193547006710777810645383492693536615560968736289632966968050875487660616898614572029661607747291563766204676419246353751606486637102479258581661226703072018086781899888639447651327104736415506909981125867233197240049552362021915213875310080890204481729420391521549660022682706726037270441699705570144790375465344596266265420364231129517918122175360059775390032899328715340628209516412076440719444257690335672439373431907388100336913323730269579439737295537217051426856194694187045876666930428903424\n", + "887398830643050044008930760694027323651792740991495303734950638688455999392293435133116414706593299200721836279075039578673643746551487524802769533387690859651167470033225965161804088032041885611814575064893460985248234380701543329267064272770641444742302770290123494189136606387094013421555621290766985387073231121937472579265933936101750975321233797229144059323215494583127532409352838492707503212973274204958517163322453406144036173563799777278895302654209472831013819962251734466394480099104724043830427750620161780408963458840783043099320045365413452074540883399411140289580750930689192532530840728462259035836244350720119550780065798657430681256419032824152881438888515380671344878746863814776200673826647460539158879474591074434102853712389388374091753333860857806848\n", + "1774797661286100088017861521388054647303585481982990607469901277376911998784586870266232829413186598401443672558150079157347287493102975049605539066775381719302334940066451930323608176064083771223629150129786921970496468761403086658534128545541282889484605540580246988378273212774188026843111242581533970774146462243874945158531867872203501950642467594458288118646430989166255064818705676985415006425946548409917034326644906812288072347127599554557790605308418945662027639924503468932788960198209448087660855501240323560817926917681566086198640090730826904149081766798822280579161501861378385065061681456924518071672488701440239101560131597314861362512838065648305762877777030761342689757493727629552401347653294921078317758949182148868205707424778776748183506667721715613696\n", + "3549595322572200176035723042776109294607170963965981214939802554753823997569173740532465658826373196802887345116300158314694574986205950099211078133550763438604669880132903860647216352128167542447258300259573843940992937522806173317068257091082565778969211081160493976756546425548376053686222485163067941548292924487749890317063735744407003901284935188916576237292861978332510129637411353970830012851893096819834068653289813624576144694255199109115581210616837891324055279849006937865577920396418896175321711002480647121635853835363132172397280181461653808298163533597644561158323003722756770130123362913849036143344977402880478203120263194629722725025676131296611525755554061522685379514987455259104802695306589842156635517898364297736411414849557553496367013335443431227392\n", + "7099190645144400352071446085552218589214341927931962429879605109507647995138347481064931317652746393605774690232600316629389149972411900198422156267101526877209339760265807721294432704256335084894516600519147687881985875045612346634136514182165131557938422162320987953513092851096752107372444970326135883096585848975499780634127471488814007802569870377833152474585723956665020259274822707941660025703786193639668137306579627249152289388510398218231162421233675782648110559698013875731155840792837792350643422004961294243271707670726264344794560362923307616596327067195289122316646007445513540260246725827698072286689954805760956406240526389259445450051352262593223051511108123045370759029974910518209605390613179684313271035796728595472822829699115106992734026670886862454784\n", + "14198381290288800704142892171104437178428683855863924859759210219015295990276694962129862635305492787211549380465200633258778299944823800396844312534203053754418679520531615442588865408512670169789033201038295375763971750091224693268273028364330263115876844324641975907026185702193504214744889940652271766193171697950999561268254942977628015605139740755666304949171447913330040518549645415883320051407572387279336274613159254498304578777020796436462324842467351565296221119396027751462311681585675584701286844009922588486543415341452528689589120725846615233192654134390578244633292014891027080520493451655396144573379909611521912812481052778518890900102704525186446103022216246090741518059949821036419210781226359368626542071593457190945645659398230213985468053341773724909568\n", + "28396762580577601408285784342208874356857367711727849719518420438030591980553389924259725270610985574423098760930401266517556599889647600793688625068406107508837359041063230885177730817025340339578066402076590751527943500182449386536546056728660526231753688649283951814052371404387008429489779881304543532386343395901999122536509885955256031210279481511332609898342895826660081037099290831766640102815144774558672549226318508996609157554041592872924649684934703130592442238792055502924623363171351169402573688019845176973086830682905057379178241451693230466385308268781156489266584029782054161040986903310792289146759819223043825624962105557037781800205409050372892206044432492181483036119899642072838421562452718737253084143186914381891291318796460427970936106683547449819136\n", + "56793525161155202816571568684417748713714735423455699439036840876061183961106779848519450541221971148846197521860802533035113199779295201587377250136812215017674718082126461770355461634050680679156132804153181503055887000364898773073092113457321052463507377298567903628104742808774016858979559762609087064772686791803998245073019771910512062420558963022665219796685791653320162074198581663533280205630289549117345098452637017993218315108083185745849299369869406261184884477584111005849246726342702338805147376039690353946173661365810114758356482903386460932770616537562312978533168059564108322081973806621584578293519638446087651249924211114075563600410818100745784412088864984362966072239799284145676843124905437474506168286373828763782582637592920855941872213367094899638272\n", + "113587050322310405633143137368835497427429470846911398878073681752122367922213559697038901082443942297692395043721605066070226399558590403174754500273624430035349436164252923540710923268101361358312265608306363006111774000729797546146184226914642104927014754597135807256209485617548033717959119525218174129545373583607996490146039543821024124841117926045330439593371583306640324148397163327066560411260579098234690196905274035986436630216166371491698598739738812522369768955168222011698493452685404677610294752079380707892347322731620229516712965806772921865541233075124625957066336119128216644163947613243169156587039276892175302499848422228151127200821636201491568824177729968725932144479598568291353686249810874949012336572747657527565165275185841711883744426734189799276544\n", + "227174100644620811266286274737670994854858941693822797756147363504244735844427119394077802164887884595384790087443210132140452799117180806349509000547248860070698872328505847081421846536202722716624531216612726012223548001459595092292368453829284209854029509194271614512418971235096067435918239050436348259090747167215992980292079087642048249682235852090660879186743166613280648296794326654133120822521158196469380393810548071972873260432332742983397197479477625044739537910336444023396986905370809355220589504158761415784694645463240459033425931613545843731082466150249251914132672238256433288327895226486338313174078553784350604999696844456302254401643272402983137648355459937451864288959197136582707372499621749898024673145495315055130330550371683423767488853468379598553088\n", + "454348201289241622532572549475341989709717883387645595512294727008489471688854238788155604329775769190769580174886420264280905598234361612699018001094497720141397744657011694162843693072405445433249062433225452024447096002919190184584736907658568419708059018388543229024837942470192134871836478100872696518181494334431985960584158175284096499364471704181321758373486333226561296593588653308266241645042316392938760787621096143945746520864665485966794394958955250089479075820672888046793973810741618710441179008317522831569389290926480918066851863227091687462164932300498503828265344476512866576655790452972676626348157107568701209999393688912604508803286544805966275296710919874903728577918394273165414744999243499796049346290990630110260661100743366847534977706936759197106176\n", + "908696402578483245065145098950683979419435766775291191024589454016978943377708477576311208659551538381539160349772840528561811196468723225398036002188995440282795489314023388325687386144810890866498124866450904048894192005838380369169473815317136839416118036777086458049675884940384269743672956201745393036362988668863971921168316350568192998728943408362643516746972666453122593187177306616532483290084632785877521575242192287891493041729330971933588789917910500178958151641345776093587947621483237420882358016635045663138778581852961836133703726454183374924329864600997007656530688953025733153311580905945353252696314215137402419998787377825209017606573089611932550593421839749807457155836788546330829489998486999592098692581981260220521322201486733695069955413873518394212352\n", + "1817392805156966490130290197901367958838871533550582382049178908033957886755416955152622417319103076763078320699545681057123622392937446450796072004377990880565590978628046776651374772289621781732996249732901808097788384011676760738338947630634273678832236073554172916099351769880768539487345912403490786072725977337727943842336632701136385997457886816725287033493945332906245186374354613233064966580169265571755043150484384575782986083458661943867177579835821000357916303282691552187175895242966474841764716033270091326277557163705923672267407452908366749848659729201994015313061377906051466306623161811890706505392628430274804839997574755650418035213146179223865101186843679499614914311673577092661658979996973999184197385163962520441042644402973467390139910827747036788424704\n", + "3634785610313932980260580395802735917677743067101164764098357816067915773510833910305244834638206153526156641399091362114247244785874892901592144008755981761131181957256093553302749544579243563465992499465803616195576768023353521476677895261268547357664472147108345832198703539761537078974691824806981572145451954675455887684673265402272771994915773633450574066987890665812490372748709226466129933160338531143510086300968769151565972166917323887734355159671642000715832606565383104374351790485932949683529432066540182652555114327411847344534814905816733499697319458403988030626122755812102932613246323623781413010785256860549609679995149511300836070426292358447730202373687358999229828623347154185323317959993947998368394770327925040882085288805946934780279821655494073576849408\n", + "7269571220627865960521160791605471835355486134202329528196715632135831547021667820610489669276412307052313282798182724228494489571749785803184288017511963522262363914512187106605499089158487126931984998931607232391153536046707042953355790522537094715328944294216691664397407079523074157949383649613963144290903909350911775369346530804545543989831547266901148133975781331624980745497418452932259866320677062287020172601937538303131944333834647775468710319343284001431665213130766208748703580971865899367058864133080365305110228654823694689069629811633466999394638916807976061252245511624205865226492647247562826021570513721099219359990299022601672140852584716895460404747374717998459657246694308370646635919987895996736789540655850081764170577611893869560559643310988147153698816\n", + "14539142441255731921042321583210943670710972268404659056393431264271663094043335641220979338552824614104626565596365448456988979143499571606368576035023927044524727829024374213210998178316974253863969997863214464782307072093414085906711581045074189430657888588433383328794814159046148315898767299227926288581807818701823550738693061609091087979663094533802296267951562663249961490994836905864519732641354124574040345203875076606263888667669295550937420638686568002863330426261532417497407161943731798734117728266160730610220457309647389378139259623266933998789277833615952122504491023248411730452985294495125652043141027442198438719980598045203344281705169433790920809494749435996919314493388616741293271839975791993473579081311700163528341155223787739121119286621976294307397632\n", + "29078284882511463842084643166421887341421944536809318112786862528543326188086671282441958677105649228209253131192730896913977958286999143212737152070047854089049455658048748426421996356633948507727939995726428929564614144186828171813423162090148378861315777176866766657589628318092296631797534598455852577163615637403647101477386123218182175959326189067604592535903125326499922981989673811729039465282708249148080690407750153212527777335338591101874841277373136005726660852523064834994814323887463597468235456532321461220440914619294778756278519246533867997578555667231904245008982046496823460905970588990251304086282054884396877439961196090406688563410338867581841618989498871993838628986777233482586543679951583986947158162623400327056682310447575478242238573243952588614795264\n", + "58156569765022927684169286332843774682843889073618636225573725057086652376173342564883917354211298456418506262385461793827955916573998286425474304140095708178098911316097496852843992713267897015455879991452857859129228288373656343626846324180296757722631554353733533315179256636184593263595069196911705154327231274807294202954772246436364351918652378135209185071806250652999845963979347623458078930565416498296161380815500306425055554670677182203749682554746272011453321705046129669989628647774927194936470913064642922440881829238589557512557038493067735995157111334463808490017964092993646921811941177980502608172564109768793754879922392180813377126820677735163683237978997743987677257973554466965173087359903167973894316325246800654113364620895150956484477146487905177229590528\n", + "116313139530045855368338572665687549365687778147237272451147450114173304752346685129767834708422596912837012524770923587655911833147996572850948608280191416356197822632194993705687985426535794030911759982905715718258456576747312687253692648360593515445263108707467066630358513272369186527190138393823410308654462549614588405909544492872728703837304756270418370143612501305999691927958695246916157861130832996592322761631000612850111109341354364407499365109492544022906643410092259339979257295549854389872941826129285844881763658477179115025114076986135471990314222668927616980035928185987293843623882355961005216345128219537587509759844784361626754253641355470327366475957995487975354515947108933930346174719806335947788632650493601308226729241790301912968954292975810354459181056\n", + "232626279060091710736677145331375098731375556294474544902294900228346609504693370259535669416845193825674025049541847175311823666295993145701897216560382832712395645264389987411375970853071588061823519965811431436516913153494625374507385296721187030890526217414934133260717026544738373054380276787646820617308925099229176811819088985745457407674609512540836740287225002611999383855917390493832315722261665993184645523262001225700222218682708728814998730218985088045813286820184518679958514591099708779745883652258571689763527316954358230050228153972270943980628445337855233960071856371974587687247764711922010432690256439075175019519689568723253508507282710940654732951915990975950709031894217867860692349439612671895577265300987202616453458483580603825937908585951620708918362112\n", + "465252558120183421473354290662750197462751112588949089804589800456693219009386740519071338833690387651348050099083694350623647332591986291403794433120765665424791290528779974822751941706143176123647039931622862873033826306989250749014770593442374061781052434829868266521434053089476746108760553575293641234617850198458353623638177971490914815349219025081673480574450005223998767711834780987664631444523331986369291046524002451400444437365417457629997460437970176091626573640369037359917029182199417559491767304517143379527054633908716460100456307944541887961256890675710467920143712743949175374495529423844020865380512878150350039039379137446507017014565421881309465903831981951901418063788435735721384698879225343791154530601974405232906916967161207651875817171903241417836724224\n", + "930505116240366842946708581325500394925502225177898179609179600913386438018773481038142677667380775302696100198167388701247294665183972582807588866241531330849582581057559949645503883412286352247294079863245725746067652613978501498029541186884748123562104869659736533042868106178953492217521107150587282469235700396916707247276355942981829630698438050163346961148900010447997535423669561975329262889046663972738582093048004902800888874730834915259994920875940352183253147280738074719834058364398835118983534609034286759054109267817432920200912615889083775922513781351420935840287425487898350748991058847688041730761025756300700078078758274893014034029130843762618931807663963903802836127576871471442769397758450687582309061203948810465813833934322415303751634343806482835673448448\n", + "1861010232480733685893417162651000789851004450355796359218359201826772876037546962076285355334761550605392200396334777402494589330367945165615177732483062661699165162115119899291007766824572704494588159726491451492135305227957002996059082373769496247124209739319473066085736212357906984435042214301174564938471400793833414494552711885963659261396876100326693922297800020895995070847339123950658525778093327945477164186096009805601777749461669830519989841751880704366506294561476149439668116728797670237967069218068573518108218535634865840401825231778167551845027562702841871680574850975796701497982117695376083461522051512601400156157516549786028068058261687525237863615327927807605672255153742942885538795516901375164618122407897620931627667868644830607503268687612965671346896896\n", + "3722020464961467371786834325302001579702008900711592718436718403653545752075093924152570710669523101210784400792669554804989178660735890331230355464966125323398330324230239798582015533649145408989176319452982902984270610455914005992118164747538992494248419478638946132171472424715813968870084428602349129876942801587666828989105423771927318522793752200653387844595600041791990141694678247901317051556186655890954328372192019611203555498923339661039979683503761408733012589122952298879336233457595340475934138436137147036216437071269731680803650463556335103690055125405683743361149701951593402995964235390752166923044103025202800312315033099572056136116523375050475727230655855615211344510307485885771077591033802750329236244815795241863255335737289661215006537375225931342693793792\n", + "7444040929922934743573668650604003159404017801423185436873436807307091504150187848305141421339046202421568801585339109609978357321471780662460710929932250646796660648460479597164031067298290817978352638905965805968541220911828011984236329495077984988496838957277892264342944849431627937740168857204698259753885603175333657978210847543854637045587504401306775689191200083583980283389356495802634103112373311781908656744384039222407110997846679322079959367007522817466025178245904597758672466915190680951868276872274294072432874142539463361607300927112670207380110250811367486722299403903186805991928470781504333846088206050405600624630066199144112272233046750100951454461311711230422689020614971771542155182067605500658472489631590483726510671474579322430013074750451862685387587584\n", + "14888081859845869487147337301208006318808035602846370873746873614614183008300375696610282842678092404843137603170678219219956714642943561324921421859864501293593321296920959194328062134596581635956705277811931611937082441823656023968472658990155969976993677914555784528685889698863255875480337714409396519507771206350667315956421695087709274091175008802613551378382400167167960566778712991605268206224746623563817313488768078444814221995693358644159918734015045634932050356491809195517344933830381361903736553744548588144865748285078926723214601854225340414760220501622734973444598807806373611983856941563008667692176412100811201249260132398288224544466093500201902908922623422460845378041229943543084310364135211001316944979263180967453021342949158644860026149500903725370775175168\n", + "29776163719691738974294674602416012637616071205692741747493747229228366016600751393220565685356184809686275206341356438439913429285887122649842843719729002587186642593841918388656124269193163271913410555623863223874164883647312047936945317980311939953987355829111569057371779397726511750960675428818793039015542412701334631912843390175418548182350017605227102756764800334335921133557425983210536412449493247127634626977536156889628443991386717288319837468030091269864100712983618391034689867660762723807473107489097176289731496570157853446429203708450680829520441003245469946889197615612747223967713883126017335384352824201622402498520264796576449088932187000403805817845246844921690756082459887086168620728270422002633889958526361934906042685898317289720052299001807450741550350336\n", + "59552327439383477948589349204832025275232142411385483494987494458456732033201502786441131370712369619372550412682712876879826858571774245299685687439458005174373285187683836777312248538386326543826821111247726447748329767294624095873890635960623879907974711658223138114743558795453023501921350857637586078031084825402669263825686780350837096364700035210454205513529600668671842267114851966421072824898986494255269253955072313779256887982773434576639674936060182539728201425967236782069379735321525447614946214978194352579462993140315706892858407416901361659040882006490939893778395231225494447935427766252034670768705648403244804997040529593152898177864374000807611635690493689843381512164919774172337241456540844005267779917052723869812085371796634579440104598003614901483100700672\n", + "119104654878766955897178698409664050550464284822770966989974988916913464066403005572882262741424739238745100825365425753759653717143548490599371374878916010348746570375367673554624497076772653087653642222495452895496659534589248191747781271921247759815949423316446276229487117590906047003842701715275172156062169650805338527651373560701674192729400070420908411027059201337343684534229703932842145649797972988510538507910144627558513775965546869153279349872120365079456402851934473564138759470643050895229892429956388705158925986280631413785716814833802723318081764012981879787556790462450988895870855532504069341537411296806489609994081059186305796355728748001615223271380987379686763024329839548344674482913081688010535559834105447739624170743593269158880209196007229802966201401344\n", + "238209309757533911794357396819328101100928569645541933979949977833826928132806011145764525482849478477490201650730851507519307434287096981198742749757832020697493140750735347109248994153545306175307284444990905790993319069178496383495562543842495519631898846632892552458974235181812094007685403430550344312124339301610677055302747121403348385458800140841816822054118402674687369068459407865684291299595945977021077015820289255117027551931093738306558699744240730158912805703868947128277518941286101790459784859912777410317851972561262827571433629667605446636163528025963759575113580924901977791741711065008138683074822593612979219988162118372611592711457496003230446542761974759373526048659679096689348965826163376021071119668210895479248341487186538317760418392014459605932402802688\n", + "476418619515067823588714793638656202201857139291083867959899955667653856265612022291529050965698956954980403301461703015038614868574193962397485499515664041394986281501470694218497988307090612350614568889981811581986638138356992766991125087684991039263797693265785104917948470363624188015370806861100688624248678603221354110605494242806696770917600281683633644108236805349374738136918815731368582599191891954042154031640578510234055103862187476613117399488481460317825611407737894256555037882572203580919569719825554820635703945122525655142867259335210893272327056051927519150227161849803955583483422130016277366149645187225958439976324236745223185422914992006460893085523949518747052097319358193378697931652326752042142239336421790958496682974373076635520836784028919211864805605376\n", + "952837239030135647177429587277312404403714278582167735919799911335307712531224044583058101931397913909960806602923406030077229737148387924794970999031328082789972563002941388436995976614181224701229137779963623163973276276713985533982250175369982078527595386531570209835896940727248376030741613722201377248497357206442708221210988485613393541835200563367267288216473610698749476273837631462737165198383783908084308063281157020468110207724374953226234798976962920635651222815475788513110075765144407161839139439651109641271407890245051310285734518670421786544654112103855038300454323699607911166966844260032554732299290374451916879952648473490446370845829984012921786171047899037494104194638716386757395863304653504084284478672843581916993365948746153271041673568057838423729611210752\n", + "1905674478060271294354859174554624808807428557164335471839599822670615425062448089166116203862795827819921613205846812060154459474296775849589941998062656165579945126005882776873991953228362449402458275559927246327946552553427971067964500350739964157055190773063140419671793881454496752061483227444402754496994714412885416442421976971226787083670401126734534576432947221397498952547675262925474330396767567816168616126562314040936220415448749906452469597953925841271302445630951577026220151530288814323678278879302219282542815780490102620571469037340843573089308224207710076600908647399215822333933688520065109464598580748903833759905296946980892741691659968025843572342095798074988208389277432773514791726609307008168568957345687163833986731897492306542083347136115676847459222421504\n", + "3811348956120542588709718349109249617614857114328670943679199645341230850124896178332232407725591655639843226411693624120308918948593551699179883996125312331159890252011765553747983906456724898804916551119854492655893105106855942135929000701479928314110381546126280839343587762908993504122966454888805508993989428825770832884843953942453574167340802253469069152865894442794997905095350525850948660793535135632337232253124628081872440830897499812904939195907851682542604891261903154052440303060577628647356557758604438565085631560980205241142938074681687146178616448415420153201817294798431644667867377040130218929197161497807667519810593893961785483383319936051687144684191596149976416778554865547029583453218614016337137914691374327667973463794984613084166694272231353694918444843008\n", + "7622697912241085177419436698218499235229714228657341887358399290682461700249792356664464815451183311279686452823387248240617837897187103398359767992250624662319780504023531107495967812913449797609833102239708985311786210213711884271858001402959856628220763092252561678687175525817987008245932909777611017987978857651541665769687907884907148334681604506938138305731788885589995810190701051701897321587070271264674464506249256163744881661794999625809878391815703365085209782523806308104880606121155257294713115517208877130171263121960410482285876149363374292357232896830840306403634589596863289335734754080260437858394322995615335039621187787923570966766639872103374289368383192299952833557109731094059166906437228032674275829382748655335946927589969226168333388544462707389836889686016\n", + "15245395824482170354838873396436998470459428457314683774716798581364923400499584713328929630902366622559372905646774496481235675794374206796719535984501249324639561008047062214991935625826899595219666204479417970623572420427423768543716002805919713256441526184505123357374351051635974016491865819555222035975957715303083331539375815769814296669363209013876276611463577771179991620381402103403794643174140542529348929012498512327489763323589999251619756783631406730170419565047612616209761212242310514589426231034417754260342526243920820964571752298726748584714465793661680612807269179193726578671469508160520875716788645991230670079242375575847141933533279744206748578736766384599905667114219462188118333812874456065348551658765497310671893855179938452336666777088925414779673779372032\n", + "30490791648964340709677746792873996940918856914629367549433597162729846800999169426657859261804733245118745811293548992962471351588748413593439071969002498649279122016094124429983871251653799190439332408958835941247144840854847537087432005611839426512883052369010246714748702103271948032983731639110444071951915430606166663078751631539628593338726418027752553222927155542359983240762804206807589286348281085058697858024997024654979526647179998503239513567262813460340839130095225232419522424484621029178852462068835508520685052487841641929143504597453497169428931587323361225614538358387453157342939016321041751433577291982461340158484751151694283867066559488413497157473532769199811334228438924376236667625748912130697103317530994621343787710359876904673333554177850829559347558744064\n", + "60981583297928681419355493585747993881837713829258735098867194325459693601998338853315718523609466490237491622587097985924942703177496827186878143938004997298558244032188248859967742503307598380878664817917671882494289681709695074174864011223678853025766104738020493429497404206543896065967463278220888143903830861212333326157503263079257186677452836055505106445854311084719966481525608413615178572696562170117395716049994049309959053294359997006479027134525626920681678260190450464839044848969242058357704924137671017041370104975683283858287009194906994338857863174646722451229076716774906314685878032642083502867154583964922680316969502303388567734133118976826994314947065538399622668456877848752473335251497824261394206635061989242687575420719753809346667108355701659118695117488128\n", + "121963166595857362838710987171495987763675427658517470197734388650919387203996677706631437047218932980474983245174195971849885406354993654373756287876009994597116488064376497719935485006615196761757329635835343764988579363419390148349728022447357706051532209476040986858994808413087792131934926556441776287807661722424666652315006526158514373354905672111010212891708622169439932963051216827230357145393124340234791432099988098619918106588719994012958054269051253841363356520380900929678089697938484116715409848275342034082740209951366567716574018389813988677715726349293444902458153433549812629371756065284167005734309167929845360633939004606777135468266237953653988629894131076799245336913755697504946670502995648522788413270123978485375150841439507618693334216711403318237390234976256\n", + "243926333191714725677421974342991975527350855317034940395468777301838774407993355413262874094437865960949966490348391943699770812709987308747512575752019989194232976128752995439870970013230393523514659271670687529977158726838780296699456044894715412103064418952081973717989616826175584263869853112883552575615323444849333304630013052317028746709811344222020425783417244338879865926102433654460714290786248680469582864199976197239836213177439988025916108538102507682726713040761801859356179395876968233430819696550684068165480419902733135433148036779627977355431452698586889804916306867099625258743512130568334011468618335859690721267878009213554270936532475907307977259788262153598490673827511395009893341005991297045576826540247956970750301682879015237386668433422806636474780469952512\n", + "487852666383429451354843948685983951054701710634069880790937554603677548815986710826525748188875731921899932980696783887399541625419974617495025151504039978388465952257505990879741940026460787047029318543341375059954317453677560593398912089789430824206128837904163947435979233652351168527739706225767105151230646889698666609260026104634057493419622688444040851566834488677759731852204867308921428581572497360939165728399952394479672426354879976051832217076205015365453426081523603718712358791753936466861639393101368136330960839805466270866296073559255954710862905397173779609832613734199250517487024261136668022937236671719381442535756018427108541873064951814615954519576524307196981347655022790019786682011982594091153653080495913941500603365758030474773336866845613272949560939905024\n", + "975705332766858902709687897371967902109403421268139761581875109207355097631973421653051496377751463843799865961393567774799083250839949234990050303008079956776931904515011981759483880052921574094058637086682750119908634907355121186797824179578861648412257675808327894871958467304702337055479412451534210302461293779397333218520052209268114986839245376888081703133668977355519463704409734617842857163144994721878331456799904788959344852709759952103664434152410030730906852163047207437424717583507872933723278786202736272661921679610932541732592147118511909421725810794347559219665227468398501034974048522273336045874473343438762885071512036854217083746129903629231909039153048614393962695310045580039573364023965188182307306160991827883001206731516060949546673733691226545899121879810048\n", + "1951410665533717805419375794743935804218806842536279523163750218414710195263946843306102992755502927687599731922787135549598166501679898469980100606016159913553863809030023963518967760105843148188117274173365500239817269814710242373595648359157723296824515351616655789743916934609404674110958824903068420604922587558794666437040104418536229973678490753776163406267337954711038927408819469235685714326289989443756662913599809577918689705419519904207328868304820061461813704326094414874849435167015745867446557572405472545323843359221865083465184294237023818843451621588695118439330454936797002069948097044546672091748946686877525770143024073708434167492259807258463818078306097228787925390620091160079146728047930376364614612321983655766002413463032121899093347467382453091798243759620096\n", + "3902821331067435610838751589487871608437613685072559046327500436829420390527893686612205985511005855375199463845574271099196333003359796939960201212032319827107727618060047927037935520211686296376234548346731000479634539629420484747191296718315446593649030703233311579487833869218809348221917649806136841209845175117589332874080208837072459947356981507552326812534675909422077854817638938471371428652579978887513325827199619155837379410839039808414657736609640122923627408652188829749698870334031491734893115144810945090647686718443730166930368588474047637686903243177390236878660909873594004139896194089093344183497893373755051540286048147416868334984519614516927636156612194457575850781240182320158293456095860752729229224643967311532004826926064243798186694934764906183596487519240192\n", + "7805642662134871221677503178975743216875227370145118092655000873658840781055787373224411971022011710750398927691148542198392666006719593879920402424064639654215455236120095854075871040423372592752469096693462000959269079258840969494382593436630893187298061406466623158975667738437618696443835299612273682419690350235178665748160417674144919894713963015104653625069351818844155709635277876942742857305159957775026651654399238311674758821678079616829315473219280245847254817304377659499397740668062983469786230289621890181295373436887460333860737176948095275373806486354780473757321819747188008279792388178186688366995786747510103080572096294833736669969039229033855272313224388915151701562480364640316586912191721505458458449287934623064009653852128487596373389869529812367192975038480384\n", + "15611285324269742443355006357951486433750454740290236185310001747317681562111574746448823942044023421500797855382297084396785332013439187759840804848129279308430910472240191708151742080846745185504938193386924001918538158517681938988765186873261786374596122812933246317951335476875237392887670599224547364839380700470357331496320835348289839789427926030209307250138703637688311419270555753885485714610319915550053303308798476623349517643356159233658630946438560491694509634608755318998795481336125966939572460579243780362590746873774920667721474353896190550747612972709560947514643639494376016559584776356373376733991573495020206161144192589667473339938078458067710544626448777830303403124960729280633173824383443010916916898575869246128019307704256975192746779739059624734385950076960768\n", + "31222570648539484886710012715902972867500909480580472370620003494635363124223149492897647884088046843001595710764594168793570664026878375519681609696258558616861820944480383416303484161693490371009876386773848003837076317035363877977530373746523572749192245625866492635902670953750474785775341198449094729678761400940714662992641670696579679578855852060418614500277407275376622838541111507770971429220639831100106606617596953246699035286712318467317261892877120983389019269217510637997590962672251933879144921158487560725181493747549841335442948707792381101495225945419121895029287278988752033119169552712746753467983146990040412322288385179334946679876156916135421089252897555660606806249921458561266347648766886021833833797151738492256038615408513950385493559478119249468771900153921536\n", + "62445141297078969773420025431805945735001818961160944741240006989270726248446298985795295768176093686003191421529188337587141328053756751039363219392517117233723641888960766832606968323386980742019752773547696007674152634070727755955060747493047145498384491251732985271805341907500949571550682396898189459357522801881429325985283341393159359157711704120837229000554814550753245677082223015541942858441279662200213213235193906493398070573424636934634523785754241966778038538435021275995181925344503867758289842316975121450362987495099682670885897415584762202990451890838243790058574557977504066238339105425493506935966293980080824644576770358669893359752313832270842178505795111321213612499842917122532695297533772043667667594303476984512077230817027900770987118956238498937543800307843072\n", + "124890282594157939546840050863611891470003637922321889482480013978541452496892597971590591536352187372006382843058376675174282656107513502078726438785034234467447283777921533665213936646773961484039505547095392015348305268141455511910121494986094290996768982503465970543610683815001899143101364793796378918715045603762858651970566682786318718315423408241674458001109629101506491354164446031083885716882559324400426426470387812986796141146849273869269047571508483933556077076870042551990363850689007735516579684633950242900725974990199365341771794831169524405980903781676487580117149115955008132476678210850987013871932587960161649289153540717339786719504627664541684357011590222642427224999685834245065390595067544087335335188606953969024154461634055801541974237912476997875087600615686144\n", + "249780565188315879093680101727223782940007275844643778964960027957082904993785195943181183072704374744012765686116753350348565312215027004157452877570068468934894567555843067330427873293547922968079011094190784030696610536282911023820242989972188581993537965006931941087221367630003798286202729587592757837430091207525717303941133365572637436630846816483348916002219258203012982708328892062167771433765118648800852852940775625973592282293698547738538095143016967867112154153740085103980727701378015471033159369267900485801451949980398730683543589662339048811961807563352975160234298231910016264953356421701974027743865175920323298578307081434679573439009255329083368714023180445284854449999371668490130781190135088174670670377213907938048308923268111603083948475824953995750175201231372288\n", + "499561130376631758187360203454447565880014551689287557929920055914165809987570391886362366145408749488025531372233506700697130624430054008314905755140136937869789135111686134660855746587095845936158022188381568061393221072565822047640485979944377163987075930013863882174442735260007596572405459175185515674860182415051434607882266731145274873261693632966697832004438516406025965416657784124335542867530237297601705705881551251947184564587397095477076190286033935734224308307480170207961455402756030942066318738535800971602903899960797461367087179324678097623923615126705950320468596463820032529906712843403948055487730351840646597156614162869359146878018510658166737428046360890569708899998743336980261562380270176349341340754427815876096617846536223206167896951649907991500350402462744576\n", + "999122260753263516374720406908895131760029103378575115859840111828331619975140783772724732290817498976051062744467013401394261248860108016629811510280273875739578270223372269321711493174191691872316044376763136122786442145131644095280971959888754327974151860027727764348885470520015193144810918350371031349720364830102869215764533462290549746523387265933395664008877032812051930833315568248671085735060474595203411411763102503894369129174794190954152380572067871468448616614960340415922910805512061884132637477071601943205807799921594922734174358649356195247847230253411900640937192927640065059813425686807896110975460703681293194313228325738718293756037021316333474856092721781139417799997486673960523124760540352698682681508855631752193235693072446412335793903299815983000700804925489152\n", + "1998244521506527032749440813817790263520058206757150231719680223656663239950281567545449464581634997952102125488934026802788522497720216033259623020560547751479156540446744538643422986348383383744632088753526272245572884290263288190561943919777508655948303720055455528697770941040030386289621836700742062699440729660205738431529066924581099493046774531866791328017754065624103861666631136497342171470120949190406822823526205007788738258349588381908304761144135742936897233229920680831845821611024123768265274954143203886411615599843189845468348717298712390495694460506823801281874385855280130119626851373615792221950921407362586388626456651477436587512074042632666949712185443562278835599994973347921046249521080705397365363017711263504386471386144892824671587806599631966001401609850978304\n", + "3996489043013054065498881627635580527040116413514300463439360447313326479900563135090898929163269995904204250977868053605577044995440432066519246041121095502958313080893489077286845972696766767489264177507052544491145768580526576381123887839555017311896607440110911057395541882080060772579243673401484125398881459320411476863058133849162198986093549063733582656035508131248207723333262272994684342940241898380813645647052410015577476516699176763816609522288271485873794466459841361663691643222048247536530549908286407772823231199686379690936697434597424780991388921013647602563748771710560260239253702747231584443901842814725172777252913302954873175024148085265333899424370887124557671199989946695842092499042161410794730726035422527008772942772289785649343175613199263932002803219701956608\n", + "7992978086026108130997763255271161054080232827028600926878720894626652959801126270181797858326539991808408501955736107211154089990880864133038492082242191005916626161786978154573691945393533534978528355014105088982291537161053152762247775679110034623793214880221822114791083764160121545158487346802968250797762918640822953726116267698324397972187098127467165312071016262496415446666524545989368685880483796761627291294104820031154953033398353527633219044576542971747588932919682723327383286444096495073061099816572815545646462399372759381873394869194849561982777842027295205127497543421120520478507405494463168887803685629450345554505826605909746350048296170530667798848741774249115342399979893391684184998084322821589461452070845054017545885544579571298686351226398527864005606439403913216\n", + "15985956172052216261995526510542322108160465654057201853757441789253305919602252540363595716653079983616817003911472214422308179981761728266076984164484382011833252323573956309147383890787067069957056710028210177964583074322106305524495551358220069247586429760443644229582167528320243090316974693605936501595525837281645907452232535396648795944374196254934330624142032524992830893333049091978737371760967593523254582588209640062309906066796707055266438089153085943495177865839365446654766572888192990146122199633145631091292924798745518763746789738389699123965555684054590410254995086842241040957014810988926337775607371258900691109011653211819492700096592341061335597697483548498230684799959786783368369996168645643178922904141690108035091771089159142597372702452797055728011212878807826432\n", + "31971912344104432523991053021084644216320931308114403707514883578506611839204505080727191433306159967233634007822944428844616359963523456532153968328968764023666504647147912618294767781574134139914113420056420355929166148644212611048991102716440138495172859520887288459164335056640486180633949387211873003191051674563291814904465070793297591888748392509868661248284065049985661786666098183957474743521935187046509165176419280124619812133593414110532876178306171886990355731678730893309533145776385980292244399266291262182585849597491037527493579476779398247931111368109180820509990173684482081914029621977852675551214742517801382218023306423638985400193184682122671195394967096996461369599919573566736739992337291286357845808283380216070183542178318285194745404905594111456022425757615652864\n", + "63943824688208865047982106042169288432641862616228807415029767157013223678409010161454382866612319934467268015645888857689232719927046913064307936657937528047333009294295825236589535563148268279828226840112840711858332297288425222097982205432880276990345719041774576918328670113280972361267898774423746006382103349126583629808930141586595183777496785019737322496568130099971323573332196367914949487043870374093018330352838560249239624267186828221065752356612343773980711463357461786619066291552771960584488798532582524365171699194982075054987158953558796495862222736218361641019980347368964163828059243955705351102429485035602764436046612847277970800386369364245342390789934193992922739199839147133473479984674582572715691616566760432140367084356636570389490809811188222912044851515231305728\n", + "127887649376417730095964212084338576865283725232457614830059534314026447356818020322908765733224639868934536031291777715378465439854093826128615873315875056094666018588591650473179071126296536559656453680225681423716664594576850444195964410865760553980691438083549153836657340226561944722535797548847492012764206698253167259617860283173190367554993570039474644993136260199942647146664392735829898974087740748186036660705677120498479248534373656442131504713224687547961422926714923573238132583105543921168977597065165048730343398389964150109974317907117592991724445472436723282039960694737928327656118487911410702204858970071205528872093225694555941600772738728490684781579868387985845478399678294266946959969349165145431383233133520864280734168713273140778981619622376445824089703030462611456\n", + "255775298752835460191928424168677153730567450464915229660119068628052894713636040645817531466449279737869072062583555430756930879708187652257231746631750112189332037177183300946358142252593073119312907360451362847433329189153700888391928821731521107961382876167098307673314680453123889445071595097694984025528413396506334519235720566346380735109987140078949289986272520399885294293328785471659797948175481496372073321411354240996958497068747312884263009426449375095922845853429847146476265166211087842337955194130330097460686796779928300219948635814235185983448890944873446564079921389475856655312236975822821404409717940142411057744186451389111883201545477456981369563159736775971690956799356588533893919938698330290862766466267041728561468337426546281557963239244752891648179406060925222912\n", + "511550597505670920383856848337354307461134900929830459320238137256105789427272081291635062932898559475738144125167110861513861759416375304514463493263500224378664074354366601892716284505186146238625814720902725694866658378307401776783857643463042215922765752334196615346629360906247778890143190195389968051056826793012669038471441132692761470219974280157898579972545040799770588586657570943319595896350962992744146642822708481993916994137494625768526018852898750191845691706859694292952530332422175684675910388260660194921373593559856600439897271628470371966897781889746893128159842778951713310624473951645642808819435880284822115488372902778223766403090954913962739126319473551943381913598713177067787839877396660581725532932534083457122936674853092563115926478489505783296358812121850445824\n", + "1023101195011341840767713696674708614922269801859660918640476274512211578854544162583270125865797118951476288250334221723027723518832750609028926986527000448757328148708733203785432569010372292477251629441805451389733316756614803553567715286926084431845531504668393230693258721812495557780286380390779936102113653586025338076942882265385522940439948560315797159945090081599541177173315141886639191792701925985488293285645416963987833988274989251537052037705797500383691383413719388585905060664844351369351820776521320389842747187119713200879794543256940743933795563779493786256319685557903426621248947903291285617638871760569644230976745805556447532806181909827925478252638947103886763827197426354135575679754793321163451065865068166914245873349706185126231852956979011566592717624243700891648\n", + "2046202390022683681535427393349417229844539603719321837280952549024423157709088325166540251731594237902952576500668443446055447037665501218057853973054000897514656297417466407570865138020744584954503258883610902779466633513229607107135430573852168863691063009336786461386517443624991115560572760781559872204227307172050676153885764530771045880879897120631594319890180163199082354346630283773278383585403851970976586571290833927975667976549978503074104075411595000767382766827438777171810121329688702738703641553042640779685494374239426401759589086513881487867591127558987572512639371115806853242497895806582571235277743521139288461953491611112895065612363819655850956505277894207773527654394852708271151359509586642326902131730136333828491746699412370252463705913958023133185435248487401783296\n", + "4092404780045367363070854786698834459689079207438643674561905098048846315418176650333080503463188475805905153001336886892110894075331002436115707946108001795029312594834932815141730276041489169909006517767221805558933267026459214214270861147704337727382126018673572922773034887249982231121145521563119744408454614344101352307771529061542091761759794241263188639780360326398164708693260567546556767170807703941953173142581667855951335953099957006148208150823190001534765533654877554343620242659377405477407283106085281559370988748478852803519178173027762975735182255117975145025278742231613706484995791613165142470555487042278576923906983222225790131224727639311701913010555788415547055308789705416542302719019173284653804263460272667656983493398824740504927411827916046266370870496974803566592\n", + "8184809560090734726141709573397668919378158414877287349123810196097692630836353300666161006926376951611810306002673773784221788150662004872231415892216003590058625189669865630283460552082978339818013035534443611117866534052918428428541722295408675454764252037347145845546069774499964462242291043126239488816909228688202704615543058123084183523519588482526377279560720652796329417386521135093113534341615407883906346285163335711902671906199914012296416301646380003069531067309755108687240485318754810954814566212170563118741977496957705607038356346055525951470364510235950290050557484463227412969991583226330284941110974084557153847813966444451580262449455278623403826021111576831094110617579410833084605438038346569307608526920545335313966986797649481009854823655832092532741740993949607133184\n", + "16369619120181469452283419146795337838756316829754574698247620392195385261672706601332322013852753903223620612005347547568443576301324009744462831784432007180117250379339731260566921104165956679636026071068887222235733068105836856857083444590817350909528504074694291691092139548999928924484582086252478977633818457376405409231086116246168367047039176965052754559121441305592658834773042270186227068683230815767812692570326671423805343812399828024592832603292760006139062134619510217374480970637509621909629132424341126237483954993915411214076712692111051902940729020471900580101114968926454825939983166452660569882221948169114307695627932888903160524898910557246807652042223153662188221235158821666169210876076693138615217053841090670627933973595298962019709647311664185065483481987899214266368\n", + "32739238240362938904566838293590675677512633659509149396495240784390770523345413202664644027705507806447241224010695095136887152602648019488925663568864014360234500758679462521133842208331913359272052142137774444471466136211673713714166889181634701819057008149388583382184279097999857848969164172504957955267636914752810818462172232492336734094078353930105509118242882611185317669546084540372454137366461631535625385140653342847610687624799656049185665206585520012278124269239020434748961941275019243819258264848682252474967909987830822428153425384222103805881458040943801160202229937852909651879966332905321139764443896338228615391255865777806321049797821114493615304084446307324376442470317643332338421752153386277230434107682181341255867947190597924039419294623328370130966963975798428532736\n", + "65478476480725877809133676587181351355025267319018298792990481568781541046690826405329288055411015612894482448021390190273774305205296038977851327137728028720469001517358925042267684416663826718544104284275548888942932272423347427428333778363269403638114016298777166764368558195999715697938328345009915910535273829505621636924344464984673468188156707860211018236485765222370635339092169080744908274732923263071250770281306685695221375249599312098371330413171040024556248538478040869497923882550038487638516529697364504949935819975661644856306850768444207611762916081887602320404459875705819303759932665810642279528887792676457230782511731555612642099595642228987230608168892614648752884940635286664676843504306772554460868215364362682511735894381195848078838589246656740261933927951596857065472\n", + "130956952961451755618267353174362702710050534638036597585980963137563082093381652810658576110822031225788964896042780380547548610410592077955702654275456057440938003034717850084535368833327653437088208568551097777885864544846694854856667556726538807276228032597554333528737116391999431395876656690019831821070547659011243273848688929969346936376313415720422036472971530444741270678184338161489816549465846526142501540562613371390442750499198624196742660826342080049112497076956081738995847765100076975277033059394729009899871639951323289712613701536888415223525832163775204640808919751411638607519865331621284559057775585352914461565023463111225284199191284457974461216337785229297505769881270573329353687008613545108921736430728725365023471788762391696157677178493313480523867855903193714130944\n", + "261913905922903511236534706348725405420101069276073195171961926275126164186763305621317152221644062451577929792085560761095097220821184155911405308550912114881876006069435700169070737666655306874176417137102195555771729089693389709713335113453077614552456065195108667057474232783998862791753313380039663642141095318022486547697377859938693872752626831440844072945943060889482541356368676322979633098931693052285003081125226742780885500998397248393485321652684160098224994153912163477991695530200153950554066118789458019799743279902646579425227403073776830447051664327550409281617839502823277215039730663242569118115551170705828923130046926222450568398382568915948922432675570458595011539762541146658707374017227090217843472861457450730046943577524783392315354356986626961047735711806387428261888\n", + "523827811845807022473069412697450810840202138552146390343923852550252328373526611242634304443288124903155859584171121522190194441642368311822810617101824229763752012138871400338141475333310613748352834274204391111543458179386779419426670226906155229104912130390217334114948465567997725583506626760079327284282190636044973095394755719877387745505253662881688145891886121778965082712737352645959266197863386104570006162250453485561771001996794496786970643305368320196449988307824326955983391060400307901108132237578916039599486559805293158850454806147553660894103328655100818563235679005646554430079461326485138236231102341411657846260093852444901136796765137831897844865351140917190023079525082293317414748034454180435686945722914901460093887155049566784630708713973253922095471423612774856523776\n", + "1047655623691614044946138825394901621680404277104292780687847705100504656747053222485268608886576249806311719168342243044380388883284736623645621234203648459527504024277742800676282950666621227496705668548408782223086916358773558838853340453812310458209824260780434668229896931135995451167013253520158654568564381272089946190789511439754775491010507325763376291783772243557930165425474705291918532395726772209140012324500906971123542003993588993573941286610736640392899976615648653911966782120800615802216264475157832079198973119610586317700909612295107321788206657310201637126471358011293108860158922652970276472462204682823315692520187704889802273593530275663795689730702281834380046159050164586634829496068908360871373891445829802920187774310099133569261417427946507844190942847225549713047552\n", + "2095311247383228089892277650789803243360808554208585561375695410201009313494106444970537217773152499612623438336684486088760777766569473247291242468407296919055008048555485601352565901333242454993411337096817564446173832717547117677706680907624620916419648521560869336459793862271990902334026507040317309137128762544179892381579022879509550982021014651526752583567544487115860330850949410583837064791453544418280024649001813942247084007987177987147882573221473280785799953231297307823933564241601231604432528950315664158397946239221172635401819224590214643576413314620403274252942716022586217720317845305940552944924409365646631385040375409779604547187060551327591379461404563668760092318100329173269658992137816721742747782891659605840375548620198267138522834855893015688381885694451099426095104\n", + "4190622494766456179784555301579606486721617108417171122751390820402018626988212889941074435546304999225246876673368972177521555533138946494582484936814593838110016097110971202705131802666484909986822674193635128892347665435094235355413361815249241832839297043121738672919587724543981804668053014080634618274257525088359784763158045759019101964042029303053505167135088974231720661701898821167674129582907088836560049298003627884494168015974355974295765146442946561571599906462594615647867128483202463208865057900631328316795892478442345270803638449180429287152826629240806548505885432045172435440635690611881105889848818731293262770080750819559209094374121102655182758922809127337520184636200658346539317984275633443485495565783319211680751097240396534277045669711786031376763771388902198852190208\n", + "8381244989532912359569110603159212973443234216834342245502781640804037253976425779882148871092609998450493753346737944355043111066277892989164969873629187676220032194221942405410263605332969819973645348387270257784695330870188470710826723630498483665678594086243477345839175449087963609336106028161269236548515050176719569526316091518038203928084058606107010334270177948463441323403797642335348259165814177673120098596007255768988336031948711948591530292885893123143199812925189231295734256966404926417730115801262656633591784956884690541607276898360858574305653258481613097011770864090344870881271381223762211779697637462586525540161501639118418188748242205310365517845618254675040369272401316693078635968551266886970991131566638423361502194480793068554091339423572062753527542777804397704380416\n", + "16762489979065824719138221206318425946886468433668684491005563281608074507952851559764297742185219996900987506693475888710086222132555785978329939747258375352440064388443884810820527210665939639947290696774540515569390661740376941421653447260996967331357188172486954691678350898175927218672212056322538473097030100353439139052632183036076407856168117212214020668540355896926882646807595284670696518331628355346240197192014511537976672063897423897183060585771786246286399625850378462591468513932809852835460231602525313267183569913769381083214553796721717148611306516963226194023541728180689741762542762447524423559395274925173051080323003278236836377496484410620731035691236509350080738544802633386157271937102533773941982263133276846723004388961586137108182678847144125507055085555608795408760832\n", + "33524979958131649438276442412636851893772936867337368982011126563216149015905703119528595484370439993801975013386951777420172444265111571956659879494516750704880128776887769621641054421331879279894581393549081031138781323480753882843306894521993934662714376344973909383356701796351854437344424112645076946194060200706878278105264366072152815712336234424428041337080711793853765293615190569341393036663256710692480394384029023075953344127794847794366121171543572492572799251700756925182937027865619705670920463205050626534367139827538762166429107593443434297222613033926452388047083456361379483525085524895048847118790549850346102160646006556473672754992968821241462071382473018700161477089605266772314543874205067547883964526266553693446008777923172274216365357694288251014110171111217590817521664\n", + "67049959916263298876552884825273703787545873734674737964022253126432298031811406239057190968740879987603950026773903554840344888530223143913319758989033501409760257553775539243282108842663758559789162787098162062277562646961507765686613789043987869325428752689947818766713403592703708874688848225290153892388120401413756556210528732144305631424672468848856082674161423587707530587230381138682786073326513421384960788768058046151906688255589695588732242343087144985145598503401513850365874055731239411341840926410101253068734279655077524332858215186886868594445226067852904776094166912722758967050171049790097694237581099700692204321292013112947345509985937642482924142764946037400322954179210533544629087748410135095767929052533107386892017555846344548432730715388576502028220342222435181635043328\n", + "134099919832526597753105769650547407575091747469349475928044506252864596063622812478114381937481759975207900053547807109680689777060446287826639517978067002819520515107551078486564217685327517119578325574196324124555125293923015531373227578087975738650857505379895637533426807185407417749377696450580307784776240802827513112421057464288611262849344937697712165348322847175415061174460762277365572146653026842769921577536116092303813376511179391177464484686174289970291197006803027700731748111462478822683681852820202506137468559310155048665716430373773737188890452135705809552188333825445517934100342099580195388475162199401384408642584026225894691019971875284965848285529892074800645908358421067089258175496820270191535858105066214773784035111692689096865461430777153004056440684444870363270086656\n", + "268199839665053195506211539301094815150183494938698951856089012505729192127245624956228763874963519950415800107095614219361379554120892575653279035956134005639041030215102156973128435370655034239156651148392648249110250587846031062746455156175951477301715010759791275066853614370814835498755392901160615569552481605655026224842114928577222525698689875395424330696645694350830122348921524554731144293306053685539843155072232184607626753022358782354928969372348579940582394013606055401463496222924957645367363705640405012274937118620310097331432860747547474377780904271411619104376667650891035868200684199160390776950324398802768817285168052451789382039943750569931696571059784149601291816716842134178516350993640540383071716210132429547568070223385378193730922861554306008112881368889740726540173312\n", + "536399679330106391012423078602189630300366989877397903712178025011458384254491249912457527749927039900831600214191228438722759108241785151306558071912268011278082060430204313946256870741310068478313302296785296498220501175692062125492910312351902954603430021519582550133707228741629670997510785802321231139104963211310052449684229857154445051397379750790848661393291388701660244697843049109462288586612107371079686310144464369215253506044717564709857938744697159881164788027212110802926992445849915290734727411280810024549874237240620194662865721495094948755561808542823238208753335301782071736401368398320781553900648797605537634570336104903578764079887501139863393142119568299202583633433684268357032701987281080766143432420264859095136140446770756387461845723108612016225762737779481453080346624\n", + "1072799358660212782024846157204379260600733979754795807424356050022916768508982499824915055499854079801663200428382456877445518216483570302613116143824536022556164120860408627892513741482620136956626604593570592996441002351384124250985820624703805909206860043039165100267414457483259341995021571604642462278209926422620104899368459714308890102794759501581697322786582777403320489395686098218924577173224214742159372620288928738430507012089435129419715877489394319762329576054424221605853984891699830581469454822561620049099748474481240389325731442990189897511123617085646476417506670603564143472802736796641563107801297595211075269140672209807157528159775002279726786284239136598405167266867368536714065403974562161532286864840529718190272280893541512774923691446217224032451525475558962906160693248\n", + "2145598717320425564049692314408758521201467959509591614848712100045833537017964999649830110999708159603326400856764913754891036432967140605226232287649072045112328241720817255785027482965240273913253209187141185992882004702768248501971641249407611818413720086078330200534828914966518683990043143209284924556419852845240209798736919428617780205589519003163394645573165554806640978791372196437849154346448429484318745240577857476861014024178870258839431754978788639524659152108848443211707969783399661162938909645123240098199496948962480778651462885980379795022247234171292952835013341207128286945605473593283126215602595190422150538281344419614315056319550004559453572568478273196810334533734737073428130807949124323064573729681059436380544561787083025549847382892434448064903050951117925812321386496\n", + "4291197434640851128099384628817517042402935919019183229697424200091667074035929999299660221999416319206652801713529827509782072865934281210452464575298144090224656483441634511570054965930480547826506418374282371985764009405536497003943282498815223636827440172156660401069657829933037367980086286418569849112839705690480419597473838857235560411179038006326789291146331109613281957582744392875698308692896858968637490481155714953722028048357740517678863509957577279049318304217696886423415939566799322325877819290246480196398993897924961557302925771960759590044494468342585905670026682414256573891210947186566252431205190380844301076562688839228630112639100009118907145136956546393620669067469474146856261615898248646129147459362118872761089123574166051099694765784868896129806101902235851624642772992\n", + "8582394869281702256198769257635034084805871838038366459394848400183334148071859998599320443998832638413305603427059655019564145731868562420904929150596288180449312966883269023140109931860961095653012836748564743971528018811072994007886564997630447273654880344313320802139315659866074735960172572837139698225679411380960839194947677714471120822358076012653578582292662219226563915165488785751396617385793717937274980962311429907444056096715481035357727019915154558098636608435393772846831879133598644651755638580492960392797987795849923114605851543921519180088988936685171811340053364828513147782421894373132504862410380761688602153125377678457260225278200018237814290273913092787241338134938948293712523231796497292258294918724237745522178247148332102199389531569737792259612203804471703249285545984\n", + "17164789738563404512397538515270068169611743676076732918789696800366668296143719997198640887997665276826611206854119310039128291463737124841809858301192576360898625933766538046280219863721922191306025673497129487943056037622145988015773129995260894547309760688626641604278631319732149471920345145674279396451358822761921678389895355428942241644716152025307157164585324438453127830330977571502793234771587435874549961924622859814888112193430962070715454039830309116197273216870787545693663758267197289303511277160985920785595975591699846229211703087843038360177977873370343622680106729657026295564843788746265009724820761523377204306250755356914520450556400036475628580547826185574482676269877896587425046463592994584516589837448475491044356494296664204398779063139475584519224407608943406498571091968\n", + "34329579477126809024795077030540136339223487352153465837579393600733336592287439994397281775995330553653222413708238620078256582927474249683619716602385152721797251867533076092560439727443844382612051346994258975886112075244291976031546259990521789094619521377253283208557262639464298943840690291348558792902717645523843356779790710857884483289432304050614314329170648876906255660661955143005586469543174871749099923849245719629776224386861924141430908079660618232394546433741575091387327516534394578607022554321971841571191951183399692458423406175686076720355955746740687245360213459314052591129687577492530019449641523046754408612501510713829040901112800072951257161095652371148965352539755793174850092927185989169033179674896950982088712988593328408797558126278951169038448815217886812997142183936\n", + "68659158954253618049590154061080272678446974704306931675158787201466673184574879988794563551990661107306444827416477240156513165854948499367239433204770305443594503735066152185120879454887688765224102693988517951772224150488583952063092519981043578189239042754506566417114525278928597887681380582697117585805435291047686713559581421715768966578864608101228628658341297753812511321323910286011172939086349743498199847698491439259552448773723848282861816159321236464789092867483150182774655033068789157214045108643943683142383902366799384916846812351372153440711911493481374490720426918628105182259375154985060038899283046093508817225003021427658081802225600145902514322191304742297930705079511586349700185854371978338066359349793901964177425977186656817595116252557902338076897630435773625994284367872\n", + "137318317908507236099180308122160545356893949408613863350317574402933346369149759977589127103981322214612889654832954480313026331709896998734478866409540610887189007470132304370241758909775377530448205387977035903544448300977167904126185039962087156378478085509013132834229050557857195775362761165394235171610870582095373427119162843431537933157729216202457257316682595507625022642647820572022345878172699486996399695396982878519104897547447696565723632318642472929578185734966300365549310066137578314428090217287887366284767804733598769833693624702744306881423822986962748981440853837256210364518750309970120077798566092187017634450006042855316163604451200291805028644382609484595861410159023172699400371708743956676132718699587803928354851954373313635190232505115804676153795260871547251988568735744\n", + "274636635817014472198360616244321090713787898817227726700635148805866692738299519955178254207962644429225779309665908960626052663419793997468957732819081221774378014940264608740483517819550755060896410775954071807088896601954335808252370079924174312756956171018026265668458101115714391550725522330788470343221741164190746854238325686863075866315458432404914514633365191015250045285295641144044691756345398973992799390793965757038209795094895393131447264637284945859156371469932600731098620132275156628856180434575774732569535609467197539667387249405488613762847645973925497962881707674512420729037500619940240155597132184374035268900012085710632327208902400583610057288765218969191722820318046345398800743417487913352265437399175607856709703908746627270380465010231609352307590521743094503977137471488\n", + "549273271634028944396721232488642181427575797634455453401270297611733385476599039910356508415925288858451558619331817921252105326839587994937915465638162443548756029880529217480967035639101510121792821551908143614177793203908671616504740159848348625513912342036052531336916202231428783101451044661576940686443482328381493708476651373726151732630916864809829029266730382030500090570591282288089383512690797947985598781587931514076419590189790786262894529274569891718312742939865201462197240264550313257712360869151549465139071218934395079334774498810977227525695291947850995925763415349024841458075001239880480311194264368748070537800024171421264654417804801167220114577530437938383445640636092690797601486834975826704530874798351215713419407817493254540760930020463218704615181043486189007954274942976\n", + "1098546543268057888793442464977284362855151595268910906802540595223466770953198079820713016831850577716903117238663635842504210653679175989875830931276324887097512059761058434961934071278203020243585643103816287228355586407817343233009480319696697251027824684072105062673832404462857566202902089323153881372886964656762987416953302747452303465261833729619658058533460764061000181141182564576178767025381595895971197563175863028152839180379581572525789058549139783436625485879730402924394480529100626515424721738303098930278142437868790158669548997621954455051390583895701991851526830698049682916150002479760960622388528737496141075600048342842529308835609602334440229155060875876766891281272185381595202973669951653409061749596702431426838815634986509081521860040926437409230362086972378015908549885952\n", + "2197093086536115777586884929954568725710303190537821813605081190446933541906396159641426033663701155433806234477327271685008421307358351979751661862552649774195024119522116869923868142556406040487171286207632574456711172815634686466018960639393394502055649368144210125347664808925715132405804178646307762745773929313525974833906605494904606930523667459239316117066921528122000362282365129152357534050763191791942395126351726056305678360759163145051578117098279566873250971759460805848788961058201253030849443476606197860556284875737580317339097995243908910102781167791403983703053661396099365832300004959521921244777057474992282151200096685685058617671219204668880458310121751753533782562544370763190405947339903306818123499193404862853677631269973018163043720081852874818460724173944756031817099771904\n", + "4394186173072231555173769859909137451420606381075643627210162380893867083812792319282852067327402310867612468954654543370016842614716703959503323725105299548390048239044233739847736285112812080974342572415265148913422345631269372932037921278786789004111298736288420250695329617851430264811608357292615525491547858627051949667813210989809213861047334918478632234133843056244000724564730258304715068101526383583884790252703452112611356721518326290103156234196559133746501943518921611697577922116402506061698886953212395721112569751475160634678195990487817820205562335582807967406107322792198731664600009919043842489554114949984564302400193371370117235342438409337760916620243503507067565125088741526380811894679806613636246998386809725707355262539946036326087440163705749636921448347889512063634199543808\n", + "8788372346144463110347539719818274902841212762151287254420324761787734167625584638565704134654804621735224937909309086740033685229433407919006647450210599096780096478088467479695472570225624161948685144830530297826844691262538745864075842557573578008222597472576840501390659235702860529623216714585231050983095717254103899335626421979618427722094669836957264468267686112488001449129460516609430136203052767167769580505406904225222713443036652580206312468393118267493003887037843223395155844232805012123397773906424791442225139502950321269356391980975635640411124671165615934812214645584397463329200019838087684979108229899969128604800386742740234470684876818675521833240487007014135130250177483052761623789359613227272493996773619451414710525079892072652174880327411499273842896695779024127268399087616\n", + "17576744692288926220695079439636549805682425524302574508840649523575468335251169277131408269309609243470449875818618173480067370458866815838013294900421198193560192956176934959390945140451248323897370289661060595653689382525077491728151685115147156016445194945153681002781318471405721059246433429170462101966191434508207798671252843959236855444189339673914528936535372224976002898258921033218860272406105534335539161010813808450445426886073305160412624936786236534986007774075686446790311688465610024246795547812849582884450279005900642538712783961951271280822249342331231869624429291168794926658400039676175369958216459799938257209600773485480468941369753637351043666480974014028270260500354966105523247578719226454544987993547238902829421050159784145304349760654822998547685793391558048254536798175232\n", + "35153489384577852441390158879273099611364851048605149017681299047150936670502338554262816538619218486940899751637236346960134740917733631676026589800842396387120385912353869918781890280902496647794740579322121191307378765050154983456303370230294312032890389890307362005562636942811442118492866858340924203932382869016415597342505687918473710888378679347829057873070744449952005796517842066437720544812211068671078322021627616900890853772146610320825249873572473069972015548151372893580623376931220048493591095625699165768900558011801285077425567923902542561644498684662463739248858582337589853316800079352350739916432919599876514419201546970960937882739507274702087332961948028056540521000709932211046495157438452909089975987094477805658842100319568290608699521309645997095371586783116096509073596350464\n", + "70306978769155704882780317758546199222729702097210298035362598094301873341004677108525633077238436973881799503274472693920269481835467263352053179601684792774240771824707739837563780561804993295589481158644242382614757530100309966912606740460588624065780779780614724011125273885622884236985733716681848407864765738032831194685011375836947421776757358695658115746141488899904011593035684132875441089624422137342156644043255233801781707544293220641650499747144946139944031096302745787161246753862440096987182191251398331537801116023602570154851135847805085123288997369324927478497717164675179706633600158704701479832865839199753028838403093941921875765479014549404174665923896056113081042001419864422092990314876905818179951974188955611317684200639136581217399042619291994190743173566232193018147192700928\n", + "140613957538311409765560635517092398445459404194420596070725196188603746682009354217051266154476873947763599006548945387840538963670934526704106359203369585548481543649415479675127561123609986591178962317288484765229515060200619933825213480921177248131561559561229448022250547771245768473971467433363696815729531476065662389370022751673894843553514717391316231492282977799808023186071368265750882179248844274684313288086510467603563415088586441283300999494289892279888062192605491574322493507724880193974364382502796663075602232047205140309702271695610170246577994738649854956995434329350359413267200317409402959665731678399506057676806187883843751530958029098808349331847792112226162084002839728844185980629753811636359903948377911222635368401278273162434798085238583988381486347132464386036294385401856\n", + "281227915076622819531121271034184796890918808388841192141450392377207493364018708434102532308953747895527198013097890775681077927341869053408212718406739171096963087298830959350255122247219973182357924634576969530459030120401239867650426961842354496263123119122458896044501095542491536947942934866727393631459062952131324778740045503347789687107029434782632462984565955599616046372142736531501764358497688549368626576173020935207126830177172882566601998988579784559776124385210983148644987015449760387948728765005593326151204464094410280619404543391220340493155989477299709913990868658700718826534400634818805919331463356799012115353612375767687503061916058197616698663695584224452324168005679457688371961259507623272719807896755822445270736802556546324869596170477167976762972694264928772072588770803712\n", + "562455830153245639062242542068369593781837616777682384282900784754414986728037416868205064617907495791054396026195781551362155854683738106816425436813478342193926174597661918700510244494439946364715849269153939060918060240802479735300853923684708992526246238244917792089002191084983073895885869733454787262918125904262649557480091006695579374214058869565264925969131911199232092744285473063003528716995377098737253152346041870414253660354345765133203997977159569119552248770421966297289974030899520775897457530011186652302408928188820561238809086782440680986311978954599419827981737317401437653068801269637611838662926713598024230707224751535375006123832116395233397327391168448904648336011358915376743922519015246545439615793511644890541473605113092649739192340954335953525945388529857544145177541607424\n", + "1124911660306491278124485084136739187563675233555364768565801569508829973456074833736410129235814991582108792052391563102724311709367476213632850873626956684387852349195323837401020488988879892729431698538307878121836120481604959470601707847369417985052492476489835584178004382169966147791771739466909574525836251808525299114960182013391158748428117739130529851938263822398464185488570946126007057433990754197474506304692083740828507320708691530266407995954319138239104497540843932594579948061799041551794915060022373304604817856377641122477618173564881361972623957909198839655963474634802875306137602539275223677325853427196048461414449503070750012247664232790466794654782336897809296672022717830753487845038030493090879231587023289781082947210226185299478384681908671907051890777059715088290355083214848\n", + "2249823320612982556248970168273478375127350467110729537131603139017659946912149667472820258471629983164217584104783126205448623418734952427265701747253913368775704698390647674802040977977759785458863397076615756243672240963209918941203415694738835970104984952979671168356008764339932295583543478933819149051672503617050598229920364026782317496856235478261059703876527644796928370977141892252014114867981508394949012609384167481657014641417383060532815991908638276478208995081687865189159896123598083103589830120044746609209635712755282244955236347129762723945247915818397679311926949269605750612275205078550447354651706854392096922828899006141500024495328465580933589309564673795618593344045435661506975690076060986181758463174046579562165894420452370598956769363817343814103781554119430176580710166429696\n", + "4499646641225965112497940336546956750254700934221459074263206278035319893824299334945640516943259966328435168209566252410897246837469904854531403494507826737551409396781295349604081955955519570917726794153231512487344481926419837882406831389477671940209969905959342336712017528679864591167086957867638298103345007234101196459840728053564634993712470956522119407753055289593856741954283784504028229735963016789898025218768334963314029282834766121065631983817276552956417990163375730378319792247196166207179660240089493218419271425510564489910472694259525447890495831636795358623853898539211501224550410157100894709303413708784193845657798012283000048990656931161867178619129347591237186688090871323013951380152121972363516926348093159124331788840904741197913538727634687628207563108238860353161420332859392\n", + "8999293282451930224995880673093913500509401868442918148526412556070639787648598669891281033886519932656870336419132504821794493674939809709062806989015653475102818793562590699208163911911039141835453588306463024974688963852839675764813662778955343880419939811918684673424035057359729182334173915735276596206690014468202392919681456107129269987424941913044238815506110579187713483908567569008056459471926033579796050437536669926628058565669532242131263967634553105912835980326751460756639584494392332414359320480178986436838542851021128979820945388519050895780991663273590717247707797078423002449100820314201789418606827417568387691315596024566000097981313862323734357238258695182474373376181742646027902760304243944727033852696186318248663577681809482395827077455269375256415126216477720706322840665718784\n", + "17998586564903860449991761346187827001018803736885836297052825112141279575297197339782562067773039865313740672838265009643588987349879619418125613978031306950205637587125181398416327823822078283670907176612926049949377927705679351529627325557910687760839879623837369346848070114719458364668347831470553192413380028936404785839362912214258539974849883826088477631012221158375426967817135138016112918943852067159592100875073339853256117131339064484262527935269106211825671960653502921513279168988784664828718640960357972873677085702042257959641890777038101791561983326547181434495415594156846004898201640628403578837213654835136775382631192049132000195962627724647468714476517390364948746752363485292055805520608487889454067705392372636497327155363618964791654154910538750512830252432955441412645681331437568\n", + "35997173129807720899983522692375654002037607473771672594105650224282559150594394679565124135546079730627481345676530019287177974699759238836251227956062613900411275174250362796832655647644156567341814353225852099898755855411358703059254651115821375521679759247674738693696140229438916729336695662941106384826760057872809571678725824428517079949699767652176955262024442316750853935634270276032225837887704134319184201750146679706512234262678128968525055870538212423651343921307005843026558337977569329657437281920715945747354171404084515919283781554076203583123966653094362868990831188313692009796403281256807157674427309670273550765262384098264000391925255449294937428953034780729897493504726970584111611041216975778908135410784745272994654310727237929583308309821077501025660504865910882825291362662875136\n", + "71994346259615441799967045384751308004075214947543345188211300448565118301188789359130248271092159461254962691353060038574355949399518477672502455912125227800822550348500725593665311295288313134683628706451704199797511710822717406118509302231642751043359518495349477387392280458877833458673391325882212769653520115745619143357451648857034159899399535304353910524048884633501707871268540552064451675775408268638368403500293359413024468525356257937050111741076424847302687842614011686053116675955138659314874563841431891494708342808169031838567563108152407166247933306188725737981662376627384019592806562513614315348854619340547101530524768196528000783850510898589874857906069561459794987009453941168223222082433951557816270821569490545989308621454475859166616619642155002051321009731821765650582725325750272\n", + "143988692519230883599934090769502616008150429895086690376422600897130236602377578718260496542184318922509925382706120077148711898799036955345004911824250455601645100697001451187330622590576626269367257412903408399595023421645434812237018604463285502086719036990698954774784560917755666917346782651764425539307040231491238286714903297714068319798799070608707821048097769267003415742537081104128903351550816537276736807000586718826048937050712515874100223482152849694605375685228023372106233351910277318629749127682863782989416685616338063677135126216304814332495866612377451475963324753254768039185613125027228630697709238681094203061049536393056001567701021797179749715812139122919589974018907882336446444164867903115632541643138981091978617242908951718333233239284310004102642019463643531301165450651500544\n", + "287977385038461767199868181539005232016300859790173380752845201794260473204755157436520993084368637845019850765412240154297423797598073910690009823648500911203290201394002902374661245181153252538734514825806816799190046843290869624474037208926571004173438073981397909549569121835511333834693565303528851078614080462982476573429806595428136639597598141217415642096195538534006831485074162208257806703101633074553473614001173437652097874101425031748200446964305699389210751370456046744212466703820554637259498255365727565978833371232676127354270252432609628664991733224754902951926649506509536078371226250054457261395418477362188406122099072786112003135402043594359499431624278245839179948037815764672892888329735806231265083286277962183957234485817903436666466478568620008205284038927287062602330901303001088\n", + "575954770076923534399736363078010464032601719580346761505690403588520946409510314873041986168737275690039701530824480308594847595196147821380019647297001822406580402788005804749322490362306505077469029651613633598380093686581739248948074417853142008346876147962795819099138243671022667669387130607057702157228160925964953146859613190856273279195196282434831284192391077068013662970148324416515613406203266149106947228002346875304195748202850063496400893928611398778421502740912093488424933407641109274518996510731455131957666742465352254708540504865219257329983466449509805903853299013019072156742452500108914522790836954724376812244198145572224006270804087188718998863248556491678359896075631529345785776659471612462530166572555924367914468971635806873332932957137240016410568077854574125204661802606002176\n", + "1151909540153847068799472726156020928065203439160693523011380807177041892819020629746083972337474551380079403061648960617189695190392295642760039294594003644813160805576011609498644980724613010154938059303227267196760187373163478497896148835706284016693752295925591638198276487342045335338774261214115404314456321851929906293719226381712546558390392564869662568384782154136027325940296648833031226812406532298213894456004693750608391496405700126992801787857222797556843005481824186976849866815282218549037993021462910263915333484930704509417081009730438514659966932899019611807706598026038144313484905000217829045581673909448753624488396291144448012541608174377437997726497112983356719792151263058691571553318943224925060333145111848735828937943271613746665865914274480032821136155709148250409323605212004352\n", + "2303819080307694137598945452312041856130406878321387046022761614354083785638041259492167944674949102760158806123297921234379390380784591285520078589188007289626321611152023218997289961449226020309876118606454534393520374746326956995792297671412568033387504591851183276396552974684090670677548522428230808628912643703859812587438452763425093116780785129739325136769564308272054651880593297666062453624813064596427788912009387501216782992811400253985603575714445595113686010963648373953699733630564437098075986042925820527830666969861409018834162019460877029319933865798039223615413196052076288626969810000435658091163347818897507248976792582288896025083216348754875995452994225966713439584302526117383143106637886449850120666290223697471657875886543227493331731828548960065642272311418296500818647210424008704\n", + "4607638160615388275197890904624083712260813756642774092045523228708167571276082518984335889349898205520317612246595842468758780761569182571040157178376014579252643222304046437994579922898452040619752237212909068787040749492653913991584595342825136066775009183702366552793105949368181341355097044856461617257825287407719625174876905526850186233561570259478650273539128616544109303761186595332124907249626129192855577824018775002433565985622800507971207151428891190227372021927296747907399467261128874196151972085851641055661333939722818037668324038921754058639867731596078447230826392104152577253939620000871316182326695637795014497953585164577792050166432697509751990905988451933426879168605052234766286213275772899700241332580447394943315751773086454986663463657097920131284544622836593001637294420848017408\n", + "9215276321230776550395781809248167424521627513285548184091046457416335142552165037968671778699796411040635224493191684937517561523138365142080314356752029158505286444608092875989159845796904081239504474425818137574081498985307827983169190685650272133550018367404733105586211898736362682710194089712923234515650574815439250349753811053700372467123140518957300547078257233088218607522373190664249814499252258385711155648037550004867131971245601015942414302857782380454744043854593495814798934522257748392303944171703282111322667879445636075336648077843508117279735463192156894461652784208305154507879240001742632364653391275590028995907170329155584100332865395019503981811976903866853758337210104469532572426551545799400482665160894789886631503546172909973326927314195840262569089245673186003274588841696034816\n", + "18430552642461553100791563618496334849043255026571096368182092914832670285104330075937343557399592822081270448986383369875035123046276730284160628713504058317010572889216185751978319691593808162479008948851636275148162997970615655966338381371300544267100036734809466211172423797472725365420388179425846469031301149630878500699507622107400744934246281037914601094156514466176437215044746381328499628998504516771422311296075100009734263942491202031884828605715564760909488087709186991629597869044515496784607888343406564222645335758891272150673296155687016234559470926384313788923305568416610309015758480003485264729306782551180057991814340658311168200665730790039007963623953807733707516674420208939065144853103091598800965330321789579773263007092345819946653854628391680525138178491346372006549177683392069632\n", + "36861105284923106201583127236992669698086510053142192736364185829665340570208660151874687114799185644162540897972766739750070246092553460568321257427008116634021145778432371503956639383187616324958017897703272550296325995941231311932676762742601088534200073469618932422344847594945450730840776358851692938062602299261757001399015244214801489868492562075829202188313028932352874430089492762656999257997009033542844622592150200019468527884982404063769657211431129521818976175418373983259195738089030993569215776686813128445290671517782544301346592311374032469118941852768627577846611136833220618031516960006970529458613565102360115983628681316622336401331461580078015927247907615467415033348840417878130289706206183197601930660643579159546526014184691639893307709256783361050276356982692744013098355366784139264\n", + "73722210569846212403166254473985339396173020106284385472728371659330681140417320303749374229598371288325081795945533479500140492185106921136642514854016233268042291556864743007913278766375232649916035795406545100592651991882462623865353525485202177068400146939237864844689695189890901461681552717703385876125204598523514002798030488429602979736985124151658404376626057864705748860178985525313998515994018067085689245184300400038937055769964808127539314422862259043637952350836747966518391476178061987138431553373626256890581343035565088602693184622748064938237883705537255155693222273666441236063033920013941058917227130204720231967257362633244672802662923160156031854495815230934830066697680835756260579412412366395203861321287158319093052028369383279786615418513566722100552713965385488026196710733568278528\n", + "147444421139692424806332508947970678792346040212568770945456743318661362280834640607498748459196742576650163591891066959000280984370213842273285029708032466536084583113729486015826557532750465299832071590813090201185303983764925247730707050970404354136800293878475729689379390379781802923363105435406771752250409197047028005596060976859205959473970248303316808753252115729411497720357971050627997031988036134171378490368600800077874111539929616255078628845724518087275904701673495933036782952356123974276863106747252513781162686071130177205386369245496129876475767411074510311386444547332882472126067840027882117834454260409440463934514725266489345605325846320312063708991630461869660133395361671512521158824824732790407722642574316638186104056738766559573230837027133444201105427930770976052393421467136557056\n", + "294888842279384849612665017895941357584692080425137541890913486637322724561669281214997496918393485153300327183782133918000561968740427684546570059416064933072169166227458972031653115065500930599664143181626180402370607967529850495461414101940808708273600587756951459378758780759563605846726210870813543504500818394094056011192121953718411918947940496606633617506504231458822995440715942101255994063976072268342756980737201600155748223079859232510157257691449036174551809403346991866073565904712247948553726213494505027562325372142260354410772738490992259752951534822149020622772889094665764944252135680055764235668908520818880927869029450532978691210651692640624127417983260923739320266790723343025042317649649465580815445285148633276372208113477533119146461674054266888402210855861541952104786842934273114112\n", + "589777684558769699225330035791882715169384160850275083781826973274645449123338562429994993836786970306600654367564267836001123937480855369093140118832129866144338332454917944063306230131001861199328286363252360804741215935059700990922828203881617416547201175513902918757517561519127211693452421741627087009001636788188112022384243907436823837895880993213267235013008462917645990881431884202511988127952144536685513961474403200311496446159718465020314515382898072349103618806693983732147131809424495897107452426989010055124650744284520708821545476981984519505903069644298041245545778189331529888504271360111528471337817041637761855738058901065957382421303385281248254835966521847478640533581446686050084635299298931161630890570297266552744416226955066238292923348108533776804421711723083904209573685868546228224\n", + "1179555369117539398450660071583765430338768321700550167563653946549290898246677124859989987673573940613201308735128535672002247874961710738186280237664259732288676664909835888126612460262003722398656572726504721609482431870119401981845656407763234833094402351027805837515035123038254423386904843483254174018003273576376224044768487814873647675791761986426534470026016925835291981762863768405023976255904289073371027922948806400622992892319436930040629030765796144698207237613387967464294263618848991794214904853978020110249301488569041417643090953963969039011806139288596082491091556378663059777008542720223056942675634083275523711476117802131914764842606770562496509671933043694957281067162893372100169270598597862323261781140594533105488832453910132476585846696217067553608843423446167808419147371737092456448\n", + "2359110738235078796901320143167530860677536643401100335127307893098581796493354249719979975347147881226402617470257071344004495749923421476372560475328519464577353329819671776253224920524007444797313145453009443218964863740238803963691312815526469666188804702055611675030070246076508846773809686966508348036006547152752448089536975629747295351583523972853068940052033851670583963525727536810047952511808578146742055845897612801245985784638873860081258061531592289396414475226775934928588527237697983588429809707956040220498602977138082835286181907927938078023612278577192164982183112757326119554017085440446113885351268166551047422952235604263829529685213541124993019343866087389914562134325786744200338541197195724646523562281189066210977664907820264953171693392434135107217686846892335616838294743474184912896\n", + "4718221476470157593802640286335061721355073286802200670254615786197163592986708499439959950694295762452805234940514142688008991499846842952745120950657038929154706659639343552506449841048014889594626290906018886437929727480477607927382625631052939332377609404111223350060140492153017693547619373933016696072013094305504896179073951259494590703167047945706137880104067703341167927051455073620095905023617156293484111691795225602491971569277747720162516123063184578792828950453551869857177054475395967176859619415912080440997205954276165670572363815855876156047224557154384329964366225514652239108034170880892227770702536333102094845904471208527659059370427082249986038687732174779829124268651573488400677082394391449293047124562378132421955329815640529906343386784868270214435373693784671233676589486948369825792\n", + "9436442952940315187605280572670123442710146573604401340509231572394327185973416998879919901388591524905610469881028285376017982999693685905490241901314077858309413319278687105012899682096029779189252581812037772875859454960955215854765251262105878664755218808222446700120280984306035387095238747866033392144026188611009792358147902518989181406334095891412275760208135406682335854102910147240191810047234312586968223383590451204983943138555495440325032246126369157585657900907103739714354108950791934353719238831824160881994411908552331341144727631711752312094449114308768659928732451029304478216068341761784455541405072666204189691808942417055318118740854164499972077375464349559658248537303146976801354164788782898586094249124756264843910659631281059812686773569736540428870747387569342467353178973896739651584\n", + "18872885905880630375210561145340246885420293147208802681018463144788654371946833997759839802777183049811220939762056570752035965999387371810980483802628155716618826638557374210025799364192059558378505163624075545751718909921910431709530502524211757329510437616444893400240561968612070774190477495732066784288052377222019584716295805037978362812668191782824551520416270813364671708205820294480383620094468625173936446767180902409967886277110990880650064492252738315171315801814207479428708217901583868707438477663648321763988823817104662682289455263423504624188898228617537319857464902058608956432136683523568911082810145332408379383617884834110636237481708328999944154750928699119316497074606293953602708329577565797172188498249512529687821319262562119625373547139473080857741494775138684934706357947793479303168\n", + "37745771811761260750421122290680493770840586294417605362036926289577308743893667995519679605554366099622441879524113141504071931998774743621960967605256311433237653277114748420051598728384119116757010327248151091503437819843820863419061005048423514659020875232889786800481123937224141548380954991464133568576104754444039169432591610075956725625336383565649103040832541626729343416411640588960767240188937250347872893534361804819935772554221981761300128984505476630342631603628414958857416435803167737414876955327296643527977647634209325364578910526847009248377796457235074639714929804117217912864273367047137822165620290664816758767235769668221272474963416657999888309501857398238632994149212587907205416659155131594344376996499025059375642638525124239250747094278946161715482989550277369869412715895586958606336\n", + "75491543623522521500842244581360987541681172588835210724073852579154617487787335991039359211108732199244883759048226283008143863997549487243921935210512622866475306554229496840103197456768238233514020654496302183006875639687641726838122010096847029318041750465779573600962247874448283096761909982928267137152209508888078338865183220151913451250672767131298206081665083253458686832823281177921534480377874500695745787068723609639871545108443963522600257969010953260685263207256829917714832871606335474829753910654593287055955295268418650729157821053694018496755592914470149279429859608234435825728546734094275644331240581329633517534471539336442544949926833315999776619003714796477265988298425175814410833318310263188688753992998050118751285277050248478501494188557892323430965979100554739738825431791173917212672\n", + "150983087247045043001684489162721975083362345177670421448147705158309234975574671982078718422217464398489767518096452566016287727995098974487843870421025245732950613108458993680206394913536476467028041308992604366013751279375283453676244020193694058636083500931559147201924495748896566193523819965856534274304419017776156677730366440303826902501345534262596412163330166506917373665646562355843068960755749001391491574137447219279743090216887927045200515938021906521370526414513659835429665743212670949659507821309186574111910590536837301458315642107388036993511185828940298558859719216468871651457093468188551288662481162659267035068943078672885089899853666631999553238007429592954531976596850351628821666636620526377377507985996100237502570554100496957002988377115784646861931958201109479477650863582347834425344\n", + "301966174494090086003368978325443950166724690355340842896295410316618469951149343964157436844434928796979535036192905132032575455990197948975687740842050491465901226216917987360412789827072952934056082617985208732027502558750566907352488040387388117272167001863118294403848991497793132387047639931713068548608838035552313355460732880607653805002691068525192824326660333013834747331293124711686137921511498002782983148274894438559486180433775854090401031876043813042741052829027319670859331486425341899319015642618373148223821181073674602916631284214776073987022371657880597117719438432937743302914186936377102577324962325318534070137886157345770179799707333263999106476014859185909063953193700703257643333273241052754755015971992200475005141108200993914005976754231569293723863916402218958955301727164695668850688\n", + "603932348988180172006737956650887900333449380710681685792590820633236939902298687928314873688869857593959070072385810264065150911980395897951375481684100982931802452433835974720825579654145905868112165235970417464055005117501133814704976080774776234544334003726236588807697982995586264774095279863426137097217676071104626710921465761215307610005382137050385648653320666027669494662586249423372275843022996005565966296549788877118972360867551708180802063752087626085482105658054639341718662972850683798638031285236746296447642362147349205833262568429552147974044743315761194235438876865875486605828373872754205154649924650637068140275772314691540359599414666527998212952029718371818127906387401406515286666546482105509510031943984400950010282216401987828011953508463138587447727832804437917910603454329391337701376\n", + "1207864697976360344013475913301775800666898761421363371585181641266473879804597375856629747377739715187918140144771620528130301823960791795902750963368201965863604904867671949441651159308291811736224330471940834928110010235002267629409952161549552469088668007452473177615395965991172529548190559726852274194435352142209253421842931522430615220010764274100771297306641332055338989325172498846744551686045992011131932593099577754237944721735103416361604127504175252170964211316109278683437325945701367597276062570473492592895284724294698411666525136859104295948089486631522388470877753731750973211656747745508410309299849301274136280551544629383080719198829333055996425904059436743636255812774802813030573333092964211019020063887968801900020564432803975656023907016926277174895455665608875835821206908658782675402752\n", + "2415729395952720688026951826603551601333797522842726743170363282532947759609194751713259494755479430375836280289543241056260603647921583591805501926736403931727209809735343898883302318616583623472448660943881669856220020470004535258819904323099104938177336014904946355230791931982345059096381119453704548388870704284418506843685863044861230440021528548201542594613282664110677978650344997693489103372091984022263865186199155508475889443470206832723208255008350504341928422632218557366874651891402735194552125140946985185790569448589396823333050273718208591896178973263044776941755507463501946423313495491016820618599698602548272561103089258766161438397658666111992851808118873487272511625549605626061146666185928422038040127775937603800041128865607951312047814033852554349790911331217751671642413817317565350805504\n", + "4831458791905441376053903653207103202667595045685453486340726565065895519218389503426518989510958860751672560579086482112521207295843167183611003853472807863454419619470687797766604637233167246944897321887763339712440040940009070517639808646198209876354672029809892710461583863964690118192762238907409096777741408568837013687371726089722460880043057096403085189226565328221355957300689995386978206744183968044527730372398311016951778886940413665446416510016701008683856845264437114733749303782805470389104250281893970371581138897178793646666100547436417183792357946526089553883511014927003892846626990982033641237199397205096545122206178517532322876795317332223985703616237746974545023251099211252122293332371856844076080255551875207600082257731215902624095628067705108699581822662435503343284827634635130701611008\n", + "9662917583810882752107807306414206405335190091370906972681453130131791038436779006853037979021917721503345121158172964225042414591686334367222007706945615726908839238941375595533209274466334493889794643775526679424880081880018141035279617292396419752709344059619785420923167727929380236385524477814818193555482817137674027374743452179444921760086114192806170378453130656442711914601379990773956413488367936089055460744796622033903557773880827330892833020033402017367713690528874229467498607565610940778208500563787940743162277794357587293332201094872834367584715893052179107767022029854007785693253981964067282474398794410193090244412357035064645753590634664447971407232475493949090046502198422504244586664743713688152160511103750415200164515462431805248191256135410217399163645324871006686569655269270261403222016\n", + "19325835167621765504215614612828412810670380182741813945362906260263582076873558013706075958043835443006690242316345928450084829183372668734444015413891231453817678477882751191066418548932668987779589287551053358849760163760036282070559234584792839505418688119239570841846335455858760472771048955629636387110965634275348054749486904358889843520172228385612340756906261312885423829202759981547912826976735872178110921489593244067807115547761654661785666040066804034735427381057748458934997215131221881556417001127575881486324555588715174586664402189745668735169431786104358215534044059708015571386507963928134564948797588820386180488824714070129291507181269328895942814464950987898180093004396845008489173329487427376304321022207500830400329030924863610496382512270820434798327290649742013373139310538540522806444032\n", + "38651670335243531008431229225656825621340760365483627890725812520527164153747116027412151916087670886013380484632691856900169658366745337468888030827782462907635356955765502382132837097865337975559178575102106717699520327520072564141118469169585679010837376238479141683692670911717520945542097911259272774221931268550696109498973808717779687040344456771224681513812522625770847658405519963095825653953471744356221842979186488135614231095523309323571332080133608069470854762115496917869994430262443763112834002255151762972649111177430349173328804379491337470338863572208716431068088119416031142773015927856269129897595177640772360977649428140258583014362538657791885628929901975796360186008793690016978346658974854752608642044415001660800658061849727220992765024541640869596654581299484026746278621077081045612888064\n", + "77303340670487062016862458451313651242681520730967255781451625041054328307494232054824303832175341772026760969265383713800339316733490674937776061655564925815270713911531004764265674195730675951118357150204213435399040655040145128282236938339171358021674752476958283367385341823435041891084195822518545548443862537101392218997947617435559374080688913542449363027625045251541695316811039926191651307906943488712443685958372976271228462191046618647142664160267216138941709524230993835739988860524887526225668004510303525945298222354860698346657608758982674940677727144417432862136176238832062285546031855712538259795190355281544721955298856280517166028725077315583771257859803951592720372017587380033956693317949709505217284088830003321601316123699454441985530049083281739193309162598968053492557242154162091225776128\n", + "154606681340974124033724916902627302485363041461934511562903250082108656614988464109648607664350683544053521938530767427600678633466981349875552123311129851630541427823062009528531348391461351902236714300408426870798081310080290256564473876678342716043349504953916566734770683646870083782168391645037091096887725074202784437995895234871118748161377827084898726055250090503083390633622079852383302615813886977424887371916745952542456924382093237294285328320534432277883419048461987671479977721049775052451336009020607051890596444709721396693315217517965349881355454288834865724272352477664124571092063711425076519590380710563089443910597712561034332057450154631167542515719607903185440744035174760067913386635899419010434568177660006643202632247398908883971060098166563478386618325197936106985114484308324182451552256\n", + "309213362681948248067449833805254604970726082923869023125806500164217313229976928219297215328701367088107043877061534855201357266933962699751104246622259703261082855646124019057062696782922703804473428600816853741596162620160580513128947753356685432086699009907833133469541367293740167564336783290074182193775450148405568875991790469742237496322755654169797452110500181006166781267244159704766605231627773954849774743833491905084913848764186474588570656641068864555766838096923975342959955442099550104902672018041214103781192889419442793386630435035930699762710908577669731448544704955328249142184127422850153039180761421126178887821195425122068664114900309262335085031439215806370881488070349520135826773271798838020869136355320013286405264494797817767942120196333126956773236650395872213970228968616648364903104512\n", + "618426725363896496134899667610509209941452165847738046251613000328434626459953856438594430657402734176214087754123069710402714533867925399502208493244519406522165711292248038114125393565845407608946857201633707483192325240321161026257895506713370864173398019815666266939082734587480335128673566580148364387550900296811137751983580939484474992645511308339594904221000362012333562534488319409533210463255547909699549487666983810169827697528372949177141313282137729111533676193847950685919910884199100209805344036082428207562385778838885586773260870071861399525421817155339462897089409910656498284368254845700306078361522842252357775642390850244137328229800618524670170062878431612741762976140699040271653546543597676041738272710640026572810528989595635535884240392666253913546473300791744427940457937233296729806209024\n", + "1236853450727792992269799335221018419882904331695476092503226000656869252919907712877188861314805468352428175508246139420805429067735850799004416986489038813044331422584496076228250787131690815217893714403267414966384650480642322052515791013426741728346796039631332533878165469174960670257347133160296728775101800593622275503967161878968949985291022616679189808442000724024667125068976638819066420926511095819399098975333967620339655395056745898354282626564275458223067352387695901371839821768398200419610688072164856415124771557677771173546521740143722799050843634310678925794178819821312996568736509691400612156723045684504715551284781700488274656459601237049340340125756863225483525952281398080543307093087195352083476545421280053145621057979191271071768480785332507827092946601583488855880915874466593459612418048\n", + "2473706901455585984539598670442036839765808663390952185006452001313738505839815425754377722629610936704856351016492278841610858135471701598008833972978077626088662845168992152456501574263381630435787428806534829932769300961284644105031582026853483456693592079262665067756330938349921340514694266320593457550203601187244551007934323757937899970582045233358379616884001448049334250137953277638132841853022191638798197950667935240679310790113491796708565253128550916446134704775391802743679643536796400839221376144329712830249543115355542347093043480287445598101687268621357851588357639642625993137473019382801224313446091369009431102569563400976549312919202474098680680251513726450967051904562796161086614186174390704166953090842560106291242115958382542143536961570665015654185893203166977711761831748933186919224836096\n", + "4947413802911171969079197340884073679531617326781904370012904002627477011679630851508755445259221873409712702032984557683221716270943403196017667945956155252177325690337984304913003148526763260871574857613069659865538601922569288210063164053706966913387184158525330135512661876699842681029388532641186915100407202374489102015868647515875799941164090466716759233768002896098668500275906555276265683706044383277596395901335870481358621580226983593417130506257101832892269409550783605487359287073592801678442752288659425660499086230711084694186086960574891196203374537242715703176715279285251986274946038765602448626892182738018862205139126801953098625838404948197361360503027452901934103809125592322173228372348781408333906181685120212582484231916765084287073923141330031308371786406333955423523663497866373838449672192\n", + "9894827605822343938158394681768147359063234653563808740025808005254954023359261703017510890518443746819425404065969115366443432541886806392035335891912310504354651380675968609826006297053526521743149715226139319731077203845138576420126328107413933826774368317050660271025323753399685362058777065282373830200814404748978204031737295031751599882328180933433518467536005792197337000551813110552531367412088766555192791802671740962717243160453967186834261012514203665784538819101567210974718574147185603356885504577318851320998172461422169388372173921149782392406749074485431406353430558570503972549892077531204897253784365476037724410278253603906197251676809896394722721006054905803868207618251184644346456744697562816667812363370240425164968463833530168574147846282660062616743572812667910847047326995732747676899344384\n", + "19789655211644687876316789363536294718126469307127617480051616010509908046718523406035021781036887493638850808131938230732886865083773612784070671783824621008709302761351937219652012594107053043486299430452278639462154407690277152840252656214827867653548736634101320542050647506799370724117554130564747660401628809497956408063474590063503199764656361866867036935072011584394674001103626221105062734824177533110385583605343481925434486320907934373668522025028407331569077638203134421949437148294371206713771009154637702641996344922844338776744347842299564784813498148970862812706861117141007945099784155062409794507568730952075448820556507207812394503353619792789445442012109811607736415236502369288692913489395125633335624726740480850329936927667060337148295692565320125233487145625335821694094653991465495353798688768\n", + "39579310423289375752633578727072589436252938614255234960103232021019816093437046812070043562073774987277701616263876461465773730167547225568141343567649242017418605522703874439304025188214106086972598860904557278924308815380554305680505312429655735307097473268202641084101295013598741448235108261129495320803257618995912816126949180127006399529312723733734073870144023168789348002207252442210125469648355066220771167210686963850868972641815868747337044050056814663138155276406268843898874296588742413427542018309275405283992689845688677553488695684599129569626996297941725625413722234282015890199568310124819589015137461904150897641113014415624789006707239585578890884024219623215472830473004738577385826978790251266671249453480961700659873855334120674296591385130640250466974291250671643388189307982930990707597377536\n", + "79158620846578751505267157454145178872505877228510469920206464042039632186874093624140087124147549974555403232527752922931547460335094451136282687135298484034837211045407748878608050376428212173945197721809114557848617630761108611361010624859311470614194946536405282168202590027197482896470216522258990641606515237991825632253898360254012799058625447467468147740288046337578696004414504884420250939296710132441542334421373927701737945283631737494674088100113629326276310552812537687797748593177484826855084036618550810567985379691377355106977391369198259139253992595883451250827444468564031780399136620249639178030274923808301795282226028831249578013414479171157781768048439246430945660946009477154771653957580502533342498906961923401319747710668241348593182770261280500933948582501343286776378615965861981415194755072\n", + "158317241693157503010534314908290357745011754457020939840412928084079264373748187248280174248295099949110806465055505845863094920670188902272565374270596968069674422090815497757216100752856424347890395443618229115697235261522217222722021249718622941228389893072810564336405180054394965792940433044517981283213030475983651264507796720508025598117250894934936295480576092675157392008829009768840501878593420264883084668842747855403475890567263474989348176200227258652552621105625075375595497186354969653710168073237101621135970759382754710213954782738396518278507985191766902501654888937128063560798273240499278356060549847616603590564452057662499156026828958342315563536096878492861891321892018954309543307915161005066684997813923846802639495421336482697186365540522561001867897165002686573552757231931723962830389510144\n", + "316634483386315006021068629816580715490023508914041879680825856168158528747496374496560348496590199898221612930111011691726189841340377804545130748541193936139348844181630995514432201505712848695780790887236458231394470523044434445444042499437245882456779786145621128672810360108789931585880866089035962566426060951967302529015593441016051196234501789869872590961152185350314784017658019537681003757186840529766169337685495710806951781134526949978696352400454517305105242211250150751190994372709939307420336146474203242271941518765509420427909565476793036557015970383533805003309777874256127121596546480998556712121099695233207181128904115324998312053657916684631127072193756985723782643784037908619086615830322010133369995627847693605278990842672965394372731081045122003735794330005373147105514463863447925660779020288\n", + "633268966772630012042137259633161430980047017828083759361651712336317057494992748993120696993180399796443225860222023383452379682680755609090261497082387872278697688363261991028864403011425697391561581774472916462788941046088868890888084998874491764913559572291242257345620720217579863171761732178071925132852121903934605058031186882032102392469003579739745181922304370700629568035316039075362007514373681059532338675370991421613903562269053899957392704800909034610210484422500301502381988745419878614840672292948406484543883037531018840855819130953586073114031940767067610006619555748512254243193092961997113424242199390466414362257808230649996624107315833369262254144387513971447565287568075817238173231660644020266739991255695387210557981685345930788745462162090244007471588660010746294211028927726895851321558040576\n", + "1266537933545260024084274519266322861960094035656167518723303424672634114989985497986241393986360799592886451720444046766904759365361511218180522994164775744557395376726523982057728806022851394783123163548945832925577882092177737781776169997748983529827119144582484514691241440435159726343523464356143850265704243807869210116062373764064204784938007159479490363844608741401259136070632078150724015028747362119064677350741982843227807124538107799914785409601818069220420968845000603004763977490839757229681344585896812969087766075062037681711638261907172146228063881534135220013239111497024508486386185923994226848484398780932828724515616461299993248214631666738524508288775027942895130575136151634476346463321288040533479982511390774421115963370691861577490924324180488014943177320021492588422057855453791702643116081152\n", + "2533075867090520048168549038532645723920188071312335037446606849345268229979970995972482787972721599185772903440888093533809518730723022436361045988329551489114790753453047964115457612045702789566246327097891665851155764184355475563552339995497967059654238289164969029382482880870319452687046928712287700531408487615738420232124747528128409569876014318958980727689217482802518272141264156301448030057494724238129354701483965686455614249076215599829570819203636138440841937690001206009527954981679514459362689171793625938175532150124075363423276523814344292456127763068270440026478222994049016972772371847988453696968797561865657449031232922599986496429263333477049016577550055885790261150272303268952692926642576081066959965022781548842231926741383723154981848648360976029886354640042985176844115710907583405286232162304\n", + "5066151734181040096337098077065291447840376142624670074893213698690536459959941991944965575945443198371545806881776187067619037461446044872722091976659102978229581506906095928230915224091405579132492654195783331702311528368710951127104679990995934119308476578329938058764965761740638905374093857424575401062816975231476840464249495056256819139752028637917961455378434965605036544282528312602896060114989448476258709402967931372911228498152431199659141638407272276881683875380002412019055909963359028918725378343587251876351064300248150726846553047628688584912255526136540880052956445988098033945544743695976907393937595123731314898062465845199972992858526666954098033155100111771580522300544606537905385853285152162133919930045563097684463853482767446309963697296721952059772709280085970353688231421815166810572464324608\n", + "10132303468362080192674196154130582895680752285249340149786427397381072919919883983889931151890886396743091613763552374135238074922892089745444183953318205956459163013812191856461830448182811158264985308391566663404623056737421902254209359981991868238616953156659876117529931523481277810748187714849150802125633950462953680928498990112513638279504057275835922910756869931210073088565056625205792120229978896952517418805935862745822456996304862399318283276814544553763367750760004824038111819926718057837450756687174503752702128600496301453693106095257377169824511052273081760105912891976196067891089487391953814787875190247462629796124931690399945985717053333908196066310200223543161044601089213075810771706570304324267839860091126195368927706965534892619927394593443904119545418560171940707376462843630333621144928649216\n", + "20264606936724160385348392308261165791361504570498680299572854794762145839839767967779862303781772793486183227527104748270476149845784179490888367906636411912918326027624383712923660896365622316529970616783133326809246113474843804508418719963983736477233906313319752235059863046962555621496375429698301604251267900925907361856997980225027276559008114551671845821513739862420146177130113250411584240459957793905034837611871725491644913992609724798636566553629089107526735501520009648076223639853436115674901513374349007505404257200992602907386212190514754339649022104546163520211825783952392135782178974783907629575750380494925259592249863380799891971434106667816392132620400447086322089202178426151621543413140608648535679720182252390737855413931069785239854789186887808239090837120343881414752925687260667242289857298432\n", + "40529213873448320770696784616522331582723009140997360599145709589524291679679535935559724607563545586972366455054209496540952299691568358981776735813272823825836652055248767425847321792731244633059941233566266653618492226949687609016837439927967472954467812626639504470119726093925111242992750859396603208502535801851814723713995960450054553118016229103343691643027479724840292354260226500823168480919915587810069675223743450983289827985219449597273133107258178215053471003040019296152447279706872231349803026748698015010808514401985205814772424381029508679298044209092327040423651567904784271564357949567815259151500760989850519184499726761599783942868213335632784265240800894172644178404356852303243086826281217297071359440364504781475710827862139570479709578373775616478181674240687762829505851374521334484579714596864\n", + "81058427746896641541393569233044663165446018281994721198291419179048583359359071871119449215127091173944732910108418993081904599383136717963553471626545647651673304110497534851694643585462489266119882467132533307236984453899375218033674879855934945908935625253279008940239452187850222485985501718793206417005071603703629447427991920900109106236032458206687383286054959449680584708520453001646336961839831175620139350447486901966579655970438899194546266214516356430106942006080038592304894559413744462699606053497396030021617028803970411629544848762059017358596088418184654080847303135809568543128715899135630518303001521979701038368999453523199567885736426671265568530481601788345288356808713704606486173652562434594142718880729009562951421655724279140959419156747551232956363348481375525659011702749042668969159429193728\n", + "162116855493793283082787138466089326330892036563989442396582838358097166718718143742238898430254182347889465820216837986163809198766273435927106943253091295303346608220995069703389287170924978532239764934265066614473968907798750436067349759711869891817871250506558017880478904375700444971971003437586412834010143207407258894855983841800218212472064916413374766572109918899361169417040906003292673923679662351240278700894973803933159311940877798389092532429032712860213884012160077184609789118827488925399212106994792060043234057607940823259089697524118034717192176836369308161694606271619137086257431798271261036606003043959402076737998907046399135771472853342531137060963203576690576713617427409212972347305124869188285437761458019125902843311448558281918838313495102465912726696962751051318023405498085337938318858387456\n", + "324233710987586566165574276932178652661784073127978884793165676716194333437436287484477796860508364695778931640433675972327618397532546871854213886506182590606693216441990139406778574341849957064479529868530133228947937815597500872134699519423739783635742501013116035760957808751400889943942006875172825668020286414814517789711967683600436424944129832826749533144219837798722338834081812006585347847359324702480557401789947607866318623881755596778185064858065425720427768024320154369219578237654977850798424213989584120086468115215881646518179395048236069434384353672738616323389212543238274172514863596542522073212006087918804153475997814092798271542945706685062274121926407153381153427234854818425944694610249738376570875522916038251805686622897116563837676626990204931825453393925502102636046810996170675876637716774912\n", + "648467421975173132331148553864357305323568146255957769586331353432388666874872574968955593721016729391557863280867351944655236795065093743708427773012365181213386432883980278813557148683699914128959059737060266457895875631195001744269399038847479567271485002026232071521915617502801779887884013750345651336040572829629035579423935367200872849888259665653499066288439675597444677668163624013170695694718649404961114803579895215732637247763511193556370129716130851440855536048640308738439156475309955701596848427979168240172936230431763293036358790096472138868768707345477232646778425086476548345029727193085044146424012175837608306951995628185596543085891413370124548243852814306762306854469709636851889389220499476753141751045832076503611373245794233127675353253980409863650906787851004205272093621992341351753275433549824\n", + "1296934843950346264662297107728714610647136292511915539172662706864777333749745149937911187442033458783115726561734703889310473590130187487416855546024730362426772865767960557627114297367399828257918119474120532915791751262390003488538798077694959134542970004052464143043831235005603559775768027500691302672081145659258071158847870734401745699776519331306998132576879351194889355336327248026341391389437298809922229607159790431465274495527022387112740259432261702881711072097280617476878312950619911403193696855958336480345872460863526586072717580192944277737537414690954465293556850172953096690059454386170088292848024351675216613903991256371193086171782826740249096487705628613524613708939419273703778778440998953506283502091664153007222746491588466255350706507960819727301813575702008410544187243984682703506550867099648\n", + "2593869687900692529324594215457429221294272585023831078345325413729554667499490299875822374884066917566231453123469407778620947180260374974833711092049460724853545731535921115254228594734799656515836238948241065831583502524780006977077596155389918269085940008104928286087662470011207119551536055001382605344162291318516142317695741468803491399553038662613996265153758702389778710672654496052682782778874597619844459214319580862930548991054044774225480518864523405763422144194561234953756625901239822806387393711916672960691744921727053172145435160385888555475074829381908930587113700345906193380118908772340176585696048703350433227807982512742386172343565653480498192975411257227049227417878838547407557556881997907012567004183328306014445492983176932510701413015921639454603627151404016821088374487969365407013101734199296\n", + "5187739375801385058649188430914858442588545170047662156690650827459109334998980599751644749768133835132462906246938815557241894360520749949667422184098921449707091463071842230508457189469599313031672477896482131663167005049560013954155192310779836538171880016209856572175324940022414239103072110002765210688324582637032284635391482937606982799106077325227992530307517404779557421345308992105365565557749195239688918428639161725861097982108089548450961037729046811526844288389122469907513251802479645612774787423833345921383489843454106344290870320771777110950149658763817861174227400691812386760237817544680353171392097406700866455615965025484772344687131306960996385950822514454098454835757677094815115113763995814025134008366656612028890985966353865021402826031843278909207254302808033642176748975938730814026203468398592\n", + "10375478751602770117298376861829716885177090340095324313381301654918218669997961199503289499536267670264925812493877631114483788721041499899334844368197842899414182926143684461016914378939198626063344955792964263326334010099120027908310384621559673076343760032419713144350649880044828478206144220005530421376649165274064569270782965875213965598212154650455985060615034809559114842690617984210731131115498390479377836857278323451722195964216179096901922075458093623053688576778244939815026503604959291225549574847666691842766979686908212688581740641543554221900299317527635722348454801383624773520475635089360706342784194813401732911231930050969544689374262613921992771901645028908196909671515354189630230227527991628050268016733313224057781971932707730042805652063686557818414508605616067284353497951877461628052406936797184\n", + "20750957503205540234596753723659433770354180680190648626762603309836437339995922399006578999072535340529851624987755262228967577442082999798669688736395685798828365852287368922033828757878397252126689911585928526652668020198240055816620769243119346152687520064839426288701299760089656956412288440011060842753298330548129138541565931750427931196424309300911970121230069619118229685381235968421462262230996780958755673714556646903444391928432358193803844150916187246107377153556489879630053007209918582451099149695333383685533959373816425377163481283087108443800598635055271444696909602767249547040951270178721412685568389626803465822463860101939089378748525227843985543803290057816393819343030708379260460455055983256100536033466626448115563943865415460085611304127373115636829017211232134568706995903754923256104813873594368\n", + "41501915006411080469193507447318867540708361360381297253525206619672874679991844798013157998145070681059703249975510524457935154884165999597339377472791371597656731704574737844067657515756794504253379823171857053305336040396480111633241538486238692305375040129678852577402599520179313912824576880022121685506596661096258277083131863500855862392848618601823940242460139238236459370762471936842924524461993561917511347429113293806888783856864716387607688301832374492214754307112979759260106014419837164902198299390666767371067918747632850754326962566174216887601197270110542889393819205534499094081902540357442825371136779253606931644927720203878178757497050455687971087606580115632787638686061416758520920910111966512201072066933252896231127887730830920171222608254746231273658034422464269137413991807509846512209627747188736\n", + "83003830012822160938387014894637735081416722720762594507050413239345749359983689596026315996290141362119406499951021048915870309768331999194678754945582743195313463409149475688135315031513589008506759646343714106610672080792960223266483076972477384610750080259357705154805199040358627825649153760044243371013193322192516554166263727001711724785697237203647880484920278476472918741524943873685849048923987123835022694858226587613777567713729432775215376603664748984429508614225959518520212028839674329804396598781333534742135837495265701508653925132348433775202394540221085778787638411068998188163805080714885650742273558507213863289855440407756357514994100911375942175213160231265575277372122833517041841820223933024402144133866505792462255775461661840342445216509492462547316068844928538274827983615019693024419255494377472\n", + "166007660025644321876774029789275470162833445441525189014100826478691498719967379192052631992580282724238812999902042097831740619536663998389357509891165486390626926818298951376270630063027178017013519292687428213221344161585920446532966153944954769221500160518715410309610398080717255651298307520088486742026386644385033108332527454003423449571394474407295760969840556952945837483049887747371698097847974247670045389716453175227555135427458865550430753207329497968859017228451919037040424057679348659608793197562667069484271674990531403017307850264696867550404789080442171557575276822137996376327610161429771301484547117014427726579710880815512715029988201822751884350426320462531150554744245667034083683640447866048804288267733011584924511550923323680684890433018984925094632137689857076549655967230039386048838510988754944\n", + "332015320051288643753548059578550940325666890883050378028201652957382997439934758384105263985160565448477625999804084195663481239073327996778715019782330972781253853636597902752541260126054356034027038585374856426442688323171840893065932307889909538443000321037430820619220796161434511302596615040176973484052773288770066216665054908006846899142788948814591521939681113905891674966099775494743396195695948495340090779432906350455110270854917731100861506414658995937718034456903838074080848115358697319217586395125334138968543349981062806034615700529393735100809578160884343115150553644275992752655220322859542602969094234028855453159421761631025430059976403645503768700852640925062301109488491334068167367280895732097608576535466023169849023101846647361369780866037969850189264275379714153099311934460078772097677021977509888\n", + "664030640102577287507096119157101880651333781766100756056403305914765994879869516768210527970321130896955251999608168391326962478146655993557430039564661945562507707273195805505082520252108712068054077170749712852885376646343681786131864615779819076886000642074861641238441592322869022605193230080353946968105546577540132433330109816013693798285577897629183043879362227811783349932199550989486792391391896990680181558865812700910220541709835462201723012829317991875436068913807676148161696230717394638435172790250668277937086699962125612069231401058787470201619156321768686230301107288551985505310440645719085205938188468057710906318843523262050860119952807291007537401705281850124602218976982668136334734561791464195217153070932046339698046203693294722739561732075939700378528550759428306198623868920157544195354043955019776\n", + "1328061280205154575014192238314203761302667563532201512112806611829531989759739033536421055940642261793910503999216336782653924956293311987114860079129323891125015414546391611010165040504217424136108154341499425705770753292687363572263729231559638153772001284149723282476883184645738045210386460160707893936211093155080264866660219632027387596571155795258366087758724455623566699864399101978973584782783793981360363117731625401820441083419670924403446025658635983750872137827615352296323392461434789276870345580501336555874173399924251224138462802117574940403238312643537372460602214577103971010620881291438170411876376936115421812637687046524101720239905614582015074803410563700249204437953965336272669469123582928390434306141864092679396092407386589445479123464151879400757057101518856612397247737840315088390708087910039552\n", + "2656122560410309150028384476628407522605335127064403024225613223659063979519478067072842111881284523587821007998432673565307849912586623974229720158258647782250030829092783222020330081008434848272216308682998851411541506585374727144527458463119276307544002568299446564953766369291476090420772920321415787872422186310160529733320439264054775193142311590516732175517448911247133399728798203957947169565567587962720726235463250803640882166839341848806892051317271967501744275655230704592646784922869578553740691161002673111748346799848502448276925604235149880806476625287074744921204429154207942021241762582876340823752753872230843625275374093048203440479811229164030149606821127400498408875907930672545338938247165856780868612283728185358792184814773178890958246928303758801514114203037713224794495475680630176781416175820079104\n", + "5312245120820618300056768953256815045210670254128806048451226447318127959038956134145684223762569047175642015996865347130615699825173247948459440316517295564500061658185566444040660162016869696544432617365997702823083013170749454289054916926238552615088005136598893129907532738582952180841545840642831575744844372620321059466640878528109550386284623181033464351034897822494266799457596407915894339131135175925441452470926501607281764333678683697613784102634543935003488551310461409185293569845739157107481382322005346223496693599697004896553851208470299761612953250574149489842408858308415884042483525165752681647505507744461687250550748186096406880959622458328060299213642254800996817751815861345090677876494331713561737224567456370717584369629546357781916493856607517603028228406075426449588990951361260353562832351640158208\n", + "10624490241641236600113537906513630090421340508257612096902452894636255918077912268291368447525138094351284031993730694261231399650346495896918880633034591129000123316371132888081320324033739393088865234731995405646166026341498908578109833852477105230176010273197786259815065477165904361683091681285663151489688745240642118933281757056219100772569246362066928702069795644988533598915192815831788678262270351850882904941853003214563528667357367395227568205269087870006977102620922818370587139691478314214962764644010692446993387199394009793107702416940599523225906501148298979684817716616831768084967050331505363295011015488923374501101496372192813761919244916656120598427284509601993635503631722690181355752988663427123474449134912741435168739259092715563832987713215035206056456812150852899177981902722520707125664703280316416\n", + "21248980483282473200227075813027260180842681016515224193804905789272511836155824536582736895050276188702568063987461388522462799300692991793837761266069182258000246632742265776162640648067478786177730469463990811292332052682997817156219667704954210460352020546395572519630130954331808723366183362571326302979377490481284237866563514112438201545138492724133857404139591289977067197830385631663577356524540703701765809883706006429127057334714734790455136410538175740013954205241845636741174279382956628429925529288021384893986774398788019586215404833881199046451813002296597959369635433233663536169934100663010726590022030977846749002202992744385627523838489833312241196854569019203987271007263445380362711505977326854246948898269825482870337478518185431127665975426430070412112913624301705798355963805445041414251329406560632832\n", + "42497960966564946400454151626054520361685362033030448387609811578545023672311649073165473790100552377405136127974922777044925598601385983587675522532138364516000493265484531552325281296134957572355460938927981622584664105365995634312439335409908420920704041092791145039260261908663617446732366725142652605958754980962568475733127028224876403090276985448267714808279182579954134395660771263327154713049081407403531619767412012858254114669429469580910272821076351480027908410483691273482348558765913256859851058576042769787973548797576039172430809667762398092903626004593195918739270866467327072339868201326021453180044061955693498004405985488771255047676979666624482393709138038407974542014526890760725423011954653708493897796539650965740674957036370862255331950852860140824225827248603411596711927610890082828502658813121265664\n", + "84995921933129892800908303252109040723370724066060896775219623157090047344623298146330947580201104754810272255949845554089851197202771967175351045064276729032000986530969063104650562592269915144710921877855963245169328210731991268624878670819816841841408082185582290078520523817327234893464733450285305211917509961925136951466254056449752806180553970896535429616558365159908268791321542526654309426098162814807063239534824025716508229338858939161820545642152702960055816820967382546964697117531826513719702117152085539575947097595152078344861619335524796185807252009186391837478541732934654144679736402652042906360088123911386996008811970977542510095353959333248964787418276076815949084029053781521450846023909307416987795593079301931481349914072741724510663901705720281648451654497206823193423855221780165657005317626242531328\n", + "169991843866259785601816606504218081446741448132121793550439246314180094689246596292661895160402209509620544511899691108179702394405543934350702090128553458064001973061938126209301125184539830289421843755711926490338656421463982537249757341639633683682816164371164580157041047634654469786929466900570610423835019923850273902932508112899505612361107941793070859233116730319816537582643085053308618852196325629614126479069648051433016458677717878323641091284305405920111633641934765093929394235063653027439404234304171079151894195190304156689723238671049592371614504018372783674957083465869308289359472805304085812720176247822773992017623941955085020190707918666497929574836552153631898168058107563042901692047818614833975591186158603862962699828145483449021327803411440563296903308994413646386847710443560331314010635252485062656\n", + "339983687732519571203633213008436162893482896264243587100878492628360189378493192585323790320804419019241089023799382216359404788811087868701404180257106916128003946123876252418602250369079660578843687511423852980677312842927965074499514683279267367365632328742329160314082095269308939573858933801141220847670039847700547805865016225799011224722215883586141718466233460639633075165286170106617237704392651259228252958139296102866032917355435756647282182568610811840223267283869530187858788470127306054878808468608342158303788390380608313379446477342099184743229008036745567349914166931738616578718945610608171625440352495645547984035247883910170040381415837332995859149673104307263796336116215126085803384095637229667951182372317207725925399656290966898042655606822881126593806617988827292773695420887120662628021270504970125312\n", + "679967375465039142407266426016872325786965792528487174201756985256720378756986385170647580641608838038482178047598764432718809577622175737402808360514213832256007892247752504837204500738159321157687375022847705961354625685855930148999029366558534734731264657484658320628164190538617879147717867602282441695340079695401095611730032451598022449444431767172283436932466921279266150330572340213234475408785302518456505916278592205732065834710871513294564365137221623680446534567739060375717576940254612109757616937216684316607576780761216626758892954684198369486458016073491134699828333863477233157437891221216343250880704991291095968070495767820340080762831674665991718299346208614527592672232430252171606768191274459335902364744634415451850799312581933796085311213645762253187613235977654585547390841774241325256042541009940250624\n", + "1359934750930078284814532852033744651573931585056974348403513970513440757513972770341295161283217676076964356095197528865437619155244351474805616721028427664512015784495505009674409001476318642315374750045695411922709251371711860297998058733117069469462529314969316641256328381077235758295435735204564883390680159390802191223460064903196044898888863534344566873864933842558532300661144680426468950817570605036913011832557184411464131669421743026589128730274443247360893069135478120751435153880509224219515233874433368633215153561522433253517785909368396738972916032146982269399656667726954466314875782442432686501761409982582191936140991535640680161525663349331983436598692417229055185344464860504343213536382548918671804729489268830903701598625163867592170622427291524506375226471955309171094781683548482650512085082019880501248\n", + "2719869501860156569629065704067489303147863170113948696807027941026881515027945540682590322566435352153928712190395057730875238310488702949611233442056855329024031568991010019348818002952637284630749500091390823845418502743423720595996117466234138938925058629938633282512656762154471516590871470409129766781360318781604382446920129806392089797777727068689133747729867685117064601322289360852937901635141210073826023665114368822928263338843486053178257460548886494721786138270956241502870307761018448439030467748866737266430307123044866507035571818736793477945832064293964538799313335453908932629751564884865373003522819965164383872281983071281360323051326698663966873197384834458110370688929721008686427072765097837343609458978537661807403197250327735184341244854583049012750452943910618342189563367096965301024170164039761002496\n", + "5439739003720313139258131408134978606295726340227897393614055882053763030055891081365180645132870704307857424380790115461750476620977405899222466884113710658048063137982020038697636005905274569261499000182781647690837005486847441191992234932468277877850117259877266565025313524308943033181742940818259533562720637563208764893840259612784179595555454137378267495459735370234129202644578721705875803270282420147652047330228737645856526677686972106356514921097772989443572276541912483005740615522036896878060935497733474532860614246089733014071143637473586955891664128587929077598626670907817865259503129769730746007045639930328767744563966142562720646102653397327933746394769668916220741377859442017372854145530195674687218917957075323614806394500655470368682489709166098025500905887821236684379126734193930602048340328079522004992\n", + "10879478007440626278516262816269957212591452680455794787228111764107526060111782162730361290265741408615714848761580230923500953241954811798444933768227421316096126275964040077395272011810549138522998000365563295381674010973694882383984469864936555755700234519754533130050627048617886066363485881636519067125441275126417529787680519225568359191110908274756534990919470740468258405289157443411751606540564840295304094660457475291713053355373944212713029842195545978887144553083824966011481231044073793756121870995466949065721228492179466028142287274947173911783328257175858155197253341815635730519006259539461492014091279860657535489127932285125441292205306794655867492789539337832441482755718884034745708291060391349374437835914150647229612789001310940737364979418332196051001811775642473368758253468387861204096680656159044009984\n", + "21758956014881252557032525632539914425182905360911589574456223528215052120223564325460722580531482817231429697523160461847001906483909623596889867536454842632192252551928080154790544023621098277045996000731126590763348021947389764767968939729873111511400469039509066260101254097235772132726971763273038134250882550252835059575361038451136718382221816549513069981838941480936516810578314886823503213081129680590608189320914950583426106710747888425426059684391091957774289106167649932022962462088147587512243741990933898131442456984358932056284574549894347823566656514351716310394506683631271461038012519078922984028182559721315070978255864570250882584410613589311734985579078675664882965511437768069491416582120782698748875671828301294459225578002621881474729958836664392102003623551284946737516506936775722408193361312318088019968\n", + "43517912029762505114065051265079828850365810721823179148912447056430104240447128650921445161062965634462859395046320923694003812967819247193779735072909685264384505103856160309581088047242196554091992001462253181526696043894779529535937879459746223022800938079018132520202508194471544265453943526546076268501765100505670119150722076902273436764443633099026139963677882961873033621156629773647006426162259361181216378641829901166852213421495776850852119368782183915548578212335299864045924924176295175024487483981867796262884913968717864112569149099788695647133313028703432620789013367262542922076025038157845968056365119442630141956511729140501765168821227178623469971158157351329765931022875536138982833164241565397497751343656602588918451156005243762949459917673328784204007247102569893475033013873551444816386722624636176039936\n", + "87035824059525010228130102530159657700731621443646358297824894112860208480894257301842890322125931268925718790092641847388007625935638494387559470145819370528769010207712320619162176094484393108183984002924506363053392087789559059071875758919492446045601876158036265040405016388943088530907887053092152537003530201011340238301444153804546873528887266198052279927355765923746067242313259547294012852324518722362432757283659802333704426842991553701704238737564367831097156424670599728091849848352590350048974967963735592525769827937435728225138298199577391294266626057406865241578026734525085844152050076315691936112730238885260283913023458281003530337642454357246939942316314702659531862045751072277965666328483130794995502687313205177836902312010487525898919835346657568408014494205139786950066027747102889632773445249272352079872\n", + "174071648119050020456260205060319315401463242887292716595649788225720416961788514603685780644251862537851437580185283694776015251871276988775118940291638741057538020415424641238324352188968786216367968005849012726106784175579118118143751517838984892091203752316072530080810032777886177061815774106184305074007060402022680476602888307609093747057774532396104559854711531847492134484626519094588025704649037444724865514567319604667408853685983107403408477475128735662194312849341199456183699696705180700097949935927471185051539655874871456450276596399154782588533252114813730483156053469050171688304100152631383872225460477770520567826046916562007060675284908714493879884632629405319063724091502144555931332656966261589991005374626410355673804624020975051797839670693315136816028988410279573900132055494205779265546890498544704159744\n", + "348143296238100040912520410120638630802926485774585433191299576451440833923577029207371561288503725075702875160370567389552030503742553977550237880583277482115076040830849282476648704377937572432735936011698025452213568351158236236287503035677969784182407504632145060161620065555772354123631548212368610148014120804045360953205776615218187494115549064792209119709423063694984268969253038189176051409298074889449731029134639209334817707371966214806816954950257471324388625698682398912367399393410361400195899871854942370103079311749742912900553192798309565177066504229627460966312106938100343376608200305262767744450920955541041135652093833124014121350569817428987759769265258810638127448183004289111862665313932523179982010749252820711347609248041950103595679341386630273632057976820559147800264110988411558531093780997089408319488\n", + "696286592476200081825040820241277261605852971549170866382599152902881667847154058414743122577007450151405750320741134779104061007485107955100475761166554964230152081661698564953297408755875144865471872023396050904427136702316472472575006071355939568364815009264290120323240131111544708247263096424737220296028241608090721906411553230436374988231098129584418239418846127389968537938506076378352102818596149778899462058269278418669635414743932429613633909900514942648777251397364797824734798786820722800391799743709884740206158623499485825801106385596619130354133008459254921932624213876200686753216400610525535488901841911082082271304187666248028242701139634857975519538530517621276254896366008578223725330627865046359964021498505641422695218496083900207191358682773260547264115953641118295600528221976823117062187561994178816638976\n", + "1392573184952400163650081640482554523211705943098341732765198305805763335694308116829486245154014900302811500641482269558208122014970215910200951522333109928460304163323397129906594817511750289730943744046792101808854273404632944945150012142711879136729630018528580240646480262223089416494526192849474440592056483216181443812823106460872749976462196259168836478837692254779937075877012152756704205637192299557798924116538556837339270829487864859227267819801029885297554502794729595649469597573641445600783599487419769480412317246998971651602212771193238260708266016918509843865248427752401373506432801221051070977803683822164164542608375332496056485402279269715951039077061035242552509792732017156447450661255730092719928042997011282845390436992167800414382717365546521094528231907282236591201056443953646234124375123988357633277952\n", + "2785146369904800327300163280965109046423411886196683465530396611611526671388616233658972490308029800605623001282964539116416244029940431820401903044666219856920608326646794259813189635023500579461887488093584203617708546809265889890300024285423758273459260037057160481292960524446178832989052385698948881184112966432362887625646212921745499952924392518337672957675384509559874151754024305513408411274384599115597848233077113674678541658975729718454535639602059770595109005589459191298939195147282891201567198974839538960824634493997943303204425542386476521416532033837019687730496855504802747012865602442102141955607367644328329085216750664992112970804558539431902078154122070485105019585464034312894901322511460185439856085994022565690780873984335600828765434731093042189056463814564473182402112887907292468248750247976715266555904\n", + "5570292739809600654600326561930218092846823772393366931060793223223053342777232467317944980616059601211246002565929078232832488059880863640803806089332439713841216653293588519626379270047001158923774976187168407235417093618531779780600048570847516546918520074114320962585921048892357665978104771397897762368225932864725775251292425843490999905848785036675345915350769019119748303508048611026816822548769198231195696466154227349357083317951459436909071279204119541190218011178918382597878390294565782403134397949679077921649268987995886606408851084772953042833064067674039375460993711009605494025731204884204283911214735288656658170433501329984225941609117078863804156308244140970210039170928068625789802645022920370879712171988045131381561747968671201657530869462186084378112927629128946364804225775814584936497500495953430533111808\n", + "11140585479619201309200653123860436185693647544786733862121586446446106685554464934635889961232119202422492005131858156465664976119761727281607612178664879427682433306587177039252758540094002317847549952374336814470834187237063559561200097141695033093837040148228641925171842097784715331956209542795795524736451865729451550502584851686981999811697570073350691830701538038239496607016097222053633645097538396462391392932308454698714166635902918873818142558408239082380436022357836765195756780589131564806268795899358155843298537975991773212817702169545906085666128135348078750921987422019210988051462409768408567822429470577313316340867002659968451883218234157727608312616488281940420078341856137251579605290045840741759424343976090262763123495937342403315061738924372168756225855258257892729608451551629169872995000991906861066223616\n", + "22281170959238402618401306247720872371387295089573467724243172892892213371108929869271779922464238404844984010263716312931329952239523454563215224357329758855364866613174354078505517080188004635695099904748673628941668374474127119122400194283390066187674080296457283850343684195569430663912419085591591049472903731458903101005169703373963999623395140146701383661403076076478993214032194444107267290195076792924782785864616909397428333271805837747636285116816478164760872044715673530391513561178263129612537591798716311686597075951983546425635404339091812171332256270696157501843974844038421976102924819536817135644858941154626632681734005319936903766436468315455216625232976563880840156683712274503159210580091681483518848687952180525526246991874684806630123477848744337512451710516515785459216903103258339745990001983813722132447232\n", + "44562341918476805236802612495441744742774590179146935448486345785784426742217859738543559844928476809689968020527432625862659904479046909126430448714659517710729733226348708157011034160376009271390199809497347257883336748948254238244800388566780132375348160592914567700687368391138861327824838171183182098945807462917806202010339406747927999246790280293402767322806152152957986428064388888214534580390153585849565571729233818794856666543611675495272570233632956329521744089431347060783027122356526259225075183597432623373194151903967092851270808678183624342664512541392315003687949688076843952205849639073634271289717882309253265363468010639873807532872936630910433250465953127761680313367424549006318421160183362967037697375904361051052493983749369613260246955697488675024903421033031570918433806206516679491980003967627444264894464\n", + "89124683836953610473605224990883489485549180358293870896972691571568853484435719477087119689856953619379936041054865251725319808958093818252860897429319035421459466452697416314022068320752018542780399618994694515766673497896508476489600777133560264750696321185829135401374736782277722655649676342366364197891614925835612404020678813495855998493580560586805534645612304305915972856128777776429069160780307171699131143458467637589713333087223350990545140467265912659043488178862694121566054244713052518450150367194865246746388303807934185702541617356367248685329025082784630007375899376153687904411699278147268542579435764618506530726936021279747615065745873261820866500931906255523360626734849098012636842320366725934075394751808722102104987967498739226520493911394977350049806842066063141836867612413033358983960007935254888529788928\n", + "178249367673907220947210449981766978971098360716587741793945383143137706968871438954174239379713907238759872082109730503450639617916187636505721794858638070842918932905394832628044136641504037085560799237989389031533346995793016952979201554267120529501392642371658270802749473564555445311299352684732728395783229851671224808041357626991711996987161121173611069291224608611831945712257555552858138321560614343398262286916935275179426666174446701981090280934531825318086976357725388243132108489426105036900300734389730493492776607615868371405083234712734497370658050165569260014751798752307375808823398556294537085158871529237013061453872042559495230131491746523641733001863812511046721253469698196025273684640733451868150789503617444204209975934997478453040987822789954700099613684132126283673735224826066717967920015870509777059577856\n", + "356498735347814441894420899963533957942196721433175483587890766286275413937742877908348478759427814477519744164219461006901279235832375273011443589717276141685837865810789665256088273283008074171121598475978778063066693991586033905958403108534241059002785284743316541605498947129110890622598705369465456791566459703342449616082715253983423993974322242347222138582449217223663891424515111105716276643121228686796524573833870550358853332348893403962180561869063650636173952715450776486264216978852210073800601468779460986985553215231736742810166469425468994741316100331138520029503597504614751617646797112589074170317743058474026122907744085118990460262983493047283466003727625022093442506939396392050547369281466903736301579007234888408419951869994956906081975645579909400199227368264252567347470449652133435935840031741019554119155712\n", + "712997470695628883788841799927067915884393442866350967175781532572550827875485755816696957518855628955039488328438922013802558471664750546022887179434552283371675731621579330512176546566016148342243196951957556126133387983172067811916806217068482118005570569486633083210997894258221781245197410738930913583132919406684899232165430507966847987948644484694444277164898434447327782849030222211432553286242457373593049147667741100717706664697786807924361123738127301272347905430901552972528433957704420147601202937558921973971106430463473485620332938850937989482632200662277040059007195009229503235293594225178148340635486116948052245815488170237980920525966986094566932007455250044186885013878792784101094738562933807472603158014469776816839903739989913812163951291159818800398454736528505134694940899304266871871680063482039108238311424\n", + "1425994941391257767577683599854135831768786885732701934351563065145101655750971511633393915037711257910078976656877844027605116943329501092045774358869104566743351463243158661024353093132032296684486393903915112252266775966344135623833612434136964236011141138973266166421995788516443562490394821477861827166265838813369798464330861015933695975897288969388888554329796868894655565698060444422865106572484914747186098295335482201435413329395573615848722247476254602544695810861803105945056867915408840295202405875117843947942212860926946971240665877701875978965264401324554080118014390018459006470587188450356296681270972233896104491630976340475961841051933972189133864014910500088373770027757585568202189477125867614945206316028939553633679807479979827624327902582319637600796909473057010269389881798608533743743360126964078216476622848\n", + "2851989882782515535155367199708271663537573771465403868703126130290203311501943023266787830075422515820157953313755688055210233886659002184091548717738209133486702926486317322048706186264064593368972787807830224504533551932688271247667224868273928472022282277946532332843991577032887124980789642955723654332531677626739596928661722031867391951794577938777777108659593737789311131396120888845730213144969829494372196590670964402870826658791147231697444494952509205089391621723606211890113735830817680590404811750235687895884425721853893942481331755403751957930528802649108160236028780036918012941174376900712593362541944467792208983261952680951923682103867944378267728029821000176747540055515171136404378954251735229890412632057879107267359614959959655248655805164639275201593818946114020538779763597217067487486720253928156432953245696\n", + "5703979765565031070310734399416543327075147542930807737406252260580406623003886046533575660150845031640315906627511376110420467773318004368183097435476418266973405852972634644097412372528129186737945575615660449009067103865376542495334449736547856944044564555893064665687983154065774249961579285911447308665063355253479193857323444063734783903589155877555554217319187475578622262792241777691460426289939658988744393181341928805741653317582294463394888989905018410178783243447212423780227471661635361180809623500471375791768851443707787884962663510807503915861057605298216320472057560073836025882348753801425186725083888935584417966523905361903847364207735888756535456059642000353495080111030342272808757908503470459780825264115758214534719229919919310497311610329278550403187637892228041077559527194434134974973440507856312865906491392\n", + "11407959531130062140621468798833086654150295085861615474812504521160813246007772093067151320301690063280631813255022752220840935546636008736366194870952836533946811705945269288194824745056258373475891151231320898018134207730753084990668899473095713888089129111786129331375966308131548499923158571822894617330126710506958387714646888127469567807178311755111108434638374951157244525584483555382920852579879317977488786362683857611483306635164588926789777979810036820357566486894424847560454943323270722361619247000942751583537702887415575769925327021615007831722115210596432640944115120147672051764697507602850373450167777871168835933047810723807694728415471777513070912119284000706990160222060684545617515817006940919561650528231516429069438459839838620994623220658557100806375275784456082155119054388868269949946881015712625731812982784\n", + "22815919062260124281242937597666173308300590171723230949625009042321626492015544186134302640603380126561263626510045504441681871093272017472732389741905673067893623411890538576389649490112516746951782302462641796036268415461506169981337798946191427776178258223572258662751932616263096999846317143645789234660253421013916775429293776254939135614356623510222216869276749902314489051168967110765841705159758635954977572725367715222966613270329177853579555959620073640715132973788849695120909886646541444723238494001885503167075405774831151539850654043230015663444230421192865281888230240295344103529395015205700746900335555742337671866095621447615389456830943555026141824238568001413980320444121369091235031634013881839123301056463032858138876919679677241989246441317114201612750551568912164310238108777736539899893762031425251463625965568\n", + "45631838124520248562485875195332346616601180343446461899250018084643252984031088372268605281206760253122527253020091008883363742186544034945464779483811346135787246823781077152779298980225033493903564604925283592072536830923012339962675597892382855552356516447144517325503865232526193999692634287291578469320506842027833550858587552509878271228713247020444433738553499804628978102337934221531683410319517271909955145450735430445933226540658355707159111919240147281430265947577699390241819773293082889446476988003771006334150811549662303079701308086460031326888460842385730563776460480590688207058790030411401493800671111484675343732191242895230778913661887110052283648477136002827960640888242738182470063268027763678246602112926065716277753839359354483978492882634228403225501103137824328620476217555473079799787524062850502927251931136\n", + "91263676249040497124971750390664693233202360686892923798500036169286505968062176744537210562413520506245054506040182017766727484373088069890929558967622692271574493647562154305558597960450066987807129209850567184145073661846024679925351195784765711104713032894289034651007730465052387999385268574583156938641013684055667101717175105019756542457426494040888867477106999609257956204675868443063366820639034543819910290901470860891866453081316711414318223838480294562860531895155398780483639546586165778892953976007542012668301623099324606159402616172920062653776921684771461127552920961181376414117580060822802987601342222969350687464382485790461557827323774220104567296954272005655921281776485476364940126536055527356493204225852131432555507678718708967956985765268456806451002206275648657240952435110946159599575048125701005854503862272\n", + "182527352498080994249943500781329386466404721373785847597000072338573011936124353489074421124827041012490109012080364035533454968746176139781859117935245384543148987295124308611117195920900133975614258419701134368290147323692049359850702391569531422209426065788578069302015460930104775998770537149166313877282027368111334203434350210039513084914852988081777734954213999218515912409351736886126733641278069087639820581802941721783732906162633422828636447676960589125721063790310797560967279093172331557785907952015084025336603246198649212318805232345840125307553843369542922255105841922362752828235160121645605975202684445938701374928764971580923115654647548440209134593908544011311842563552970952729880253072111054712986408451704262865111015357437417935913971530536913612902004412551297314481904870221892319199150096251402011709007724544\n", + "365054704996161988499887001562658772932809442747571695194000144677146023872248706978148842249654082024980218024160728071066909937492352279563718235870490769086297974590248617222234391841800267951228516839402268736580294647384098719701404783139062844418852131577156138604030921860209551997541074298332627754564054736222668406868700420079026169829705976163555469908427998437031824818703473772253467282556138175279641163605883443567465812325266845657272895353921178251442127580621595121934558186344663115571815904030168050673206492397298424637610464691680250615107686739085844510211683844725505656470320243291211950405368891877402749857529943161846231309295096880418269187817088022623685127105941905459760506144222109425972816903408525730222030714874835871827943061073827225804008825102594628963809740443784638398300192502804023418015449088\n", + "730109409992323976999774003125317545865618885495143390388000289354292047744497413956297684499308164049960436048321456142133819874984704559127436471740981538172595949180497234444468783683600535902457033678804537473160589294768197439402809566278125688837704263154312277208061843720419103995082148596665255509128109472445336813737400840158052339659411952327110939816855996874063649637406947544506934565112276350559282327211766887134931624650533691314545790707842356502884255161243190243869116372689326231143631808060336101346412984794596849275220929383360501230215373478171689020423367689451011312940640486582423900810737783754805499715059886323692462618590193760836538375634176045247370254211883810919521012288444218851945633806817051460444061429749671743655886122147654451608017650205189257927619480887569276796600385005608046836030898176\n", + "1460218819984647953999548006250635091731237770990286780776000578708584095488994827912595368998616328099920872096642912284267639749969409118254872943481963076345191898360994468888937567367201071804914067357609074946321178589536394878805619132556251377675408526308624554416123687440838207990164297193330511018256218944890673627474801680316104679318823904654221879633711993748127299274813895089013869130224552701118564654423533774269863249301067382629091581415684713005768510322486380487738232745378652462287263616120672202692825969589193698550441858766721002460430746956343378040846735378902022625881280973164847801621475567509610999430119772647384925237180387521673076751268352090494740508423767621839042024576888437703891267613634102920888122859499343487311772244295308903216035300410378515855238961775138553593200770011216093672061796352\n", + "2920437639969295907999096012501270183462475541980573561552001157417168190977989655825190737997232656199841744193285824568535279499938818236509745886963926152690383796721988937777875134734402143609828134715218149892642357179072789757611238265112502755350817052617249108832247374881676415980328594386661022036512437889781347254949603360632209358637647809308443759267423987496254598549627790178027738260449105402237129308847067548539726498602134765258183162831369426011537020644972760975476465490757304924574527232241344405385651939178387397100883717533442004920861493912686756081693470757804045251762561946329695603242951135019221998860239545294769850474360775043346153502536704180989481016847535243678084049153776875407782535227268205841776245718998686974623544488590617806432070600820757031710477923550277107186401540022432187344123592704\n", + "5840875279938591815998192025002540366924951083961147123104002314834336381955979311650381475994465312399683488386571649137070558999877636473019491773927852305380767593443977875555750269468804287219656269430436299785284714358145579515222476530225005510701634105234498217664494749763352831960657188773322044073024875779562694509899206721264418717275295618616887518534847974992509197099255580356055476520898210804474258617694135097079452997204269530516366325662738852023074041289945521950952930981514609849149054464482688810771303878356774794201767435066884009841722987825373512163386941515608090503525123892659391206485902270038443997720479090589539700948721550086692307005073408361978962033695070487356168098307553750815565070454536411683552491437997373949247088977181235612864141201641514063420955847100554214372803080044864374688247185408\n", + "11681750559877183631996384050005080733849902167922294246208004629668672763911958623300762951988930624799366976773143298274141117999755272946038983547855704610761535186887955751111500538937608574439312538860872599570569428716291159030444953060450011021403268210468996435328989499526705663921314377546644088146049751559125389019798413442528837434550591237233775037069695949985018394198511160712110953041796421608948517235388270194158905994408539061032732651325477704046148082579891043901905861963029219698298108928965377621542607756713549588403534870133768019683445975650747024326773883031216181007050247785318782412971804540076887995440958181179079401897443100173384614010146816723957924067390140974712336196615107501631130140909072823367104982875994747898494177954362471225728282403283028126841911694201108428745606160089728749376494370816\n", + "23363501119754367263992768100010161467699804335844588492416009259337345527823917246601525903977861249598733953546286596548282235999510545892077967095711409221523070373775911502223001077875217148878625077721745199141138857432582318060889906120900022042806536420937992870657978999053411327842628755093288176292099503118250778039596826885057674869101182474467550074139391899970036788397022321424221906083592843217897034470776540388317811988817078122065465302650955408092296165159782087803811723926058439396596217857930755243085215513427099176807069740267536039366891951301494048653547766062432362014100495570637564825943609080153775990881916362358158803794886200346769228020293633447915848134780281949424672393230215003262260281818145646734209965751989495796988355908724942451456564806566056253683823388402216857491212320179457498752988741632\n", + "46727002239508734527985536200020322935399608671689176984832018518674691055647834493203051807955722499197467907092573193096564471999021091784155934191422818443046140747551823004446002155750434297757250155443490398282277714865164636121779812241800044085613072841875985741315957998106822655685257510186576352584199006236501556079193653770115349738202364948935100148278783799940073576794044642848443812167185686435794068941553080776635623977634156244130930605301910816184592330319564175607623447852116878793192435715861510486170431026854198353614139480535072078733783902602988097307095532124864724028200991141275129651887218160307551981763832724716317607589772400693538456040587266895831696269560563898849344786460430006524520563636291293468419931503978991593976711817449884902913129613132112507367646776804433714982424640358914997505977483264\n", + "93454004479017469055971072400040645870799217343378353969664037037349382111295668986406103615911444998394935814185146386193128943998042183568311868382845636886092281495103646008892004311500868595514500310886980796564555429730329272243559624483600088171226145683751971482631915996213645311370515020373152705168398012473003112158387307540230699476404729897870200296557567599880147153588089285696887624334371372871588137883106161553271247955268312488261861210603821632369184660639128351215246895704233757586384871431723020972340862053708396707228278961070144157467567805205976194614191064249729448056401982282550259303774436320615103963527665449432635215179544801387076912081174533791663392539121127797698689572920860013049041127272582586936839863007957983187953423634899769805826259226264225014735293553608867429964849280717829995011954966528\n", + "186908008958034938111942144800081291741598434686756707939328074074698764222591337972812207231822889996789871628370292772386257887996084367136623736765691273772184562990207292017784008623001737191029000621773961593129110859460658544487119248967200176342452291367503942965263831992427290622741030040746305410336796024946006224316774615080461398952809459795740400593115135199760294307176178571393775248668742745743176275766212323106542495910536624976523722421207643264738369321278256702430493791408467515172769742863446041944681724107416793414456557922140288314935135610411952389228382128499458896112803964565100518607548872641230207927055330898865270430359089602774153824162349067583326785078242255595397379145841720026098082254545165173873679726015915966375906847269799539611652518452528450029470587107217734859929698561435659990023909933056\n", + "373816017916069876223884289600162583483196869373513415878656148149397528445182675945624414463645779993579743256740585544772515775992168734273247473531382547544369125980414584035568017246003474382058001243547923186258221718921317088974238497934400352684904582735007885930527663984854581245482060081492610820673592049892012448633549230160922797905618919591480801186230270399520588614352357142787550497337485491486352551532424646213084991821073249953047444842415286529476738642556513404860987582816935030345539485726892083889363448214833586828913115844280576629870271220823904778456764256998917792225607929130201037215097745282460415854110661797730540860718179205548307648324698135166653570156484511190794758291683440052196164509090330347747359452031831932751813694539599079223305036905056900058941174214435469719859397122871319980047819866112\n", + "747632035832139752447768579200325166966393738747026831757312296298795056890365351891248828927291559987159486513481171089545031551984337468546494947062765095088738251960829168071136034492006948764116002487095846372516443437842634177948476995868800705369809165470015771861055327969709162490964120162985221641347184099784024897267098460321845595811237839182961602372460540799041177228704714285575100994674970982972705103064849292426169983642146499906094889684830573058953477285113026809721975165633870060691078971453784167778726896429667173657826231688561153259740542441647809556913528513997835584451215858260402074430195490564920831708221323595461081721436358411096615296649396270333307140312969022381589516583366880104392329018180660695494718904063663865503627389079198158446610073810113800117882348428870939439718794245742639960095639732224\n", + "1495264071664279504895537158400650333932787477494053663514624592597590113780730703782497657854583119974318973026962342179090063103968674937092989894125530190177476503921658336142272068984013897528232004974191692745032886875685268355896953991737601410739618330940031543722110655939418324981928240325970443282694368199568049794534196920643691191622475678365923204744921081598082354457409428571150201989349941965945410206129698584852339967284292999812189779369661146117906954570226053619443950331267740121382157942907568335557453792859334347315652463377122306519481084883295619113827057027995671168902431716520804148860390981129841663416442647190922163442872716822193230593298792540666614280625938044763179033166733760208784658036361321390989437808127327731007254778158396316893220147620227600235764696857741878879437588491485279920191279464448\n", + "2990528143328559009791074316801300667865574954988107327029249185195180227561461407564995315709166239948637946053924684358180126207937349874185979788251060380354953007843316672284544137968027795056464009948383385490065773751370536711793907983475202821479236661880063087444221311878836649963856480651940886565388736399136099589068393841287382383244951356731846409489842163196164708914818857142300403978699883931890820412259397169704679934568585999624379558739322292235813909140452107238887900662535480242764315885815136671114907585718668694631304926754244613038962169766591238227654114055991342337804863433041608297720781962259683326832885294381844326885745433644386461186597585081333228561251876089526358066333467520417569316072722642781978875616254655462014509556316792633786440295240455200471529393715483757758875176982970559840382558928896\n", + "5981056286657118019582148633602601335731149909976214654058498370390360455122922815129990631418332479897275892107849368716360252415874699748371959576502120760709906015686633344569088275936055590112928019896766770980131547502741073423587815966950405642958473323760126174888442623757673299927712961303881773130777472798272199178136787682574764766489902713463692818979684326392329417829637714284600807957399767863781640824518794339409359869137171999248759117478644584471627818280904214477775801325070960485528631771630273342229815171437337389262609853508489226077924339533182476455308228111982684675609726866083216595441563924519366653665770588763688653771490867288772922373195170162666457122503752179052716132666935040835138632145445285563957751232509310924029019112633585267572880590480910400943058787430967515517750353965941119680765117857792\n", + "11962112573314236039164297267205202671462299819952429308116996740780720910245845630259981262836664959794551784215698737432720504831749399496743919153004241521419812031373266689138176551872111180225856039793533541960263095005482146847175631933900811285916946647520252349776885247515346599855425922607763546261554945596544398356273575365149529532979805426927385637959368652784658835659275428569201615914799535727563281649037588678818719738274343998497518234957289168943255636561808428955551602650141920971057263543260546684459630342874674778525219707016978452155848679066364952910616456223965369351219453732166433190883127849038733307331541177527377307542981734577545844746390340325332914245007504358105432265333870081670277264290890571127915502465018621848058038225267170535145761180961820801886117574861935031035500707931882239361530235715584\n", + "23924225146628472078328594534410405342924599639904858616233993481561441820491691260519962525673329919589103568431397474865441009663498798993487838306008483042839624062746533378276353103744222360451712079587067083920526190010964293694351263867801622571833893295040504699553770495030693199710851845215527092523109891193088796712547150730299059065959610853854771275918737305569317671318550857138403231829599071455126563298075177357637439476548687996995036469914578337886511273123616857911103205300283841942114527086521093368919260685749349557050439414033956904311697358132729905821232912447930738702438907464332866381766255698077466614663082355054754615085963469155091689492780680650665828490015008716210864530667740163340554528581781142255831004930037243696116076450534341070291522361923641603772235149723870062071001415863764478723060471431168\n", + "47848450293256944156657189068820810685849199279809717232467986963122883640983382521039925051346659839178207136862794949730882019326997597986975676612016966085679248125493066756552706207488444720903424159174134167841052380021928587388702527735603245143667786590081009399107540990061386399421703690431054185046219782386177593425094301460598118131919221707709542551837474611138635342637101714276806463659198142910253126596150354715274878953097375993990072939829156675773022546247233715822206410600567683884229054173042186737838521371498699114100878828067913808623394716265459811642465824895861477404877814928665732763532511396154933229326164710109509230171926938310183378985561361301331656980030017432421729061335480326681109057163562284511662009860074487392232152901068682140583044723847283207544470299447740124142002831727528957446120942862336\n", + "95696900586513888313314378137641621371698398559619434464935973926245767281966765042079850102693319678356414273725589899461764038653995195973951353224033932171358496250986133513105412414976889441806848318348268335682104760043857174777405055471206490287335573180162018798215081980122772798843407380862108370092439564772355186850188602921196236263838443415419085103674949222277270685274203428553612927318396285820506253192300709430549757906194751987980145879658313351546045092494467431644412821201135367768458108346084373475677042742997398228201757656135827617246789432530919623284931649791722954809755629857331465527065022792309866458652329420219018460343853876620366757971122722602663313960060034864843458122670960653362218114327124569023324019720148974784464305802137364281166089447694566415088940598895480248284005663455057914892241885724672\n", + "191393801173027776626628756275283242743396797119238868929871947852491534563933530084159700205386639356712828547451179798923528077307990391947902706448067864342716992501972267026210824829953778883613696636696536671364209520087714349554810110942412980574671146360324037596430163960245545597686814761724216740184879129544710373700377205842392472527676886830838170207349898444554541370548406857107225854636792571641012506384601418861099515812389503975960291759316626703092090184988934863288825642402270735536916216692168746951354085485994796456403515312271655234493578865061839246569863299583445909619511259714662931054130045584619732917304658840438036920687707753240733515942245445205326627920120069729686916245341921306724436228654249138046648039440297949568928611604274728562332178895389132830177881197790960496568011326910115829784483771449344\n", + "382787602346055553253257512550566485486793594238477737859743895704983069127867060168319400410773278713425657094902359597847056154615980783895805412896135728685433985003944534052421649659907557767227393273393073342728419040175428699109620221884825961149342292720648075192860327920491091195373629523448433480369758259089420747400754411684784945055353773661676340414699796889109082741096813714214451709273585143282025012769202837722199031624779007951920583518633253406184180369977869726577651284804541471073832433384337493902708170971989592912807030624543310468987157730123678493139726599166891819239022519429325862108260091169239465834609317680876073841375415506481467031884490890410653255840240139459373832490683842613448872457308498276093296078880595899137857223208549457124664357790778265660355762395581920993136022653820231659568967542898688\n", + "765575204692111106506515025101132970973587188476955475719487791409966138255734120336638800821546557426851314189804719195694112309231961567791610825792271457370867970007889068104843299319815115534454786546786146685456838080350857398219240443769651922298684585441296150385720655840982182390747259046896866960739516518178841494801508823369569890110707547323352680829399593778218165482193627428428903418547170286564050025538405675444398063249558015903841167037266506812368360739955739453155302569609082942147664866768674987805416341943979185825614061249086620937974315460247356986279453198333783638478045038858651724216520182338478931669218635361752147682750831012962934063768981780821306511680480278918747664981367685226897744914616996552186592157761191798275714446417098914249328715581556531320711524791163841986272045307640463319137935085797376\n", + "1531150409384222213013030050202265941947174376953910951438975582819932276511468240673277601643093114853702628379609438391388224618463923135583221651584542914741735940015778136209686598639630231068909573093572293370913676160701714796438480887539303844597369170882592300771441311681964364781494518093793733921479033036357682989603017646739139780221415094646705361658799187556436330964387254856857806837094340573128100051076811350888796126499116031807682334074533013624736721479911478906310605139218165884295329733537349975610832683887958371651228122498173241875948630920494713972558906396667567276956090077717303448433040364676957863338437270723504295365501662025925868127537963561642613023360960557837495329962735370453795489829233993104373184315522383596551428892834197828498657431163113062641423049582327683972544090615280926638275870171594752\n", + "3062300818768444426026060100404531883894348753907821902877951165639864553022936481346555203286186229707405256759218876782776449236927846271166443303169085829483471880031556272419373197279260462137819146187144586741827352321403429592876961775078607689194738341765184601542882623363928729562989036187587467842958066072715365979206035293478279560442830189293410723317598375112872661928774509713715613674188681146256200102153622701777592252998232063615364668149066027249473442959822957812621210278436331768590659467074699951221665367775916743302456244996346483751897261840989427945117812793335134553912180155434606896866080729353915726676874541447008590731003324051851736255075927123285226046721921115674990659925470740907590979658467986208746368631044767193102857785668395656997314862326226125282846099164655367945088181230561853276551740343189504\n", + "6124601637536888852052120200809063767788697507815643805755902331279729106045872962693110406572372459414810513518437753565552898473855692542332886606338171658966943760063112544838746394558520924275638292374289173483654704642806859185753923550157215378389476683530369203085765246727857459125978072375174935685916132145430731958412070586956559120885660378586821446635196750225745323857549019427431227348377362292512400204307245403555184505996464127230729336298132054498946885919645915625242420556872663537181318934149399902443330735551833486604912489992692967503794523681978855890235625586670269107824360310869213793732161458707831453353749082894017181462006648103703472510151854246570452093443842231349981319850941481815181959316935972417492737262089534386205715571336791313994629724652452250565692198329310735890176362461123706553103480686379008\n", + "12249203275073777704104240401618127535577395015631287611511804662559458212091745925386220813144744918829621027036875507131105796947711385084665773212676343317933887520126225089677492789117041848551276584748578346967309409285613718371507847100314430756778953367060738406171530493455714918251956144750349871371832264290861463916824141173913118241771320757173642893270393500451490647715098038854862454696754724585024800408614490807110369011992928254461458672596264108997893771839291831250484841113745327074362637868298799804886661471103666973209824979985385935007589047363957711780471251173340538215648720621738427587464322917415662906707498165788034362924013296207406945020303708493140904186887684462699962639701882963630363918633871944834985474524179068772411431142673582627989259449304904501131384396658621471780352724922247413106206961372758016\n", + "24498406550147555408208480803236255071154790031262575223023609325118916424183491850772441626289489837659242054073751014262211593895422770169331546425352686635867775040252450179354985578234083697102553169497156693934618818571227436743015694200628861513557906734121476812343060986911429836503912289500699742743664528581722927833648282347826236483542641514347285786540787000902981295430196077709724909393509449170049600817228981614220738023985856508922917345192528217995787543678583662500969682227490654148725275736597599609773322942207333946419649959970771870015178094727915423560942502346681076431297441243476855174928645834831325813414996331576068725848026592414813890040607416986281808373775368925399925279403765927260727837267743889669970949048358137544822862285347165255978518898609809002262768793317242943560705449844494826212413922745516032\n", + "48996813100295110816416961606472510142309580062525150446047218650237832848366983701544883252578979675318484108147502028524423187790845540338663092850705373271735550080504900358709971156468167394205106338994313387869237637142454873486031388401257723027115813468242953624686121973822859673007824579001399485487329057163445855667296564695652472967085283028694571573081574001805962590860392155419449818787018898340099201634457963228441476047971713017845834690385056435991575087357167325001939364454981308297450551473195199219546645884414667892839299919941543740030356189455830847121885004693362152862594882486953710349857291669662651626829992663152137451696053184829627780081214833972563616747550737850799850558807531854521455674535487779339941898096716275089645724570694330511957037797219618004525537586634485887121410899688989652424827845491032064\n", + "97993626200590221632833923212945020284619160125050300892094437300475665696733967403089766505157959350636968216295004057048846375581691080677326185701410746543471100161009800717419942312936334788410212677988626775738475274284909746972062776802515446054231626936485907249372243947645719346015649158002798970974658114326891711334593129391304945934170566057389143146163148003611925181720784310838899637574037796680198403268915926456882952095943426035691669380770112871983150174714334650003878728909962616594901102946390398439093291768829335785678599839883087480060712378911661694243770009386724305725189764973907420699714583339325303253659985326304274903392106369659255560162429667945127233495101475701599701117615063709042911349070975558679883796193432550179291449141388661023914075594439236009051075173268971774242821799377979304849655690982064128\n", + "195987252401180443265667846425890040569238320250100601784188874600951331393467934806179533010315918701273936432590008114097692751163382161354652371402821493086942200322019601434839884625872669576820425355977253551476950548569819493944125553605030892108463253872971814498744487895291438692031298316005597941949316228653783422669186258782609891868341132114778286292326296007223850363441568621677799275148075593360396806537831852913765904191886852071383338761540225743966300349428669300007757457819925233189802205892780796878186583537658671571357199679766174960121424757823323388487540018773448611450379529947814841399429166678650606507319970652608549806784212739318511120324859335890254466990202951403199402235230127418085822698141951117359767592386865100358582898282777322047828151188878472018102150346537943548485643598755958609699311381964128256\n", + "391974504802360886531335692851780081138476640500201203568377749201902662786935869612359066020631837402547872865180016228195385502326764322709304742805642986173884400644039202869679769251745339153640850711954507102953901097139638987888251107210061784216926507745943628997488975790582877384062596632011195883898632457307566845338372517565219783736682264229556572584652592014447700726883137243355598550296151186720793613075663705827531808383773704142766677523080451487932600698857338600015514915639850466379604411785561593756373167075317343142714399359532349920242849515646646776975080037546897222900759059895629682798858333357301213014639941305217099613568425478637022240649718671780508933980405902806398804470460254836171645396283902234719535184773730200717165796565554644095656302377756944036204300693075887096971287197511917219398622763928256512\n", + "783949009604721773062671385703560162276953281000402407136755498403805325573871739224718132041263674805095745730360032456390771004653528645418609485611285972347768801288078405739359538503490678307281701423909014205907802194279277975776502214420123568433853015491887257994977951581165754768125193264022391767797264914615133690676745035130439567473364528459113145169305184028895401453766274486711197100592302373441587226151327411655063616767547408285533355046160902975865201397714677200031029831279700932759208823571123187512746334150634686285428798719064699840485699031293293553950160075093794445801518119791259365597716666714602426029279882610434199227136850957274044481299437343561017867960811805612797608940920509672343290792567804469439070369547460401434331593131109288191312604755513888072408601386151774193942574395023834438797245527856513024\n", + "1567898019209443546125342771407120324553906562000804814273510996807610651147743478449436264082527349610191491460720064912781542009307057290837218971222571944695537602576156811478719077006981356614563402847818028411815604388558555951553004428840247136867706030983774515989955903162331509536250386528044783535594529829230267381353490070260879134946729056918226290338610368057790802907532548973422394201184604746883174452302654823310127233535094816571066710092321805951730402795429354400062059662559401865518417647142246375025492668301269372570857597438129399680971398062586587107900320150187588891603036239582518731195433333429204852058559765220868398454273701914548088962598874687122035735921623611225595217881841019344686581585135608938878140739094920802868663186262218576382625209511027776144817202772303548387885148790047668877594491055713026048\n", + "3135796038418887092250685542814240649107813124001609628547021993615221302295486956898872528165054699220382982921440129825563084018614114581674437942445143889391075205152313622957438154013962713229126805695636056823631208777117111903106008857680494273735412061967549031979911806324663019072500773056089567071189059658460534762706980140521758269893458113836452580677220736115581605815065097946844788402369209493766348904605309646620254467070189633142133420184643611903460805590858708800124119325118803731036835294284492750050985336602538745141715194876258799361942796125173174215800640300375177783206072479165037462390866666858409704117119530441736796908547403829096177925197749374244071471843247222451190435763682038689373163170271217877756281478189841605737326372524437152765250419022055552289634405544607096775770297580095337755188982111426052096\n", + "6271592076837774184501371085628481298215626248003219257094043987230442604590973913797745056330109398440765965842880259651126168037228229163348875884890287778782150410304627245914876308027925426458253611391272113647262417554234223806212017715360988547470824123935098063959823612649326038145001546112179134142378119316921069525413960281043516539786916227672905161354441472231163211630130195893689576804738418987532697809210619293240508934140379266284266840369287223806921611181717417600248238650237607462073670588568985500101970673205077490283430389752517598723885592250346348431601280600750355566412144958330074924781733333716819408234239060883473593817094807658192355850395498748488142943686494444902380871527364077378746326340542435755512562956379683211474652745048874305530500838044111104579268811089214193551540595160190675510377964222852104192\n", + "12543184153675548369002742171256962596431252496006438514188087974460885209181947827595490112660218796881531931685760519302252336074456458326697751769780575557564300820609254491829752616055850852916507222782544227294524835108468447612424035430721977094941648247870196127919647225298652076290003092224358268284756238633842139050827920562087033079573832455345810322708882944462326423260260391787379153609476837975065395618421238586481017868280758532568533680738574447613843222363434835200496477300475214924147341177137971000203941346410154980566860779505035197447771184500692696863202561201500711132824289916660149849563466667433638816468478121766947187634189615316384711700790997496976285887372988889804761743054728154757492652681084871511025125912759366422949305490097748611061001676088222209158537622178428387103081190320381351020755928445704208384\n", + "25086368307351096738005484342513925192862504992012877028376175948921770418363895655190980225320437593763063863371521038604504672148912916653395503539561151115128601641218508983659505232111701705833014445565088454589049670216936895224848070861443954189883296495740392255839294450597304152580006184448716536569512477267684278101655841124174066159147664910691620645417765888924652846520520783574758307218953675950130791236842477172962035736561517065137067361477148895227686444726869670400992954600950429848294682354275942000407882692820309961133721559010070394895542369001385393726405122403001422265648579833320299699126933334867277632936956243533894375268379230632769423401581994993952571774745977779609523486109456309514985305362169743022050251825518732845898610980195497222122003352176444418317075244356856774206162380640762702041511856891408416768\n", + "50172736614702193476010968685027850385725009984025754056752351897843540836727791310381960450640875187526127726743042077209009344297825833306791007079122302230257203282437017967319010464223403411666028891130176909178099340433873790449696141722887908379766592991480784511678588901194608305160012368897433073139024954535368556203311682248348132318295329821383241290835531777849305693041041567149516614437907351900261582473684954345924071473123034130274134722954297790455372889453739340801985909201900859696589364708551884000815765385640619922267443118020140789791084738002770787452810244806002844531297159666640599398253866669734555265873912487067788750536758461265538846803163989987905143549491955559219046972218912619029970610724339486044100503651037465691797221960390994444244006704352888836634150488713713548412324761281525404083023713782816833536\n", + "100345473229404386952021937370055700771450019968051508113504703795687081673455582620763920901281750375052255453486084154418018688595651666613582014158244604460514406564874035934638020928446806823332057782260353818356198680867747580899392283445775816759533185982961569023357177802389216610320024737794866146278049909070737112406623364496696264636590659642766482581671063555698611386082083134299033228875814703800523164947369908691848142946246068260548269445908595580910745778907478681603971818403801719393178729417103768001631530771281239844534886236040281579582169476005541574905620489612005689062594319333281198796507733339469110531747824974135577501073516922531077693606327979975810287098983911118438093944437825238059941221448678972088201007302074931383594443920781988888488013408705777673268300977427427096824649522563050808166047427565633667072\n", + "200690946458808773904043874740111401542900039936103016227009407591374163346911165241527841802563500750104510906972168308836037377191303333227164028316489208921028813129748071869276041856893613646664115564520707636712397361735495161798784566891551633519066371965923138046714355604778433220640049475589732292556099818141474224813246728993392529273181319285532965163342127111397222772164166268598066457751629407601046329894739817383696285892492136521096538891817191161821491557814957363207943636807603438786357458834207536003263061542562479689069772472080563159164338952011083149811240979224011378125188638666562397593015466678938221063495649948271155002147033845062155387212655959951620574197967822236876187888875650476119882442897357944176402014604149862767188887841563977776976026817411555346536601954854854193649299045126101616332094855131267334144\n", + "401381892917617547808087749480222803085800079872206032454018815182748326693822330483055683605127001500209021813944336617672074754382606666454328056632978417842057626259496143738552083713787227293328231129041415273424794723470990323597569133783103267038132743931846276093428711209556866441280098951179464585112199636282948449626493457986785058546362638571065930326684254222794445544328332537196132915503258815202092659789479634767392571784984273042193077783634382323642983115629914726415887273615206877572714917668415072006526123085124959378139544944161126318328677904022166299622481958448022756250377277333124795186030933357876442126991299896542310004294067690124310774425311919903241148395935644473752375777751300952239764885794715888352804029208299725534377775683127955553952053634823110693073203909709708387298598090252203232664189710262534668288\n", + "802763785835235095616175498960445606171600159744412064908037630365496653387644660966111367210254003000418043627888673235344149508765213332908656113265956835684115252518992287477104167427574454586656462258082830546849589446941980647195138267566206534076265487863692552186857422419113732882560197902358929170224399272565896899252986915973570117092725277142131860653368508445588891088656665074392265831006517630404185319578959269534785143569968546084386155567268764647285966231259829452831774547230413755145429835336830144013052246170249918756279089888322252636657355808044332599244963916896045512500754554666249590372061866715752884253982599793084620008588135380248621548850623839806482296791871288947504751555502601904479529771589431776705608058416599451068755551366255911107904107269646221386146407819419416774597196180504406465328379420525069336576\n", + "1605527571670470191232350997920891212343200319488824129816075260730993306775289321932222734420508006000836087255777346470688299017530426665817312226531913671368230505037984574954208334855148909173312924516165661093699178893883961294390276535132413068152530975727385104373714844838227465765120395804717858340448798545131793798505973831947140234185450554284263721306737016891177782177313330148784531662013035260808370639157918539069570287139937092168772311134537529294571932462519658905663549094460827510290859670673660288026104492340499837512558179776644505273314711616088665198489927833792091025001509109332499180744123733431505768507965199586169240017176270760497243097701247679612964593583742577895009503111005203808959059543178863553411216116833198902137511102732511822215808214539292442772292815638838833549194392361008812930656758841050138673152\n", + "3211055143340940382464701995841782424686400638977648259632150521461986613550578643864445468841016012001672174511554692941376598035060853331634624453063827342736461010075969149908416669710297818346625849032331322187398357787767922588780553070264826136305061951454770208747429689676454931530240791609435716680897597090263587597011947663894280468370901108568527442613474033782355564354626660297569063324026070521616741278315837078139140574279874184337544622269075058589143864925039317811327098188921655020581719341347320576052208984680999675025116359553289010546629423232177330396979855667584182050003018218664998361488247466863011537015930399172338480034352541520994486195402495359225929187167485155790019006222010407617918119086357727106822432233666397804275022205465023644431616429078584885544585631277677667098388784722017625861313517682100277346304\n", + "6422110286681880764929403991683564849372801277955296519264301042923973227101157287728890937682032024003344349023109385882753196070121706663269248906127654685472922020151938299816833339420595636693251698064662644374796715575535845177561106140529652272610123902909540417494859379352909863060481583218871433361795194180527175194023895327788560936741802217137054885226948067564711128709253320595138126648052141043233482556631674156278281148559748368675089244538150117178287729850078635622654196377843310041163438682694641152104417969361999350050232719106578021093258846464354660793959711335168364100006036437329996722976494933726023074031860798344676960068705083041988972390804990718451858374334970311580038012444020815235836238172715454213644864467332795608550044410930047288863232858157169771089171262555355334196777569444035251722627035364200554692608\n", + "12844220573363761529858807983367129698745602555910593038528602085847946454202314575457781875364064048006688698046218771765506392140243413326538497812255309370945844040303876599633666678841191273386503396129325288749593431151071690355122212281059304545220247805819080834989718758705819726120963166437742866723590388361054350388047790655577121873483604434274109770453896135129422257418506641190276253296104282086466965113263348312556562297119496737350178489076300234356575459700157271245308392755686620082326877365389282304208835938723998700100465438213156042186517692928709321587919422670336728200012072874659993445952989867452046148063721596689353920137410166083977944781609981436903716748669940623160076024888041630471672476345430908427289728934665591217100088821860094577726465716314339542178342525110710668393555138888070503445254070728401109385216\n", + "25688441146727523059717615966734259397491205111821186077057204171695892908404629150915563750728128096013377396092437543531012784280486826653076995624510618741891688080607753199267333357682382546773006792258650577499186862302143380710244424562118609090440495611638161669979437517411639452241926332875485733447180776722108700776095581311154243746967208868548219540907792270258844514837013282380552506592208564172933930226526696625113124594238993474700356978152600468713150919400314542490616785511373240164653754730778564608417671877447997400200930876426312084373035385857418643175838845340673456400024145749319986891905979734904092296127443193378707840274820332167955889563219962873807433497339881246320152049776083260943344952690861816854579457869331182434200177643720189155452931432628679084356685050221421336787110277776141006890508141456802218770432\n", + "51376882293455046119435231933468518794982410223642372154114408343391785816809258301831127501456256192026754792184875087062025568560973653306153991249021237483783376161215506398534666715364765093546013584517301154998373724604286761420488849124237218180880991223276323339958875034823278904483852665750971466894361553444217401552191162622308487493934417737096439081815584540517689029674026564761105013184417128345867860453053393250226249188477986949400713956305200937426301838800629084981233571022746480329307509461557129216835343754895994800401861752852624168746070771714837286351677690681346912800048291498639973783811959469808184592254886386757415680549640664335911779126439925747614866994679762492640304099552166521886689905381723633709158915738662364868400355287440378310905862865257358168713370100442842673574220555552282013781016282913604437540864\n", + "102753764586910092238870463866937037589964820447284744308228816686783571633618516603662255002912512384053509584369750174124051137121947306612307982498042474967566752322431012797069333430729530187092027169034602309996747449208573522840977698248474436361761982446552646679917750069646557808967705331501942933788723106888434803104382325244616974987868835474192878163631169081035378059348053129522210026368834256691735720906106786500452498376955973898801427912610401874852603677601258169962467142045492960658615018923114258433670687509791989600803723505705248337492141543429674572703355381362693825600096582997279947567623918939616369184509772773514831361099281328671823558252879851495229733989359524985280608199104333043773379810763447267418317831477324729736800710574880756621811725730514716337426740200885685347148441111104564027562032565827208875081728\n", + "205507529173820184477740927733874075179929640894569488616457633373567143267237033207324510005825024768107019168739500348248102274243894613224615964996084949935133504644862025594138666861459060374184054338069204619993494898417147045681955396496948872723523964893105293359835500139293115617935410663003885867577446213776869606208764650489233949975737670948385756327262338162070756118696106259044420052737668513383471441812213573000904996753911947797602855825220803749705207355202516339924934284090985921317230037846228516867341375019583979201607447011410496674984283086859349145406710762725387651200193165994559895135247837879232738369019545547029662722198562657343647116505759702990459467978719049970561216398208666087546759621526894534836635662954649459473601421149761513243623451461029432674853480401771370694296882222209128055124065131654417750163456\n", + "411015058347640368955481855467748150359859281789138977232915266747134286534474066414649020011650049536214038337479000696496204548487789226449231929992169899870267009289724051188277333722918120748368108676138409239986989796834294091363910792993897745447047929786210586719671000278586231235870821326007771735154892427553739212417529300978467899951475341896771512654524676324141512237392212518088840105475337026766942883624427146001809993507823895595205711650441607499410414710405032679849868568181971842634460075692457033734682750039167958403214894022820993349968566173718698290813421525450775302400386331989119790270495675758465476738039091094059325444397125314687294233011519405980918935957438099941122432796417332175093519243053789069673271325909298918947202842299523026487246902922058865349706960803542741388593764444418256110248130263308835500326912\n", + "822030116695280737910963710935496300719718563578277954465830533494268573068948132829298040023300099072428076674958001392992409096975578452898463859984339799740534018579448102376554667445836241496736217352276818479973979593668588182727821585987795490894095859572421173439342000557172462471741642652015543470309784855107478424835058601956935799902950683793543025309049352648283024474784425036177680210950674053533885767248854292003619987015647791190411423300883214998820829420810065359699737136363943685268920151384914067469365500078335916806429788045641986699937132347437396581626843050901550604800772663978239580540991351516930953476078182188118650888794250629374588466023038811961837871914876199882244865592834664350187038486107578139346542651818597837894405684599046052974493805844117730699413921607085482777187528888836512220496260526617671000653824\n", + "1644060233390561475821927421870992601439437127156555908931661066988537146137896265658596080046600198144856153349916002785984818193951156905796927719968679599481068037158896204753109334891672482993472434704553636959947959187337176365455643171975590981788191719144842346878684001114344924943483285304031086940619569710214956849670117203913871599805901367587086050618098705296566048949568850072355360421901348107067771534497708584007239974031295582380822846601766429997641658841620130719399474272727887370537840302769828134938731000156671833612859576091283973399874264694874793163253686101803101209601545327956479161081982703033861906952156364376237301777588501258749176932046077623923675743829752399764489731185669328700374076972215156278693085303637195675788811369198092105948987611688235461398827843214170965554375057777673024440992521053235342001307648\n", + "3288120466781122951643854843741985202878874254313111817863322133977074292275792531317192160093200396289712306699832005571969636387902313811593855439937359198962136074317792409506218669783344965986944869409107273919895918374674352730911286343951181963576383438289684693757368002228689849886966570608062173881239139420429913699340234407827743199611802735174172101236197410593132097899137700144710720843802696214135543068995417168014479948062591164761645693203532859995283317683240261438798948545455774741075680605539656269877462000313343667225719152182567946799748529389749586326507372203606202419203090655912958322163965406067723813904312728752474603555177002517498353864092155247847351487659504799528979462371338657400748153944430312557386170607274391351577622738396184211897975223376470922797655686428341931108750115555346048881985042106470684002615296\n", + "6576240933562245903287709687483970405757748508626223635726644267954148584551585062634384320186400792579424613399664011143939272775804627623187710879874718397924272148635584819012437339566689931973889738818214547839791836749348705461822572687902363927152766876579369387514736004457379699773933141216124347762478278840859827398680468815655486399223605470348344202472394821186264195798275400289421441687605392428271086137990834336028959896125182329523291386407065719990566635366480522877597897090911549482151361211079312539754924000626687334451438304365135893599497058779499172653014744407212404838406181311825916644327930812135447627808625457504949207110354005034996707728184310495694702975319009599057958924742677314801496307888860625114772341214548782703155245476792368423795950446752941845595311372856683862217500231110692097763970084212941368005230592\n", + "13152481867124491806575419374967940811515497017252447271453288535908297169103170125268768640372801585158849226799328022287878545551609255246375421759749436795848544297271169638024874679133379863947779477636429095679583673498697410923645145375804727854305533753158738775029472008914759399547866282432248695524956557681719654797360937631310972798447210940696688404944789642372528391596550800578842883375210784856542172275981668672057919792250364659046582772814131439981133270732961045755195794181823098964302722422158625079509848001253374668902876608730271787198994117558998345306029488814424809676812362623651833288655861624270895255617250915009898414220708010069993415456368620991389405950638019198115917849485354629602992615777721250229544682429097565406310490953584736847591900893505883691190622745713367724435000462221384195527940168425882736010461184\n", + "26304963734248983613150838749935881623030994034504894542906577071816594338206340250537537280745603170317698453598656044575757091103218510492750843519498873591697088594542339276049749358266759727895558955272858191359167346997394821847290290751609455708611067506317477550058944017829518799095732564864497391049913115363439309594721875262621945596894421881393376809889579284745056783193101601157685766750421569713084344551963337344115839584500729318093165545628262879962266541465922091510391588363646197928605444844317250159019696002506749337805753217460543574397988235117996690612058977628849619353624725247303666577311723248541790511234501830019796828441416020139986830912737241982778811901276038396231835698970709259205985231555442500459089364858195130812620981907169473695183801787011767382381245491426735448870000924442768391055880336851765472020922368\n", + "52609927468497967226301677499871763246061988069009789085813154143633188676412680501075074561491206340635396907197312089151514182206437020985501687038997747183394177189084678552099498716533519455791117910545716382718334693994789643694580581503218911417222135012634955100117888035659037598191465129728994782099826230726878619189443750525243891193788843762786753619779158569490113566386203202315371533500843139426168689103926674688231679169001458636186331091256525759924533082931844183020783176727292395857210889688634500318039392005013498675611506434921087148795976470235993381224117955257699238707249450494607333154623446497083581022469003660039593656882832040279973661825474483965557623802552076792463671397941418518411970463110885000918178729716390261625241963814338947390367603574023534764762490982853470897740001848885536782111760673703530944041844736\n", + "105219854936995934452603354999743526492123976138019578171626308287266377352825361002150149122982412681270793814394624178303028364412874041971003374077995494366788354378169357104198997433067038911582235821091432765436669387989579287389161163006437822834444270025269910200235776071318075196382930259457989564199652461453757238378887501050487782387577687525573507239558317138980227132772406404630743067001686278852337378207853349376463358338002917272372662182513051519849066165863688366041566353454584791714421779377269000636078784010026997351223012869842174297591952940471986762448235910515398477414498900989214666309246892994167162044938007320079187313765664080559947323650948967931115247605104153584927342795882837036823940926221770001836357459432780523250483927628677894780735207148047069529524981965706941795480003697771073564223521347407061888083689472\n", + "210439709873991868905206709999487052984247952276039156343252616574532754705650722004300298245964825362541587628789248356606056728825748083942006748155990988733576708756338714208397994866134077823164471642182865530873338775979158574778322326012875645668888540050539820400471552142636150392765860518915979128399304922907514476757775002100975564775155375051147014479116634277960454265544812809261486134003372557704674756415706698752926716676005834544745324365026103039698132331727376732083132706909169583428843558754538001272157568020053994702446025739684348595183905880943973524896471821030796954828997801978429332618493785988334324089876014640158374627531328161119894647301897935862230495210208307169854685591765674073647881852443540003672714918865561046500967855257355789561470414296094139059049963931413883590960007395542147128447042694814123776167378944\n", + "420879419747983737810413419998974105968495904552078312686505233149065509411301444008600596491929650725083175257578496713212113457651496167884013496311981977467153417512677428416795989732268155646328943284365731061746677551958317149556644652025751291337777080101079640800943104285272300785531721037831958256798609845815028953515550004201951129550310750102294028958233268555920908531089625618522972268006745115409349512831413397505853433352011669089490648730052206079396264663454753464166265413818339166857687117509076002544315136040107989404892051479368697190367811761887947049792943642061593909657995603956858665236987571976668648179752029280316749255062656322239789294603795871724460990420416614339709371183531348147295763704887080007345429837731122093001935710514711579122940828592188278118099927862827767181920014791084294256894085389628247552334757888\n", + "841758839495967475620826839997948211936991809104156625373010466298131018822602888017201192983859301450166350515156993426424226915302992335768026992623963954934306835025354856833591979464536311292657886568731462123493355103916634299113289304051502582675554160202159281601886208570544601571063442075663916513597219691630057907031100008403902259100621500204588057916466537111841817062179251237045944536013490230818699025662826795011706866704023338178981297460104412158792529326909506928332530827636678333715374235018152005088630272080215978809784102958737394380735623523775894099585887284123187819315991207913717330473975143953337296359504058560633498510125312644479578589207591743448921980840833228679418742367062696294591527409774160014690859675462244186003871421029423158245881657184376556236199855725655534363840029582168588513788170779256495104669515776\n", + "1683517678991934951241653679995896423873983618208313250746020932596262037645205776034402385967718602900332701030313986852848453830605984671536053985247927909868613670050709713667183958929072622585315773137462924246986710207833268598226578608103005165351108320404318563203772417141089203142126884151327833027194439383260115814062200016807804518201243000409176115832933074223683634124358502474091889072026980461637398051325653590023413733408046676357962594920208824317585058653819013856665061655273356667430748470036304010177260544160431957619568205917474788761471247047551788199171774568246375638631982415827434660947950287906674592719008117121266997020250625288959157178415183486897843961681666457358837484734125392589183054819548320029381719350924488372007742842058846316491763314368753112472399711451311068727680059164337177027576341558512990209339031552\n", + "3367035357983869902483307359991792847747967236416626501492041865192524075290411552068804771935437205800665402060627973705696907661211969343072107970495855819737227340101419427334367917858145245170631546274925848493973420415666537196453157216206010330702216640808637126407544834282178406284253768302655666054388878766520231628124400033615609036402486000818352231665866148447367268248717004948183778144053960923274796102651307180046827466816093352715925189840417648635170117307638027713330123310546713334861496940072608020354521088320863915239136411834949577522942494095103576398343549136492751277263964831654869321895900575813349185438016234242533994040501250577918314356830366973795687923363332914717674969468250785178366109639096640058763438701848976744015485684117692632983526628737506224944799422902622137455360118328674354055152683117025980418678063104\n", + "6734070715967739804966614719983585695495934472833253002984083730385048150580823104137609543870874411601330804121255947411393815322423938686144215940991711639474454680202838854668735835716290490341263092549851696987946840831333074392906314432412020661404433281617274252815089668564356812568507536605311332108777757533040463256248800067231218072804972001636704463331732296894734536497434009896367556288107921846549592205302614360093654933632186705431850379680835297270340234615276055426660246621093426669722993880145216040709042176641727830478272823669899155045884988190207152796687098272985502554527929663309738643791801151626698370876032468485067988081002501155836628713660733947591375846726665829435349938936501570356732219278193280117526877403697953488030971368235385265967053257475012449889598845805244274910720236657348708110305366234051960837356126208\n", + "13468141431935479609933229439967171390991868945666506005968167460770096301161646208275219087741748823202661608242511894822787630644847877372288431881983423278948909360405677709337471671432580980682526185099703393975893681662666148785812628864824041322808866563234548505630179337128713625137015073210622664217555515066080926512497600134462436145609944003273408926663464593789469072994868019792735112576215843693099184410605228720187309867264373410863700759361670594540680469230552110853320493242186853339445987760290432081418084353283455660956545647339798310091769976380414305593374196545971005109055859326619477287583602303253396741752064936970135976162005002311673257427321467895182751693453331658870699877873003140713464438556386560235053754807395906976061942736470770531934106514950024899779197691610488549821440473314697416220610732468103921674712252416\n", + "26936282863870959219866458879934342781983737891333012011936334921540192602323292416550438175483497646405323216485023789645575261289695754744576863763966846557897818720811355418674943342865161961365052370199406787951787363325332297571625257729648082645617733126469097011260358674257427250274030146421245328435111030132161853024995200268924872291219888006546817853326929187578938145989736039585470225152431687386198368821210457440374619734528746821727401518723341189081360938461104221706640986484373706678891975520580864162836168706566911321913091294679596620183539952760828611186748393091942010218111718653238954575167204606506793483504129873940271952324010004623346514854642935790365503386906663317741399755746006281426928877112773120470107509614791813952123885472941541063868213029900049799558395383220977099642880946629394832441221464936207843349424504832\n", + "53872565727741918439732917759868685563967475782666024023872669843080385204646584833100876350966995292810646432970047579291150522579391509489153727527933693115795637441622710837349886685730323922730104740398813575903574726650664595143250515459296165291235466252938194022520717348514854500548060292842490656870222060264323706049990400537849744582439776013093635706653858375157876291979472079170940450304863374772396737642420914880749239469057493643454803037446682378162721876922208443413281972968747413357783951041161728325672337413133822643826182589359193240367079905521657222373496786183884020436223437306477909150334409213013586967008259747880543904648020009246693029709285871580731006773813326635482799511492012562853857754225546240940215019229583627904247770945883082127736426059800099599116790766441954199285761893258789664882442929872415686698849009664\n", + "107745131455483836879465835519737371127934951565332048047745339686160770409293169666201752701933990585621292865940095158582301045158783018978307455055867386231591274883245421674699773371460647845460209480797627151807149453301329190286501030918592330582470932505876388045041434697029709001096120585684981313740444120528647412099980801075699489164879552026187271413307716750315752583958944158341880900609726749544793475284841829761498478938114987286909606074893364756325443753844416886826563945937494826715567902082323456651344674826267645287652365178718386480734159811043314444746993572367768040872446874612955818300668818426027173934016519495761087809296040018493386059418571743161462013547626653270965599022984025125707715508451092481880430038459167255808495541891766164255472852119600199198233581532883908398571523786517579329764885859744831373397698019328\n", + "215490262910967673758931671039474742255869903130664096095490679372321540818586339332403505403867981171242585731880190317164602090317566037956614910111734772463182549766490843349399546742921295690920418961595254303614298906602658380573002061837184661164941865011752776090082869394059418002192241171369962627480888241057294824199961602151398978329759104052374542826615433500631505167917888316683761801219453499089586950569683659522996957876229974573819212149786729512650887507688833773653127891874989653431135804164646913302689349652535290575304730357436772961468319622086628889493987144735536081744893749225911636601337636852054347868033038991522175618592080036986772118837143486322924027095253306541931198045968050251415431016902184963760860076918334511616991083783532328510945704239200398396467163065767816797143047573035158659529771719489662746795396038656\n", + "430980525821935347517863342078949484511739806261328192190981358744643081637172678664807010807735962342485171463760380634329204180635132075913229820223469544926365099532981686698799093485842591381840837923190508607228597813205316761146004123674369322329883730023505552180165738788118836004384482342739925254961776482114589648399923204302797956659518208104749085653230867001263010335835776633367523602438906998179173901139367319045993915752459949147638424299573459025301775015377667547306255783749979306862271608329293826605378699305070581150609460714873545922936639244173257778987974289471072163489787498451823273202675273704108695736066077983044351237184160073973544237674286972645848054190506613083862396091936100502830862033804369927521720153836669023233982167567064657021891408478400796792934326131535633594286095146070317319059543438979325493590792077312\n", + "861961051643870695035726684157898969023479612522656384381962717489286163274345357329614021615471924684970342927520761268658408361270264151826459640446939089852730199065963373397598186971685182763681675846381017214457195626410633522292008247348738644659767460047011104360331477576237672008768964685479850509923552964229179296799846408605595913319036416209498171306461734002526020671671553266735047204877813996358347802278734638091987831504919898295276848599146918050603550030755335094612511567499958613724543216658587653210757398610141162301218921429747091845873278488346515557975948578942144326979574996903646546405350547408217391472132155966088702474368320147947088475348573945291696108381013226167724792183872201005661724067608739855043440307673338046467964335134129314043782816956801593585868652263071267188572190292140634638119086877958650987181584154624\n", + "1723922103287741390071453368315797938046959225045312768763925434978572326548690714659228043230943849369940685855041522537316816722540528303652919280893878179705460398131926746795196373943370365527363351692762034428914391252821267044584016494697477289319534920094022208720662955152475344017537929370959701019847105928458358593599692817211191826638072832418996342612923468005052041343343106533470094409755627992716695604557469276183975663009839796590553697198293836101207100061510670189225023134999917227449086433317175306421514797220282324602437842859494183691746556976693031115951897157884288653959149993807293092810701094816434782944264311932177404948736640295894176950697147890583392216762026452335449584367744402011323448135217479710086880615346676092935928670268258628087565633913603187171737304526142534377144380584281269276238173755917301974363168309248\n", + "3447844206575482780142906736631595876093918450090625537527850869957144653097381429318456086461887698739881371710083045074633633445081056607305838561787756359410920796263853493590392747886740731054726703385524068857828782505642534089168032989394954578639069840188044417441325910304950688035075858741919402039694211856916717187199385634422383653276145664837992685225846936010104082686686213066940188819511255985433391209114938552367951326019679593181107394396587672202414200123021340378450046269999834454898172866634350612843029594440564649204875685718988367383493113953386062231903794315768577307918299987614586185621402189632869565888528623864354809897473280591788353901394295781166784433524052904670899168735488804022646896270434959420173761230693352185871857340536517256175131267827206374343474609052285068754288761168562538552476347511834603948726336618496\n", + "6895688413150965560285813473263191752187836900181251075055701739914289306194762858636912172923775397479762743420166090149267266890162113214611677123575512718821841592527706987180785495773481462109453406771048137715657565011285068178336065978789909157278139680376088834882651820609901376070151717483838804079388423713833434374398771268844767306552291329675985370451693872020208165373372426133880377639022511970866782418229877104735902652039359186362214788793175344404828400246042680756900092539999668909796345733268701225686059188881129298409751371437976734766986227906772124463807588631537154615836599975229172371242804379265739131777057247728709619794946561183576707802788591562333568867048105809341798337470977608045293792540869918840347522461386704371743714681073034512350262535654412748686949218104570137508577522337125077104952695023669207897452673236992\n", + "13791376826301931120571626946526383504375673800362502150111403479828578612389525717273824345847550794959525486840332180298534533780324226429223354247151025437643683185055413974361570991546962924218906813542096275431315130022570136356672131957579818314556279360752177669765303641219802752140303434967677608158776847427666868748797542537689534613104582659351970740903387744040416330746744852267760755278045023941733564836459754209471805304078718372724429577586350688809656800492085361513800185079999337819592691466537402451372118377762258596819502742875953469533972455813544248927615177263074309231673199950458344742485608758531478263554114495457419239589893122367153415605577183124667137734096211618683596674941955216090587585081739837680695044922773408743487429362146069024700525071308825497373898436209140275017155044674250154209905390047338415794905346473984\n", + "27582753652603862241143253893052767008751347600725004300222806959657157224779051434547648691695101589919050973680664360597069067560648452858446708494302050875287366370110827948723141983093925848437813627084192550862630260045140272713344263915159636629112558721504355339530607282439605504280606869935355216317553694855333737497595085075379069226209165318703941481806775488080832661493489704535521510556090047883467129672919508418943610608157436745448859155172701377619313600984170723027600370159998675639185382933074804902744236755524517193639005485751906939067944911627088497855230354526148618463346399900916689484971217517062956527108228990914838479179786244734306831211154366249334275468192423237367193349883910432181175170163479675361390089845546817486974858724292138049401050142617650994747796872418280550034310089348500308419810780094676831589810692947968\n", + "55165507305207724482286507786105534017502695201450008600445613919314314449558102869095297383390203179838101947361328721194138135121296905716893416988604101750574732740221655897446283966187851696875627254168385101725260520090280545426688527830319273258225117443008710679061214564879211008561213739870710432635107389710667474995190170150758138452418330637407882963613550976161665322986979409071043021112180095766934259345839016837887221216314873490897718310345402755238627201968341446055200740319997351278370765866149609805488473511049034387278010971503813878135889823254176995710460709052297236926692799801833378969942435034125913054216457981829676958359572489468613662422308732498668550936384846474734386699767820864362350340326959350722780179691093634973949717448584276098802100285235301989495593744836561100068620178697000616839621560189353663179621385895936\n", + "110331014610415448964573015572211068035005390402900017200891227838628628899116205738190594766780406359676203894722657442388276270242593811433786833977208203501149465480443311794892567932375703393751254508336770203450521040180561090853377055660638546516450234886017421358122429129758422017122427479741420865270214779421334949990380340301516276904836661274815765927227101952323330645973958818142086042224360191533868518691678033675774442432629746981795436620690805510477254403936682892110401480639994702556741531732299219610976947022098068774556021943007627756271779646508353991420921418104594473853385599603666757939884870068251826108432915963659353916719144978937227324844617464997337101872769692949468773399535641728724700680653918701445560359382187269947899434897168552197604200570470603978991187489673122200137240357394001233679243120378707326359242771791872\n", + "220662029220830897929146031144422136070010780805800034401782455677257257798232411476381189533560812719352407789445314884776552540485187622867573667954416407002298930960886623589785135864751406787502509016673540406901042080361122181706754111321277093032900469772034842716244858259516844034244854959482841730540429558842669899980760680603032553809673322549631531854454203904646661291947917636284172084448720383067737037383356067351548884865259493963590873241381611020954508807873365784220802961279989405113483063464598439221953894044196137549112043886015255512543559293016707982841842836209188947706771199207333515879769740136503652216865831927318707833438289957874454649689234929994674203745539385898937546799071283457449401361307837402891120718764374539895798869794337104395208401140941207957982374979346244400274480714788002467358486240757414652718485543583744\n", + "441324058441661795858292062288844272140021561611600068803564911354514515596464822952762379067121625438704815578890629769553105080970375245735147335908832814004597861921773247179570271729502813575005018033347080813802084160722244363413508222642554186065800939544069685432489716519033688068489709918965683461080859117685339799961521361206065107619346645099263063708908407809293322583895835272568344168897440766135474074766712134703097769730518987927181746482763222041909017615746731568441605922559978810226966126929196878443907788088392275098224087772030511025087118586033415965683685672418377895413542398414667031759539480273007304433731663854637415666876579915748909299378469859989348407491078771797875093598142566914898802722615674805782241437528749079791597739588674208790416802281882415915964749958692488800548961429576004934716972481514829305436971087167488\n", + "882648116883323591716584124577688544280043123223200137607129822709029031192929645905524758134243250877409631157781259539106210161940750491470294671817665628009195723843546494359140543459005627150010036066694161627604168321444488726827016445285108372131601879088139370864979433038067376136979419837931366922161718235370679599923042722412130215238693290198526127417816815618586645167791670545136688337794881532270948149533424269406195539461037975854363492965526444083818035231493463136883211845119957620453932253858393756887815576176784550196448175544061022050174237172066831931367371344836755790827084796829334063519078960546014608867463327709274831333753159831497818598756939719978696814982157543595750187196285133829797605445231349611564482875057498159583195479177348417580833604563764831831929499917384977601097922859152009869433944963029658610873942174334976\n", + "1765296233766647183433168249155377088560086246446400275214259645418058062385859291811049516268486501754819262315562519078212420323881500982940589343635331256018391447687092988718281086918011254300020072133388323255208336642888977453654032890570216744263203758176278741729958866076134752273958839675862733844323436470741359199846085444824260430477386580397052254835633631237173290335583341090273376675589763064541896299066848538812391078922075951708726985931052888167636070462986926273766423690239915240907864507716787513775631152353569100392896351088122044100348474344133663862734742689673511581654169593658668127038157921092029217734926655418549662667506319662995637197513879439957393629964315087191500374392570267659595210890462699223128965750114996319166390958354696835161667209127529663663858999834769955202195845718304019738867889926059317221747884348669952\n", + "3530592467533294366866336498310754177120172492892800550428519290836116124771718583622099032536973003509638524631125038156424840647763001965881178687270662512036782895374185977436562173836022508600040144266776646510416673285777954907308065781140433488526407516352557483459917732152269504547917679351725467688646872941482718399692170889648520860954773160794104509671267262474346580671166682180546753351179526129083792598133697077624782157844151903417453971862105776335272140925973852547532847380479830481815729015433575027551262304707138200785792702176244088200696948688267327725469485379347023163308339187317336254076315842184058435469853310837099325335012639325991274395027758879914787259928630174383000748785140535319190421780925398446257931500229992638332781916709393670323334418255059327327717999669539910404391691436608039477735779852118634443495768697339904\n", + "7061184935066588733732672996621508354240344985785601100857038581672232249543437167244198065073946007019277049262250076312849681295526003931762357374541325024073565790748371954873124347672045017200080288533553293020833346571555909814616131562280866977052815032705114966919835464304539009095835358703450935377293745882965436799384341779297041721909546321588209019342534524948693161342333364361093506702359052258167585196267394155249564315688303806834907943724211552670544281851947705095065694760959660963631458030867150055102524609414276401571585404352488176401393897376534655450938970758694046326616678374634672508152631684368116870939706621674198650670025278651982548790055517759829574519857260348766001497570281070638380843561850796892515863000459985276665563833418787340646668836510118654655435999339079820808783382873216078955471559704237268886991537394679808\n", + "14122369870133177467465345993243016708480689971571202201714077163344464499086874334488396130147892014038554098524500152625699362591052007863524714749082650048147131581496743909746248695344090034400160577067106586041666693143111819629232263124561733954105630065410229933839670928609078018191670717406901870754587491765930873598768683558594083443819092643176418038685069049897386322684666728722187013404718104516335170392534788310499128631376607613669815887448423105341088563703895410190131389521919321927262916061734300110205049218828552803143170808704976352802787794753069310901877941517388092653233356749269345016305263368736233741879413243348397301340050557303965097580111035519659149039714520697532002995140562141276761687123701593785031726000919970553331127666837574681293337673020237309310871998678159641617566765746432157910943119408474537773983074789359616\n", + "28244739740266354934930691986486033416961379943142404403428154326688928998173748668976792260295784028077108197049000305251398725182104015727049429498165300096294263162993487819492497390688180068800321154134213172083333386286223639258464526249123467908211260130820459867679341857218156036383341434813803741509174983531861747197537367117188166887638185286352836077370138099794772645369333457444374026809436209032670340785069576620998257262753215227339631774896846210682177127407790820380262779043838643854525832123468600220410098437657105606286341617409952705605575589506138621803755883034776185306466713498538690032610526737472467483758826486696794602680101114607930195160222071039318298079429041395064005990281124282553523374247403187570063452001839941106662255333675149362586675346040474618621743997356319283235133531492864315821886238816949075547966149578719232\n", + "56489479480532709869861383972972066833922759886284808806856308653377857996347497337953584520591568056154216394098000610502797450364208031454098858996330600192588526325986975638984994781376360137600642308268426344166666772572447278516929052498246935816422520261640919735358683714436312072766682869627607483018349967063723494395074734234376333775276370572705672154740276199589545290738666914888748053618872418065340681570139153241996514525506430454679263549793692421364354254815581640760525558087677287709051664246937200440820196875314211212572683234819905411211151179012277243607511766069552370612933426997077380065221053474944934967517652973393589205360202229215860390320444142078636596158858082790128011980562248565107046748494806375140126904003679882213324510667350298725173350692080949237243487994712638566470267062985728631643772477633898151095932299157438464\n", + "112978958961065419739722767945944133667845519772569617613712617306755715992694994675907169041183136112308432788196001221005594900728416062908197717992661200385177052651973951277969989562752720275201284616536852688333333545144894557033858104996493871632845040523281839470717367428872624145533365739255214966036699934127446988790149468468752667550552741145411344309480552399179090581477333829777496107237744836130681363140278306483993029051012860909358527099587384842728708509631163281521051116175354575418103328493874400881640393750628422425145366469639810822422302358024554487215023532139104741225866853994154760130442106949889869935035305946787178410720404458431720780640888284157273192317716165580256023961124497130214093496989612750280253808007359764426649021334700597450346701384161898474486975989425277132940534125971457263287544955267796302191864598314876928\n", + "225957917922130839479445535891888267335691039545139235227425234613511431985389989351814338082366272224616865576392002442011189801456832125816395435985322400770354105303947902555939979125505440550402569233073705376666667090289789114067716209992987743265690081046563678941434734857745248291066731478510429932073399868254893977580298936937505335101105482290822688618961104798358181162954667659554992214475489672261362726280556612967986058102025721818717054199174769685457417019262326563042102232350709150836206656987748801763280787501256844850290732939279621644844604716049108974430047064278209482451733707988309520260884213899779739870070611893574356821440808916863441561281776568314546384635432331160512047922248994260428186993979225500560507616014719528853298042669401194900693402768323796948973951978850554265881068251942914526575089910535592604383729196629753856\n", + "451915835844261678958891071783776534671382079090278470454850469227022863970779978703628676164732544449233731152784004884022379602913664251632790871970644801540708210607895805111879958251010881100805138466147410753333334180579578228135432419985975486531380162093127357882869469715490496582133462957020859864146799736509787955160597873875010670202210964581645377237922209596716362325909335319109984428950979344522725452561113225935972116204051443637434108398349539370914834038524653126084204464701418301672413313975497603526561575002513689700581465878559243289689209432098217948860094128556418964903467415976619040521768427799559479740141223787148713642881617833726883122563553136629092769270864662321024095844497988520856373987958451001121015232029439057706596085338802389801386805536647593897947903957701108531762136503885829053150179821071185208767458393259507712\n", + "903831671688523357917782143567553069342764158180556940909700938454045727941559957407257352329465088898467462305568009768044759205827328503265581743941289603081416421215791610223759916502021762201610276932294821506666668361159156456270864839971950973062760324186254715765738939430980993164266925914041719728293599473019575910321195747750021340404421929163290754475844419193432724651818670638219968857901958689045450905122226451871944232408102887274868216796699078741829668077049306252168408929402836603344826627950995207053123150005027379401162931757118486579378418864196435897720188257112837929806934831953238081043536855599118959480282447574297427285763235667453766245127106273258185538541729324642048191688995977041712747975916902002242030464058878115413192170677604779602773611073295187795895807915402217063524273007771658106300359642142370417534916786519015424\n", + "1807663343377046715835564287135106138685528316361113881819401876908091455883119914814514704658930177796934924611136019536089518411654657006531163487882579206162832842431583220447519833004043524403220553864589643013333336722318312912541729679943901946125520648372509431531477878861961986328533851828083439456587198946039151820642391495500042680808843858326581508951688838386865449303637341276439937715803917378090901810244452903743888464816205774549736433593398157483659336154098612504336817858805673206689653255901990414106246300010054758802325863514236973158756837728392871795440376514225675859613869663906476162087073711198237918960564895148594854571526471334907532490254212546516371077083458649284096383377991954083425495951833804004484060928117756230826384341355209559205547222146590375591791615830804434127048546015543316212600719284284740835069833573038030848\n", + "3615326686754093431671128574270212277371056632722227763638803753816182911766239829629029409317860355593869849222272039072179036823309314013062326975765158412325665684863166440895039666008087048806441107729179286026666673444636625825083459359887803892251041296745018863062955757723923972657067703656166878913174397892078303641284782991000085361617687716653163017903377676773730898607274682552879875431607834756181803620488905807487776929632411549099472867186796314967318672308197225008673635717611346413379306511803980828212492600020109517604651727028473946317513675456785743590880753028451351719227739327812952324174147422396475837921129790297189709143052942669815064980508425093032742154166917298568192766755983908166850991903667608008968121856235512461652768682710419118411094444293180751183583231661608868254097092031086632425201438568569481670139667146076061696\n", + "7230653373508186863342257148540424554742113265444455527277607507632365823532479659258058818635720711187739698444544078144358073646618628026124653951530316824651331369726332881790079332016174097612882215458358572053333346889273251650166918719775607784502082593490037726125911515447847945314135407312333757826348795784156607282569565982000170723235375433306326035806755353547461797214549365105759750863215669512363607240977811614975553859264823098198945734373592629934637344616394450017347271435222692826758613023607961656424985200040219035209303454056947892635027350913571487181761506056902703438455478655625904648348294844792951675842259580594379418286105885339630129961016850186065484308333834597136385533511967816333701983807335216017936243712471024923305537365420838236822188888586361502367166463323217736508194184062173264850402877137138963340279334292152123392\n", + "14461306747016373726684514297080849109484226530888911054555215015264731647064959318516117637271441422375479396889088156288716147293237256052249307903060633649302662739452665763580158664032348195225764430916717144106666693778546503300333837439551215569004165186980075452251823030895695890628270814624667515652697591568313214565139131964000341446470750866612652071613510707094923594429098730211519501726431339024727214481955623229951107718529646196397891468747185259869274689232788900034694542870445385653517226047215923312849970400080438070418606908113895785270054701827142974363523012113805406876910957311251809296696589689585903351684519161188758836572211770679260259922033700372130968616667669194272771067023935632667403967614670432035872487424942049846611074730841676473644377777172723004734332926646435473016388368124346529700805754274277926680558668584304246784\n", + "28922613494032747453369028594161698218968453061777822109110430030529463294129918637032235274542882844750958793778176312577432294586474512104498615806121267298605325478905331527160317328064696390451528861833434288213333387557093006600667674879102431138008330373960150904503646061791391781256541629249335031305395183136626429130278263928000682892941501733225304143227021414189847188858197460423039003452862678049454428963911246459902215437059292392795782937494370519738549378465577800069389085740890771307034452094431846625699940800160876140837213816227791570540109403654285948727046024227610813753821914622503618593393179379171806703369038322377517673144423541358520519844067400744261937233335338388545542134047871265334807935229340864071744974849884099693222149461683352947288755554345446009468665853292870946032776736248693059401611508548555853361117337168608493568\n", + "57845226988065494906738057188323396437936906123555644218220860061058926588259837274064470549085765689501917587556352625154864589172949024208997231612242534597210650957810663054320634656129392780903057723666868576426666775114186013201335349758204862276016660747920301809007292123582783562513083258498670062610790366273252858260556527856001365785883003466450608286454042828379694377716394920846078006905725356098908857927822492919804430874118584785591565874988741039477098756931155600138778171481781542614068904188863693251399881600321752281674427632455583141080218807308571897454092048455221627507643829245007237186786358758343613406738076644755035346288847082717041039688134801488523874466670676777091084268095742530669615870458681728143489949699768199386444298923366705894577511108690892018937331706585741892065553472497386118803223017097111706722234674337216987136\n", + "115690453976130989813476114376646792875873812247111288436441720122117853176519674548128941098171531379003835175112705250309729178345898048417994463224485069194421301915621326108641269312258785561806115447333737152853333550228372026402670699516409724552033321495840603618014584247165567125026166516997340125221580732546505716521113055712002731571766006932901216572908085656759388755432789841692156013811450712197817715855644985839608861748237169571183131749977482078954197513862311200277556342963563085228137808377727386502799763200643504563348855264911166282160437614617143794908184096910443255015287658490014474373572717516687226813476153289510070692577694165434082079376269602977047748933341353554182168536191485061339231740917363456286979899399536398772888597846733411789155022217381784037874663413171483784131106944994772237606446034194223413444469348674433974272\n", + "231380907952261979626952228753293585751747624494222576872883440244235706353039349096257882196343062758007670350225410500619458356691796096835988926448970138388842603831242652217282538624517571123612230894667474305706667100456744052805341399032819449104066642991681207236029168494331134250052333033994680250443161465093011433042226111424005463143532013865802433145816171313518777510865579683384312027622901424395635431711289971679217723496474339142366263499954964157908395027724622400555112685927126170456275616755454773005599526401287009126697710529822332564320875229234287589816368193820886510030575316980028948747145435033374453626952306579020141385155388330868164158752539205954095497866682707108364337072382970122678463481834726912573959798799072797545777195693466823578310044434763568075749326826342967568262213889989544475212892068388446826888938697348867948544\n", + "462761815904523959253904457506587171503495248988445153745766880488471412706078698192515764392686125516015340700450821001238916713383592193671977852897940276777685207662485304434565077249035142247224461789334948611413334200913488105610682798065638898208133285983362414472058336988662268500104666067989360500886322930186022866084452222848010926287064027731604866291632342627037555021731159366768624055245802848791270863422579943358435446992948678284732526999909928315816790055449244801110225371854252340912551233510909546011199052802574018253395421059644665128641750458468575179632736387641773020061150633960057897494290870066748907253904613158040282770310776661736328317505078411908190995733365414216728674144765940245356926963669453825147919597598145595091554391386933647156620088869527136151498653652685935136524427779979088950425784136776893653777877394697735897088\n", + "925523631809047918507808915013174343006990497976890307491533760976942825412157396385031528785372251032030681400901642002477833426767184387343955705795880553555370415324970608869130154498070284494448923578669897222826668401826976211221365596131277796416266571966724828944116673977324537000209332135978721001772645860372045732168904445696021852574128055463209732583264685254075110043462318733537248110491605697582541726845159886716870893985897356569465053999819856631633580110898489602220450743708504681825102467021819092022398105605148036506790842119289330257283500916937150359265472775283546040122301267920115794988581740133497814507809226316080565540621553323472656635010156823816381991466730828433457348289531880490713853927338907650295839195196291190183108782773867294313240177739054272302997307305371870273048855559958177900851568273553787307555754789395471794176\n", + "1851047263618095837015617830026348686013980995953780614983067521953885650824314792770063057570744502064061362801803284004955666853534368774687911411591761107110740830649941217738260308996140568988897847157339794445653336803653952422442731192262555592832533143933449657888233347954649074000418664271957442003545291720744091464337808891392043705148256110926419465166529370508150220086924637467074496220983211395165083453690319773433741787971794713138930107999639713263267160221796979204440901487417009363650204934043638184044796211210296073013581684238578660514567001833874300718530945550567092080244602535840231589977163480266995629015618452632161131081243106646945313270020313647632763982933461656866914696579063760981427707854677815300591678390392582380366217565547734588626480355478108544605994614610743740546097711119916355801703136547107574615111509578790943588352\n", + "3702094527236191674031235660052697372027961991907561229966135043907771301648629585540126115141489004128122725603606568009911333707068737549375822823183522214221481661299882435476520617992281137977795694314679588891306673607307904844885462384525111185665066287866899315776466695909298148000837328543914884007090583441488182928675617782784087410296512221852838930333058741016300440173849274934148992441966422790330166907380639546867483575943589426277860215999279426526534320443593958408881802974834018727300409868087276368089592422420592146027163368477157321029134003667748601437061891101134184160489205071680463179954326960533991258031236905264322262162486213293890626540040627295265527965866923313733829393158127521962855415709355630601183356780785164760732435131095469177252960710956217089211989229221487481092195422239832711603406273094215149230223019157581887176704\n", + "7404189054472383348062471320105394744055923983815122459932270087815542603297259171080252230282978008256245451207213136019822667414137475098751645646367044428442963322599764870953041235984562275955591388629359177782613347214615809689770924769050222371330132575733798631552933391818596296001674657087829768014181166882976365857351235565568174820593024443705677860666117482032600880347698549868297984883932845580660333814761279093734967151887178852555720431998558853053068640887187916817763605949668037454600819736174552736179184844841184292054326736954314642058268007335497202874123782202268368320978410143360926359908653921067982516062473810528644524324972426587781253080081254590531055931733846627467658786316255043925710831418711261202366713561570329521464870262190938354505921421912434178423978458442974962184390844479665423206812546188430298460446038315163774353408\n", + "14808378108944766696124942640210789488111847967630244919864540175631085206594518342160504460565956016512490902414426272039645334828274950197503291292734088856885926645199529741906082471969124551911182777258718355565226694429231619379541849538100444742660265151467597263105866783637192592003349314175659536028362333765952731714702471131136349641186048887411355721332234964065201760695397099736595969767865691161320667629522558187469934303774357705111440863997117706106137281774375833635527211899336074909201639472349105472358369689682368584108653473908629284116536014670994405748247564404536736641956820286721852719817307842135965032124947621057289048649944853175562506160162509181062111863467693254935317572632510087851421662837422522404733427123140659042929740524381876709011842843824868356847956916885949924368781688959330846413625092376860596920892076630327548706816\n", + "29616756217889533392249885280421578976223695935260489839729080351262170413189036684321008921131912033024981804828852544079290669656549900395006582585468177713771853290399059483812164943938249103822365554517436711130453388858463238759083699076200889485320530302935194526211733567274385184006698628351319072056724667531905463429404942262272699282372097774822711442664469928130403521390794199473191939535731382322641335259045116374939868607548715410222881727994235412212274563548751667271054423798672149818403278944698210944716739379364737168217306947817258568233072029341988811496495128809073473283913640573443705439634615684271930064249895242114578097299889706351125012320325018362124223726935386509870635145265020175702843325674845044809466854246281318085859481048763753418023685687649736713695913833771899848737563377918661692827250184753721193841784153260655097413632\n", + "59233512435779066784499770560843157952447391870520979679458160702524340826378073368642017842263824066049963609657705088158581339313099800790013165170936355427543706580798118967624329887876498207644731109034873422260906777716926477518167398152401778970641060605870389052423467134548770368013397256702638144113449335063810926858809884524545398564744195549645422885328939856260807042781588398946383879071462764645282670518090232749879737215097430820445763455988470824424549127097503334542108847597344299636806557889396421889433478758729474336434613895634517136466144058683977622992990257618146946567827281146887410879269231368543860128499790484229156194599779412702250024640650036724248447453870773019741270290530040351405686651349690089618933708492562636171718962097527506836047371375299473427391827667543799697475126755837323385654500369507442387683568306521310194827264\n", + "118467024871558133568999541121686315904894783741041959358916321405048681652756146737284035684527648132099927219315410176317162678626199601580026330341872710855087413161596237935248659775752996415289462218069746844521813555433852955036334796304803557941282121211740778104846934269097540736026794513405276288226898670127621853717619769049090797129488391099290845770657879712521614085563176797892767758142925529290565341036180465499759474430194861640891526911976941648849098254195006669084217695194688599273613115778792843778866957517458948672869227791269034272932288117367955245985980515236293893135654562293774821758538462737087720256999580968458312389199558825404500049281300073448496894907741546039482540581060080702811373302699380179237867416985125272343437924195055013672094742750598946854783655335087599394950253511674646771309000739014884775367136613042620389654528\n", + "236934049743116267137999082243372631809789567482083918717832642810097363305512293474568071369055296264199854438630820352634325357252399203160052660683745421710174826323192475870497319551505992830578924436139493689043627110867705910072669592609607115882564242423481556209693868538195081472053589026810552576453797340255243707435239538098181594258976782198581691541315759425043228171126353595785535516285851058581130682072360930999518948860389723281783053823953883297698196508390013338168435390389377198547226231557585687557733915034917897345738455582538068545864576234735910491971961030472587786271309124587549643517076925474175440513999161936916624778399117650809000098562600146896993789815483092078965081162120161405622746605398760358475734833970250544686875848390110027344189485501197893709567310670175198789900507023349293542618001478029769550734273226085240779309056\n", + "473868099486232534275998164486745263619579134964167837435665285620194726611024586949136142738110592528399708877261640705268650714504798406320105321367490843420349652646384951740994639103011985661157848872278987378087254221735411820145339185219214231765128484846963112419387737076390162944107178053621105152907594680510487414870479076196363188517953564397163383082631518850086456342252707191571071032571702117162261364144721861999037897720779446563566107647907766595396393016780026676336870780778754397094452463115171375115467830069835794691476911165076137091729152469471820983943922060945175572542618249175099287034153850948350881027998323873833249556798235301618000197125200293793987579630966184157930162324240322811245493210797520716951469667940501089373751696780220054688378971002395787419134621340350397579801014046698587085236002956059539101468546452170481558618112\n", + "947736198972465068551996328973490527239158269928335674871330571240389453222049173898272285476221185056799417754523281410537301429009596812640210642734981686840699305292769903481989278206023971322315697744557974756174508443470823640290678370438428463530256969693926224838775474152780325888214356107242210305815189361020974829740958152392726377035907128794326766165263037700172912684505414383142142065143404234324522728289443723998075795441558893127132215295815533190792786033560053352673741561557508794188904926230342750230935660139671589382953822330152274183458304938943641967887844121890351145085236498350198574068307701896701762055996647747666499113596470603236000394250400587587975159261932368315860324648480645622490986421595041433902939335881002178747503393560440109376757942004791574838269242680700795159602028093397174170472005912119078202937092904340963117236224\n", + "1895472397944930137103992657946981054478316539856671349742661142480778906444098347796544570952442370113598835509046562821074602858019193625280421285469963373681398610585539806963978556412047942644631395489115949512349016886941647280581356740876856927060513939387852449677550948305560651776428712214484420611630378722041949659481916304785452754071814257588653532330526075400345825369010828766284284130286808468649045456578887447996151590883117786254264430591631066381585572067120106705347483123115017588377809852460685500461871320279343178765907644660304548366916609877887283935775688243780702290170472996700397148136615403793403524111993295495332998227192941206472000788500801175175950318523864736631720649296961291244981972843190082867805878671762004357495006787120880218753515884009583149676538485361401590319204056186794348340944011824238156405874185808681926234472448\n", + "3790944795889860274207985315893962108956633079713342699485322284961557812888196695593089141904884740227197671018093125642149205716038387250560842570939926747362797221171079613927957112824095885289262790978231899024698033773883294561162713481753713854121027878775704899355101896611121303552857424428968841223260757444083899318963832609570905508143628515177307064661052150800691650738021657532568568260573616937298090913157774895992303181766235572508528861183262132763171144134240213410694966246230035176755619704921371000923742640558686357531815289320609096733833219755774567871551376487561404580340945993400794296273230807586807048223986590990665996454385882412944001577001602350351900637047729473263441298593922582489963945686380165735611757343524008714990013574241760437507031768019166299353076970722803180638408112373588696681888023648476312811748371617363852468944896\n", + "7581889591779720548415970631787924217913266159426685398970644569923115625776393391186178283809769480454395342036186251284298411432076774501121685141879853494725594442342159227855914225648191770578525581956463798049396067547766589122325426963507427708242055757551409798710203793222242607105714848857937682446521514888167798637927665219141811016287257030354614129322104301601383301476043315065137136521147233874596181826315549791984606363532471145017057722366524265526342288268480426821389932492460070353511239409842742001847485281117372715063630578641218193467666439511549135743102752975122809160681891986801588592546461615173614096447973181981331992908771764825888003154003204700703801274095458946526882597187845164979927891372760331471223514687048017429980027148483520875014063536038332598706153941445606361276816224747177393363776047296952625623496743234727704937889792\n", + "15163779183559441096831941263575848435826532318853370797941289139846231251552786782372356567619538960908790684072372502568596822864153549002243370283759706989451188884684318455711828451296383541157051163912927596098792135095533178244650853927014855416484111515102819597420407586444485214211429697715875364893043029776335597275855330438283622032574514060709228258644208603202766602952086630130274273042294467749192363652631099583969212727064942290034115444733048531052684576536960853642779864984920140707022478819685484003694970562234745430127261157282436386935332879023098271486205505950245618321363783973603177185092923230347228192895946363962663985817543529651776006308006409401407602548190917893053765194375690329959855782745520662942447029374096034859960054296967041750028127072076665197412307882891212722553632449494354786727552094593905251246993486469455409875779584\n", + "30327558367118882193663882527151696871653064637706741595882578279692462503105573564744713135239077921817581368144745005137193645728307098004486740567519413978902377769368636911423656902592767082314102327825855192197584270191066356489301707854029710832968223030205639194840815172888970428422859395431750729786086059552671194551710660876567244065149028121418456517288417206405533205904173260260548546084588935498384727305262199167938425454129884580068230889466097062105369153073921707285559729969840281414044957639370968007389941124469490860254522314564872773870665758046196542972411011900491236642727567947206354370185846460694456385791892727925327971635087059303552012616012818802815205096381835786107530388751380659919711565491041325884894058748192069719920108593934083500056254144153330394824615765782425445107264898988709573455104189187810502493986972938910819751559168\n", + "60655116734237764387327765054303393743306129275413483191765156559384925006211147129489426270478155843635162736289490010274387291456614196008973481135038827957804755538737273822847313805185534164628204655651710384395168540382132712978603415708059421665936446060411278389681630345777940856845718790863501459572172119105342389103421321753134488130298056242836913034576834412811066411808346520521097092169177870996769454610524398335876850908259769160136461778932194124210738306147843414571119459939680562828089915278741936014779882248938981720509044629129745547741331516092393085944822023800982473285455135894412708740371692921388912771583785455850655943270174118607104025232025637605630410192763671572215060777502761319839423130982082651769788117496384139439840217187868167000112508288306660789649231531564850890214529797977419146910208378375621004987973945877821639503118336\n", + "121310233468475528774655530108606787486612258550826966383530313118769850012422294258978852540956311687270325472578980020548774582913228392017946962270077655915609511077474547645694627610371068329256409311303420768790337080764265425957206831416118843331872892120822556779363260691555881713691437581727002919144344238210684778206842643506268976260596112485673826069153668825622132823616693041042194184338355741993538909221048796671753701816519538320272923557864388248421476612295686829142238919879361125656179830557483872029559764497877963441018089258259491095482663032184786171889644047601964946570910271788825417480743385842777825543167570911701311886540348237214208050464051275211260820385527343144430121555005522639678846261964165303539576234992768278879680434375736334000225016576613321579298463063129701780429059595954838293820416756751242009975947891755643279006236672\n", + "242620466936951057549311060217213574973224517101653932767060626237539700024844588517957705081912623374540650945157960041097549165826456784035893924540155311831219022154949095291389255220742136658512818622606841537580674161528530851914413662832237686663745784241645113558726521383111763427382875163454005838288688476421369556413685287012537952521192224971347652138307337651244265647233386082084388368676711483987077818442097593343507403633039076640545847115728776496842953224591373658284477839758722251312359661114967744059119528995755926882036178516518982190965326064369572343779288095203929893141820543577650834961486771685555651086335141823402623773080696474428416100928102550422521640771054686288860243110011045279357692523928330607079152469985536557759360868751472668000450033153226643158596926126259403560858119191909676587640833513502484019951895783511286558012473344\n", + "485240933873902115098622120434427149946449034203307865534121252475079400049689177035915410163825246749081301890315920082195098331652913568071787849080310623662438044309898190582778510441484273317025637245213683075161348323057061703828827325664475373327491568483290227117453042766223526854765750326908011676577376952842739112827370574025075905042384449942695304276614675302488531294466772164168776737353422967974155636884195186687014807266078153281091694231457552993685906449182747316568955679517444502624719322229935488118239057991511853764072357033037964381930652128739144687558576190407859786283641087155301669922973543371111302172670283646805247546161392948856832201856205100845043281542109372577720486220022090558715385047856661214158304939971073115518721737502945336000900066306453286317193852252518807121716238383819353175281667027004968039903791567022573116024946688\n", + "970481867747804230197244240868854299892898068406615731068242504950158800099378354071830820327650493498162603780631840164390196663305827136143575698160621247324876088619796381165557020882968546634051274490427366150322696646114123407657654651328950746654983136966580454234906085532447053709531500653816023353154753905685478225654741148050151810084768899885390608553229350604977062588933544328337553474706845935948311273768390373374029614532156306562183388462915105987371812898365494633137911359034889005249438644459870976236478115983023707528144714066075928763861304257478289375117152380815719572567282174310603339845947086742222604345340567293610495092322785897713664403712410201690086563084218745155440972440044181117430770095713322428316609879942146231037443475005890672001800132612906572634387704505037614243432476767638706350563334054009936079807583134045146232049893376\n", + "1940963735495608460394488481737708599785796136813231462136485009900317600198756708143661640655300986996325207561263680328780393326611654272287151396321242494649752177239592762331114041765937093268102548980854732300645393292228246815315309302657901493309966273933160908469812171064894107419063001307632046706309507811370956451309482296100303620169537799770781217106458701209954125177867088656675106949413691871896622547536780746748059229064312613124366776925830211974743625796730989266275822718069778010498877288919741952472956231966047415056289428132151857527722608514956578750234304761631439145134564348621206679691894173484445208690681134587220990184645571795427328807424820403380173126168437490310881944880088362234861540191426644856633219759884292462074886950011781344003600265225813145268775409010075228486864953535277412701126668108019872159615166268090292464099786752\n", + "3881927470991216920788976963475417199571592273626462924272970019800635200397513416287323281310601973992650415122527360657560786653223308544574302792642484989299504354479185524662228083531874186536205097961709464601290786584456493630630618605315802986619932547866321816939624342129788214838126002615264093412619015622741912902618964592200607240339075599541562434212917402419908250355734177313350213898827383743793245095073561493496118458128625226248733553851660423949487251593461978532551645436139556020997754577839483904945912463932094830112578856264303715055445217029913157500468609523262878290269128697242413359383788346968890417381362269174441980369291143590854657614849640806760346252336874980621763889760176724469723080382853289713266439519768584924149773900023562688007200530451626290537550818020150456973729907070554825402253336216039744319230332536180584928199573504\n", + "7763854941982433841577953926950834399143184547252925848545940039601270400795026832574646562621203947985300830245054721315121573306446617089148605585284969978599008708958371049324456167063748373072410195923418929202581573168912987261261237210631605973239865095732643633879248684259576429676252005230528186825238031245483825805237929184401214480678151199083124868425834804839816500711468354626700427797654767487586490190147122986992236916257250452497467107703320847898974503186923957065103290872279112041995509155678967809891824927864189660225157712528607430110890434059826315000937219046525756580538257394484826718767576693937780834762724538348883960738582287181709315229699281613520692504673749961243527779520353448939446160765706579426532879039537169848299547800047125376014401060903252581075101636040300913947459814141109650804506672432079488638460665072361169856399147008\n", + "15527709883964867683155907853901668798286369094505851697091880079202540801590053665149293125242407895970601660490109442630243146612893234178297211170569939957198017417916742098648912334127496746144820391846837858405163146337825974522522474421263211946479730191465287267758497368519152859352504010461056373650476062490967651610475858368802428961356302398166249736851669609679633001422936709253400855595309534975172980380294245973984473832514500904994934215406641695797949006373847914130206581744558224083991018311357935619783649855728379320450315425057214860221780868119652630001874438093051513161076514788969653437535153387875561669525449076697767921477164574363418630459398563227041385009347499922487055559040706897878892321531413158853065758079074339696599095600094250752028802121806505162150203272080601827894919628282219301609013344864158977276921330144722339712798294016\n", + "31055419767929735366311815707803337596572738189011703394183760158405081603180107330298586250484815791941203320980218885260486293225786468356594422341139879914396034835833484197297824668254993492289640783693675716810326292675651949045044948842526423892959460382930574535516994737038305718705008020922112747300952124981935303220951716737604857922712604796332499473703339219359266002845873418506801711190619069950345960760588491947968947665029001809989868430813283391595898012747695828260413163489116448167982036622715871239567299711456758640900630850114429720443561736239305260003748876186103026322153029577939306875070306775751123339050898153395535842954329148726837260918797126454082770018694999844974111118081413795757784643062826317706131516158148679393198191200188501504057604243613010324300406544161203655789839256564438603218026689728317954553842660289444679425596588032\n", + "62110839535859470732623631415606675193145476378023406788367520316810163206360214660597172500969631583882406641960437770520972586451572936713188844682279759828792069671666968394595649336509986984579281567387351433620652585351303898090089897685052847785918920765861149071033989474076611437410016041844225494601904249963870606441903433475209715845425209592664998947406678438718532005691746837013603422381238139900691921521176983895937895330058003619979736861626566783191796025495391656520826326978232896335964073245431742479134599422913517281801261700228859440887123472478610520007497752372206052644306059155878613750140613551502246678101796306791071685908658297453674521837594252908165540037389999689948222236162827591515569286125652635412263032316297358786396382400377003008115208487226020648600813088322407311579678513128877206436053379456635909107685320578889358851193176064\n", + "124221679071718941465247262831213350386290952756046813576735040633620326412720429321194345001939263167764813283920875541041945172903145873426377689364559519657584139343333936789191298673019973969158563134774702867241305170702607796180179795370105695571837841531722298142067978948153222874820032083688450989203808499927741212883806866950419431690850419185329997894813356877437064011383493674027206844762476279801383843042353967791875790660116007239959473723253133566383592050990783313041652653956465792671928146490863484958269198845827034563602523400457718881774246944957221040014995504744412105288612118311757227500281227103004493356203592613582143371817316594907349043675188505816331080074779999379896444472325655183031138572251305270824526064632594717572792764800754006016230416974452041297201626176644814623159357026257754412872106758913271818215370641157778717702386352128\n", + "248443358143437882930494525662426700772581905512093627153470081267240652825440858642388690003878526335529626567841751082083890345806291746852755378729119039315168278686667873578382597346039947938317126269549405734482610341405215592360359590740211391143675683063444596284135957896306445749640064167376901978407616999855482425767613733900838863381700838370659995789626713754874128022766987348054413689524952559602767686084707935583751581320232014479918947446506267132767184101981566626083305307912931585343856292981726969916538397691654069127205046800915437763548493889914442080029991009488824210577224236623514455000562454206008986712407185227164286743634633189814698087350377011632662160149559998759792888944651310366062277144502610541649052129265189435145585529601508012032460833948904082594403252353289629246318714052515508825744213517826543636430741282315557435404772704256\n", + "496886716286875765860989051324853401545163811024187254306940162534481305650881717284777380007757052671059253135683502164167780691612583493705510757458238078630336557373335747156765194692079895876634252539098811468965220682810431184720719181480422782287351366126889192568271915792612891499280128334753803956815233999710964851535227467801677726763401676741319991579253427509748256045533974696108827379049905119205535372169415871167503162640464028959837894893012534265534368203963133252166610615825863170687712585963453939833076795383308138254410093601830875527096987779828884160059982018977648421154448473247028910001124908412017973424814370454328573487269266379629396174700754023265324320299119997519585777889302620732124554289005221083298104258530378870291171059203016024064921667897808165188806504706579258492637428105031017651488427035653087272861482564631114870809545408512\n", + "993773432573751531721978102649706803090327622048374508613880325068962611301763434569554760015514105342118506271367004328335561383225166987411021514916476157260673114746671494313530389384159791753268505078197622937930441365620862369441438362960845564574702732253778385136543831585225782998560256669507607913630467999421929703070454935603355453526803353482639983158506855019496512091067949392217654758099810238411070744338831742335006325280928057919675789786025068531068736407926266504333221231651726341375425171926907879666153590766616276508820187203661751054193975559657768320119964037955296842308896946494057820002249816824035946849628740908657146974538532759258792349401508046530648640598239995039171555778605241464249108578010442166596208517060757740582342118406032048129843335795616330377613009413158516985274856210062035302976854071306174545722965129262229741619090817024\n", + "1987546865147503063443956205299413606180655244096749017227760650137925222603526869139109520031028210684237012542734008656671122766450333974822043029832952314521346229493342988627060778768319583506537010156395245875860882731241724738882876725921691129149405464507556770273087663170451565997120513339015215827260935998843859406140909871206710907053606706965279966317013710038993024182135898784435309516199620476822141488677663484670012650561856115839351579572050137062137472815852533008666442463303452682750850343853815759332307181533232553017640374407323502108387951119315536640239928075910593684617793892988115640004499633648071893699257481817314293949077065518517584698803016093061297281196479990078343111557210482928498217156020884333192417034121515481164684236812064096259686671591232660755226018826317033970549712420124070605953708142612349091445930258524459483238181634048\n", + "3975093730295006126887912410598827212361310488193498034455521300275850445207053738278219040062056421368474025085468017313342245532900667949644086059665904629042692458986685977254121557536639167013074020312790491751721765462483449477765753451843382258298810929015113540546175326340903131994241026678030431654521871997687718812281819742413421814107213413930559932634027420077986048364271797568870619032399240953644282977355326969340025301123712231678703159144100274124274945631705066017332884926606905365501700687707631518664614363066465106035280748814647004216775902238631073280479856151821187369235587785976231280008999267296143787398514963634628587898154131037035169397606032186122594562392959980156686223114420965856996434312041768666384834068243030962329368473624128192519373343182465321510452037652634067941099424840248141211907416285224698182891860517048918966476363268096\n", + "7950187460590012253775824821197654424722620976386996068911042600551700890414107476556438080124112842736948050170936034626684491065801335899288172119331809258085384917973371954508243115073278334026148040625580983503443530924966898955531506903686764516597621858030227081092350652681806263988482053356060863309043743995375437624563639484826843628214426827861119865268054840155972096728543595137741238064798481907288565954710653938680050602247424463357406318288200548248549891263410132034665769853213810731003401375415263037329228726132930212070561497629294008433551804477262146560959712303642374738471175571952462560017998534592287574797029927269257175796308262074070338795212064372245189124785919960313372446228841931713992868624083537332769668136486061924658736947248256385038746686364930643020904075305268135882198849680496282423814832570449396365783721034097837932952726536192\n", + "15900374921180024507551649642395308849445241952773992137822085201103401780828214953112876160248225685473896100341872069253368982131602671798576344238663618516170769835946743909016486230146556668052296081251161967006887061849933797911063013807373529033195243716060454162184701305363612527976964106712121726618087487990750875249127278969653687256428853655722239730536109680311944193457087190275482476129596963814577131909421307877360101204494848926714812636576401096497099782526820264069331539706427621462006802750830526074658457452265860424141122995258588016867103608954524293121919424607284749476942351143904925120035997069184575149594059854538514351592616524148140677590424128744490378249571839920626744892457683863427985737248167074665539336272972123849317473894496512770077493372729861286041808150610536271764397699360992564847629665140898792731567442068195675865905453072384\n", + "31800749842360049015103299284790617698890483905547984275644170402206803561656429906225752320496451370947792200683744138506737964263205343597152688477327237032341539671893487818032972460293113336104592162502323934013774123699867595822126027614747058066390487432120908324369402610727225055953928213424243453236174975981501750498254557939307374512857707311444479461072219360623888386914174380550964952259193927629154263818842615754720202408989697853429625273152802192994199565053640528138663079412855242924013605501661052149316914904531720848282245990517176033734207217909048586243838849214569498953884702287809850240071994138369150299188119709077028703185233048296281355180848257488980756499143679841253489784915367726855971474496334149331078672545944247698634947788993025540154986745459722572083616301221072543528795398721985129695259330281797585463134884136391351731810906144768\n", + "63601499684720098030206598569581235397780967811095968551288340804413607123312859812451504640992902741895584401367488277013475928526410687194305376954654474064683079343786975636065944920586226672209184325004647868027548247399735191644252055229494116132780974864241816648738805221454450111907856426848486906472349951963003500996509115878614749025715414622888958922144438721247776773828348761101929904518387855258308527637685231509440404817979395706859250546305604385988399130107281056277326158825710485848027211003322104298633829809063441696564491981034352067468414435818097172487677698429138997907769404575619700480143988276738300598376239418154057406370466096592562710361696514977961512998287359682506979569830735453711942948992668298662157345091888495397269895577986051080309973490919445144167232602442145087057590797443970259390518660563595170926269768272782703463621812289536\n", + "127202999369440196060413197139162470795561935622191937102576681608827214246625719624903009281985805483791168802734976554026951857052821374388610753909308948129366158687573951272131889841172453344418368650009295736055096494799470383288504110458988232265561949728483633297477610442908900223815712853696973812944699903926007001993018231757229498051430829245777917844288877442495553547656697522203859809036775710516617055275370463018880809635958791413718501092611208771976798260214562112554652317651420971696054422006644208597267659618126883393128983962068704134936828871636194344975355396858277995815538809151239400960287976553476601196752478836308114812740932193185125420723393029955923025996574719365013959139661470907423885897985336597324314690183776990794539791155972102160619946981838890288334465204884290174115181594887940518781037321127190341852539536545565406927243624579072\n", + "254405998738880392120826394278324941591123871244383874205153363217654428493251439249806018563971610967582337605469953108053903714105642748777221507818617896258732317375147902544263779682344906688836737300018591472110192989598940766577008220917976464531123899456967266594955220885817800447631425707393947625889399807852014003986036463514458996102861658491555835688577754884991107095313395044407719618073551421033234110550740926037761619271917582827437002185222417543953596520429124225109304635302841943392108844013288417194535319236253766786257967924137408269873657743272388689950710793716555991631077618302478801920575953106953202393504957672616229625481864386370250841446786059911846051993149438730027918279322941814847771795970673194648629380367553981589079582311944204321239893963677780576668930409768580348230363189775881037562074642254380683705079073091130813854487249158144\n", + "508811997477760784241652788556649883182247742488767748410306726435308856986502878499612037127943221935164675210939906216107807428211285497554443015637235792517464634750295805088527559364689813377673474600037182944220385979197881533154016441835952929062247798913934533189910441771635600895262851414787895251778799615704028007972072927028917992205723316983111671377155509769982214190626790088815439236147102842066468221101481852075523238543835165654874004370444835087907193040858248450218609270605683886784217688026576834389070638472507533572515935848274816539747315486544777379901421587433111983262155236604957603841151906213906404787009915345232459250963728772740501682893572119823692103986298877460055836558645883629695543591941346389297258760735107963178159164623888408642479787927355561153337860819537160696460726379551762075124149284508761367410158146182261627708974498316288\n", + "1017623994955521568483305577113299766364495484977535496820613452870617713973005756999224074255886443870329350421879812432215614856422570995108886031274471585034929269500591610177055118729379626755346949200074365888440771958395763066308032883671905858124495597827869066379820883543271201790525702829575790503557599231408056015944145854057835984411446633966223342754311019539964428381253580177630878472294205684132936442202963704151046477087670331309748008740889670175814386081716496900437218541211367773568435376053153668778141276945015067145031871696549633079494630973089554759802843174866223966524310473209915207682303812427812809574019830690464918501927457545481003365787144239647384207972597754920111673117291767259391087183882692778594517521470215926356318329247776817284959575854711122306675721639074321392921452759103524150248298569017522734820316292364523255417948996632576\n", + "2035247989911043136966611154226599532728990969955070993641226905741235427946011513998448148511772887740658700843759624864431229712845141990217772062548943170069858539001183220354110237458759253510693898400148731776881543916791526132616065767343811716248991195655738132759641767086542403581051405659151581007115198462816112031888291708115671968822893267932446685508622039079928856762507160355261756944588411368265872884405927408302092954175340662619496017481779340351628772163432993800874437082422735547136870752106307337556282553890030134290063743393099266158989261946179109519605686349732447933048620946419830415364607624855625619148039661380929837003854915090962006731574288479294768415945195509840223346234583534518782174367765385557189035042940431852712636658495553634569919151709422244613351443278148642785842905518207048300496597138035045469640632584729046510835897993265152\n", + "4070495979822086273933222308453199065457981939910141987282453811482470855892023027996896297023545775481317401687519249728862459425690283980435544125097886340139717078002366440708220474917518507021387796800297463553763087833583052265232131534687623432497982391311476265519283534173084807162102811318303162014230396925632224063776583416231343937645786535864893371017244078159857713525014320710523513889176822736531745768811854816604185908350681325238992034963558680703257544326865987601748874164845471094273741504212614675112565107780060268580127486786198532317978523892358219039211372699464895866097241892839660830729215249711251238296079322761859674007709830181924013463148576958589536831890391019680446692469167069037564348735530771114378070085880863705425273316991107269139838303418844489226702886556297285571685811036414096600993194276070090939281265169458093021671795986530304\n", + "8140991959644172547866444616906398130915963879820283974564907622964941711784046055993792594047091550962634803375038499457724918851380567960871088250195772680279434156004732881416440949835037014042775593600594927107526175667166104530464263069375246864995964782622952531038567068346169614324205622636606324028460793851264448127553166832462687875291573071729786742034488156319715427050028641421047027778353645473063491537623709633208371816701362650477984069927117361406515088653731975203497748329690942188547483008425229350225130215560120537160254973572397064635957047784716438078422745398929791732194483785679321661458430499422502476592158645523719348015419660363848026926297153917179073663780782039360893384938334138075128697471061542228756140171761727410850546633982214538279676606837688978453405773112594571143371622072828193201986388552140181878562530338916186043343591973060608\n", + "16281983919288345095732889233812796261831927759640567949129815245929883423568092111987585188094183101925269606750076998915449837702761135921742176500391545360558868312009465762832881899670074028085551187201189854215052351334332209060928526138750493729991929565245905062077134136692339228648411245273212648056921587702528896255106333664925375750583146143459573484068976312639430854100057282842094055556707290946126983075247419266416743633402725300955968139854234722813030177307463950406995496659381884377094966016850458700450260431120241074320509947144794129271914095569432876156845490797859583464388967571358643322916860998845004953184317291047438696030839320727696053852594307834358147327561564078721786769876668276150257394942123084457512280343523454821701093267964429076559353213675377956906811546225189142286743244145656386403972777104280363757125060677832372086687183946121216\n", + "32563967838576690191465778467625592523663855519281135898259630491859766847136184223975170376188366203850539213500153997830899675405522271843484353000783090721117736624018931525665763799340148056171102374402379708430104702668664418121857052277500987459983859130491810124154268273384678457296822490546425296113843175405057792510212667329850751501166292286919146968137952625278861708200114565684188111113414581892253966150494838532833487266805450601911936279708469445626060354614927900813990993318763768754189932033700917400900520862240482148641019894289588258543828191138865752313690981595719166928777935142717286645833721997690009906368634582094877392061678641455392107705188615668716294655123128157443573539753336552300514789884246168915024560687046909643402186535928858153118706427350755913813623092450378284573486488291312772807945554208560727514250121355664744173374367892242432\n", + "65127935677153380382931556935251185047327711038562271796519260983719533694272368447950340752376732407701078427000307995661799350811044543686968706001566181442235473248037863051331527598680296112342204748804759416860209405337328836243714104555001974919967718260983620248308536546769356914593644981092850592227686350810115585020425334659701503002332584573838293936275905250557723416400229131368376222226829163784507932300989677065666974533610901203823872559416938891252120709229855801627981986637527537508379864067401834801801041724480964297282039788579176517087656382277731504627381963191438333857555870285434573291667443995380019812737269164189754784123357282910784215410377231337432589310246256314887147079506673104601029579768492337830049121374093819286804373071857716306237412854701511827627246184900756569146972976582625545615891108417121455028500242711329488346748735784484864\n", + "130255871354306760765863113870502370094655422077124543593038521967439067388544736895900681504753464815402156854000615991323598701622089087373937412003132362884470946496075726102663055197360592224684409497609518833720418810674657672487428209110003949839935436521967240496617073093538713829187289962185701184455372701620231170040850669319403006004665169147676587872551810501115446832800458262736752444453658327569015864601979354131333949067221802407647745118833877782504241418459711603255963973275055075016759728134803669603602083448961928594564079577158353034175312764555463009254763926382876667715111740570869146583334887990760039625474538328379509568246714565821568430820754462674865178620492512629774294159013346209202059159536984675660098242748187638573608746143715432612474825709403023655254492369801513138293945953165251091231782216834242910057000485422658976693497471568969728\n", + "260511742708613521531726227741004740189310844154249087186077043934878134777089473791801363009506929630804313708001231982647197403244178174747874824006264725768941892992151452205326110394721184449368818995219037667440837621349315344974856418220007899679870873043934480993234146187077427658374579924371402368910745403240462340081701338638806012009330338295353175745103621002230893665600916525473504888907316655138031729203958708262667898134443604815295490237667755565008482836919423206511927946550110150033519456269607339207204166897923857189128159154316706068350625529110926018509527852765753335430223481141738293166669775981520079250949076656759019136493429131643136861641508925349730357240985025259548588318026692418404118319073969351320196485496375277147217492287430865224949651418806047310508984739603026276587891906330502182463564433668485820114000970845317953386994943137939456\n", + "521023485417227043063452455482009480378621688308498174372154087869756269554178947583602726019013859261608627416002463965294394806488356349495749648012529451537883785984302904410652220789442368898737637990438075334881675242698630689949712836440015799359741746087868961986468292374154855316749159848742804737821490806480924680163402677277612024018660676590706351490207242004461787331201833050947009777814633310276063458407917416525335796268887209630590980475335511130016965673838846413023855893100220300067038912539214678414408333795847714378256318308633412136701251058221852037019055705531506670860446962283476586333339551963040158501898153313518038272986858263286273723283017850699460714481970050519097176636053384836808236638147938702640392970992750554294434984574861730449899302837612094621017969479206052553175783812661004364927128867336971640228001941690635906773989886275878912\n", + "1042046970834454086126904910964018960757243376616996348744308175739512539108357895167205452038027718523217254832004927930588789612976712698991499296025058903075767571968605808821304441578884737797475275980876150669763350485397261379899425672880031598719483492175737923972936584748309710633498319697485609475642981612961849360326805354555224048037321353181412702980414484008923574662403666101894019555629266620552126916815834833050671592537774419261181960950671022260033931347677692826047711786200440600134077825078429356828816667591695428756512636617266824273402502116443704074038111411063013341720893924566953172666679103926080317003796306627036076545973716526572547446566035701398921428963940101038194353272106769673616473276295877405280785941985501108588869969149723460899798605675224189242035938958412105106351567625322008729854257734673943280456003883381271813547979772551757824\n", + "2084093941668908172253809821928037921514486753233992697488616351479025078216715790334410904076055437046434509664009855861177579225953425397982998592050117806151535143937211617642608883157769475594950551961752301339526700970794522759798851345760063197438966984351475847945873169496619421266996639394971218951285963225923698720653610709110448096074642706362825405960828968017847149324807332203788039111258533241104253833631669666101343185075548838522363921901342044520067862695355385652095423572400881200268155650156858713657633335183390857513025273234533648546805004232887408148076222822126026683441787849133906345333358207852160634007592613254072153091947433053145094893132071402797842857927880202076388706544213539347232946552591754810561571883971002217177739938299446921799597211350448378484071877916824210212703135250644017459708515469347886560912007766762543627095959545103515648\n", + "4168187883337816344507619643856075843028973506467985394977232702958050156433431580668821808152110874092869019328019711722355158451906850795965997184100235612303070287874423235285217766315538951189901103923504602679053401941589045519597702691520126394877933968702951695891746338993238842533993278789942437902571926451847397441307221418220896192149285412725650811921657936035694298649614664407576078222517066482208507667263339332202686370151097677044727843802684089040135725390710771304190847144801762400536311300313717427315266670366781715026050546469067297093610008465774816296152445644252053366883575698267812690666716415704321268015185226508144306183894866106290189786264142805595685715855760404152777413088427078694465893105183509621123143767942004434355479876598893843599194422700896756968143755833648420425406270501288034919417030938695773121824015533525087254191919090207031296\n", + "8336375766675632689015239287712151686057947012935970789954465405916100312866863161337643616304221748185738038656039423444710316903813701591931994368200471224606140575748846470570435532631077902379802207847009205358106803883178091039195405383040252789755867937405903391783492677986477685067986557579884875805143852903694794882614442836441792384298570825451301623843315872071388597299229328815152156445034132964417015334526678664405372740302195354089455687605368178080271450781421542608381694289603524801072622600627434854630533340733563430052101092938134594187220016931549632592304891288504106733767151396535625381333432831408642536030370453016288612367789732212580379572528285611191371431711520808305554826176854157388931786210367019242246287535884008868710959753197787687198388845401793513936287511667296840850812541002576069838834061877391546243648031067050174508383838180414062592\n", + "16672751533351265378030478575424303372115894025871941579908930811832200625733726322675287232608443496371476077312078846889420633807627403183863988736400942449212281151497692941140871065262155804759604415694018410716213607766356182078390810766080505579511735874811806783566985355972955370135973115159769751610287705807389589765228885672883584768597141650902603247686631744142777194598458657630304312890068265928834030669053357328810745480604390708178911375210736356160542901562843085216763388579207049602145245201254869709261066681467126860104202185876269188374440033863099265184609782577008213467534302793071250762666865662817285072060740906032577224735579464425160759145056571222382742863423041616611109652353708314777863572420734038484492575071768017737421919506395575374396777690803587027872575023334593681701625082005152139677668123754783092487296062134100349016767676360828125184\n", + "33345503066702530756060957150848606744231788051743883159817861623664401251467452645350574465216886992742952154624157693778841267615254806367727977472801884898424562302995385882281742130524311609519208831388036821432427215532712364156781621532161011159023471749623613567133970711945910740271946230319539503220575411614779179530457771345767169537194283301805206495373263488285554389196917315260608625780136531857668061338106714657621490961208781416357822750421472712321085803125686170433526777158414099204290490402509739418522133362934253720208404371752538376748880067726198530369219565154016426935068605586142501525333731325634570144121481812065154449471158928850321518290113142444765485726846083233222219304707416629555727144841468076968985150143536035474843839012791150748793555381607174055745150046669187363403250164010304279355336247509566184974592124268200698033535352721656250368\n", + "66691006133405061512121914301697213488463576103487766319635723247328802502934905290701148930433773985485904309248315387557682535230509612735455954945603769796849124605990771764563484261048623219038417662776073642864854431065424728313563243064322022318046943499247227134267941423891821480543892460639079006441150823229558359060915542691534339074388566603610412990746526976571108778393834630521217251560273063715336122676213429315242981922417562832715645500842945424642171606251372340867053554316828198408580980805019478837044266725868507440416808743505076753497760135452397060738439130308032853870137211172285003050667462651269140288242963624130308898942317857700643036580226284889530971453692166466444438609414833259111454289682936153937970300287072070949687678025582301497587110763214348111490300093338374726806500328020608558710672495019132369949184248536401396067070705443312500736\n", + "133382012266810123024243828603394426976927152206975532639271446494657605005869810581402297860867547970971808618496630775115365070461019225470911909891207539593698249211981543529126968522097246438076835325552147285729708862130849456627126486128644044636093886998494454268535882847783642961087784921278158012882301646459116718121831085383068678148777133207220825981493053953142217556787669261042434503120546127430672245352426858630485963844835125665431291001685890849284343212502744681734107108633656396817161961610038957674088533451737014880833617487010153506995520270904794121476878260616065707740274422344570006101334925302538280576485927248260617797884635715401286073160452569779061942907384332932888877218829666518222908579365872307875940600574144141899375356051164602995174221526428696222980600186676749453613000656041217117421344990038264739898368497072802792134141410886625001472\n", + "266764024533620246048487657206788853953854304413951065278542892989315210011739621162804595721735095941943617236993261550230730140922038450941823819782415079187396498423963087058253937044194492876153670651104294571459417724261698913254252972257288089272187773996988908537071765695567285922175569842556316025764603292918233436243662170766137356297554266414441651962986107906284435113575338522084869006241092254861344490704853717260971927689670251330862582003371781698568686425005489363468214217267312793634323923220077915348177066903474029761667234974020307013991040541809588242953756521232131415480548844689140012202669850605076561152971854496521235595769271430802572146320905139558123885814768665865777754437659333036445817158731744615751881201148288283798750712102329205990348443052857392445961200373353498907226001312082434234842689980076529479796736994145605584268282821773250002944\n", + "533528049067240492096975314413577707907708608827902130557085785978630420023479242325609191443470191883887234473986523100461460281844076901883647639564830158374792996847926174116507874088388985752307341302208589142918835448523397826508505944514576178544375547993977817074143531391134571844351139685112632051529206585836466872487324341532274712595108532828883303925972215812568870227150677044169738012482184509722688981409707434521943855379340502661725164006743563397137372850010978726936428434534625587268647846440155830696354133806948059523334469948040614027982081083619176485907513042464262830961097689378280024405339701210153122305943708993042471191538542861605144292641810279116247771629537331731555508875318666072891634317463489231503762402296576567597501424204658411980696886105714784891922400746706997814452002624164868469685379960153058959593473988291211168536565643546500005888\n", + "1067056098134480984193950628827155415815417217655804261114171571957260840046958484651218382886940383767774468947973046200922920563688153803767295279129660316749585993695852348233015748176777971504614682604417178285837670897046795653017011889029152357088751095987955634148287062782269143688702279370225264103058413171672933744974648683064549425190217065657766607851944431625137740454301354088339476024964369019445377962819414869043887710758681005323450328013487126794274745700021957453872856869069251174537295692880311661392708267613896119046668939896081228055964162167238352971815026084928525661922195378756560048810679402420306244611887417986084942383077085723210288585283620558232495543259074663463111017750637332145783268634926978463007524804593153135195002848409316823961393772211429569783844801493413995628904005248329736939370759920306117919186947976582422337073131287093000011776\n", + "2134112196268961968387901257654310831630834435311608522228343143914521680093916969302436765773880767535548937895946092401845841127376307607534590558259320633499171987391704696466031496353555943009229365208834356571675341794093591306034023778058304714177502191975911268296574125564538287377404558740450528206116826343345867489949297366129098850380434131315533215703888863250275480908602708176678952049928738038890755925638829738087775421517362010646900656026974253588549491400043914907745713738138502349074591385760623322785416535227792238093337879792162456111928324334476705943630052169857051323844390757513120097621358804840612489223774835972169884766154171446420577170567241116464991086518149326926222035501274664291566537269853956926015049609186306270390005696818633647922787544422859139567689602986827991257808010496659473878741519840612235838373895953164844674146262574186000023552\n", + "4268224392537923936775802515308621663261668870623217044456686287829043360187833938604873531547761535071097875791892184803691682254752615215069181116518641266998343974783409392932062992707111886018458730417668713143350683588187182612068047556116609428355004383951822536593148251129076574754809117480901056412233652686691734979898594732258197700760868262631066431407777726500550961817205416353357904099857476077781511851277659476175550843034724021293801312053948507177098982800087829815491427476277004698149182771521246645570833070455584476186675759584324912223856648668953411887260104339714102647688781515026240195242717609681224978447549671944339769532308342892841154341134482232929982173036298653852444071002549328583133074539707913852030099218372612540780011393637267295845575088845718279135379205973655982515616020993318947757483039681224471676747791906329689348292525148372000047104\n", + "8536448785075847873551605030617243326523337741246434088913372575658086720375667877209747063095523070142195751583784369607383364509505230430138362233037282533996687949566818785864125985414223772036917460835337426286701367176374365224136095112233218856710008767903645073186296502258153149509618234961802112824467305373383469959797189464516395401521736525262132862815555453001101923634410832706715808199714952155563023702555318952351101686069448042587602624107897014354197965600175659630982854952554009396298365543042493291141666140911168952373351519168649824447713297337906823774520208679428205295377563030052480390485435219362449956895099343888679539064616685785682308682268964465859964346072597307704888142005098657166266149079415827704060198436745225081560022787274534591691150177691436558270758411947311965031232041986637895514966079362448943353495583812659378696585050296744000094208\n", + "17072897570151695747103210061234486653046675482492868177826745151316173440751335754419494126191046140284391503167568739214766729019010460860276724466074565067993375899133637571728251970828447544073834921670674852573402734352748730448272190224466437713420017535807290146372593004516306299019236469923604225648934610746766939919594378929032790803043473050524265725631110906002203847268821665413431616399429904311126047405110637904702203372138896085175205248215794028708395931200351319261965709905108018792596731086084986582283332281822337904746703038337299648895426594675813647549040417358856410590755126060104960780970870438724899913790198687777359078129233371571364617364537928931719928692145194615409776284010197314332532298158831655408120396873490450163120045574549069183382300355382873116541516823894623930062464083973275791029932158724897886706991167625318757393170100593488000188416\n", + "34145795140303391494206420122468973306093350964985736355653490302632346881502671508838988252382092280568783006335137478429533458038020921720553448932149130135986751798267275143456503941656895088147669843341349705146805468705497460896544380448932875426840035071614580292745186009032612598038472939847208451297869221493533879839188757858065581606086946101048531451262221812004407694537643330826863232798859808622252094810221275809404406744277792170350410496431588057416791862400702638523931419810216037585193462172169973164566664563644675809493406076674599297790853189351627295098080834717712821181510252120209921561941740877449799827580397375554718156258466743142729234729075857863439857384290389230819552568020394628665064596317663310816240793746980900326240091149098138366764600710765746233083033647789247860124928167946551582059864317449795773413982335250637514786340201186976000376832\n", + "68291590280606782988412840244937946612186701929971472711306980605264693763005343017677976504764184561137566012670274956859066916076041843441106897864298260271973503596534550286913007883313790176295339686682699410293610937410994921793088760897865750853680070143229160585490372018065225196076945879694416902595738442987067759678377515716131163212173892202097062902524443624008815389075286661653726465597719617244504189620442551618808813488555584340700820992863176114833583724801405277047862839620432075170386924344339946329133329127289351618986812153349198595581706378703254590196161669435425642363020504240419843123883481754899599655160794751109436312516933486285458469458151715726879714768580778461639105136040789257330129192635326621632481587493961800652480182298196276733529201421531492466166067295578495720249856335893103164119728634899591546827964670501275029572680402373952000753664\n", + "136583180561213565976825680489875893224373403859942945422613961210529387526010686035355953009528369122275132025340549913718133832152083686882213795728596520543947007193069100573826015766627580352590679373365398820587221874821989843586177521795731501707360140286458321170980744036130450392153891759388833805191476885974135519356755031432262326424347784404194125805048887248017630778150573323307452931195439234489008379240885103237617626977111168681401641985726352229667167449602810554095725679240864150340773848688679892658266658254578703237973624306698397191163412757406509180392323338870851284726041008480839686247766963509799199310321589502218872625033866972570916938916303431453759429537161556923278210272081578514660258385270653243264963174987923601304960364596392553467058402843062984932332134591156991440499712671786206328239457269799183093655929341002550059145360804747904001507328\n", + "273166361122427131953651360979751786448746807719885890845227922421058775052021372070711906019056738244550264050681099827436267664304167373764427591457193041087894014386138201147652031533255160705181358746730797641174443749643979687172355043591463003414720280572916642341961488072260900784307783518777667610382953771948271038713510062864524652848695568808388251610097774496035261556301146646614905862390878468978016758481770206475235253954222337362803283971452704459334334899205621108191451358481728300681547697377359785316533316509157406475947248613396794382326825514813018360784646677741702569452082016961679372495533927019598398620643179004437745250067733945141833877832606862907518859074323113846556420544163157029320516770541306486529926349975847202609920729192785106934116805686125969864664269182313982880999425343572412656478914539598366187311858682005100118290721609495808003014656\n", + "546332722244854263907302721959503572897493615439771781690455844842117550104042744141423812038113476489100528101362199654872535328608334747528855182914386082175788028772276402295304063066510321410362717493461595282348887499287959374344710087182926006829440561145833284683922976144521801568615567037555335220765907543896542077427020125729049305697391137616776503220195548992070523112602293293229811724781756937956033516963540412950470507908444674725606567942905408918668669798411242216382902716963456601363095394754719570633066633018314812951894497226793588764653651029626036721569293355483405138904164033923358744991067854039196797241286358008875490500135467890283667755665213725815037718148646227693112841088326314058641033541082612973059852699951694405219841458385570213868233611372251939729328538364627965761998850687144825312957829079196732374623717364010200236581443218991616006029312\n", + "1092665444489708527814605443919007145794987230879543563380911689684235100208085488282847624076226952978201056202724399309745070657216669495057710365828772164351576057544552804590608126133020642820725434986923190564697774998575918748689420174365852013658881122291666569367845952289043603137231134075110670441531815087793084154854040251458098611394782275233553006440391097984141046225204586586459623449563513875912067033927080825900941015816889349451213135885810817837337339596822484432765805433926913202726190789509439141266133266036629625903788994453587177529307302059252073443138586710966810277808328067846717489982135708078393594482572716017750981000270935780567335511330427451630075436297292455386225682176652628117282067082165225946119705399903388810439682916771140427736467222744503879458657076729255931523997701374289650625915658158393464749247434728020400473162886437983232012058624\n", + "2185330888979417055629210887838014291589974461759087126761823379368470200416170976565695248152453905956402112405448798619490141314433338990115420731657544328703152115089105609181216252266041285641450869973846381129395549997151837497378840348731704027317762244583333138735691904578087206274462268150221340883063630175586168309708080502916197222789564550467106012880782195968282092450409173172919246899127027751824134067854161651801882031633778698902426271771621635674674679193644968865531610867853826405452381579018878282532266532073259251807577988907174355058614604118504146886277173421933620555616656135693434979964271416156787188965145432035501962000541871561134671022660854903260150872594584910772451364353305256234564134164330451892239410799806777620879365833542280855472934445489007758917314153458511863047995402748579301251831316316786929498494869456040800946325772875966464024117248\n", + "4370661777958834111258421775676028583179948923518174253523646758736940400832341953131390496304907811912804224810897597238980282628866677980230841463315088657406304230178211218362432504532082571282901739947692762258791099994303674994757680697463408054635524489166666277471383809156174412548924536300442681766127260351172336619416161005832394445579129100934212025761564391936564184900818346345838493798254055503648268135708323303603764063267557397804852543543243271349349358387289937731063221735707652810904763158037756565064533064146518503615155977814348710117229208237008293772554346843867241111233312271386869959928542832313574377930290864071003924001083743122269342045321709806520301745189169821544902728706610512469128268328660903784478821599613555241758731667084561710945868890978015517834628306917023726095990805497158602503662632633573858996989738912081601892651545751932928048234496\n", + "8741323555917668222516843551352057166359897847036348507047293517473880801664683906262780992609815623825608449621795194477960565257733355960461682926630177314812608460356422436724865009064165142565803479895385524517582199988607349989515361394926816109271048978333332554942767618312348825097849072600885363532254520702344673238832322011664788891158258201868424051523128783873128369801636692691676987596508111007296536271416646607207528126535114795609705087086486542698698716774579875462126443471415305621809526316075513130129066128293037007230311955628697420234458416474016587545108693687734482222466624542773739919857085664627148755860581728142007848002167486244538684090643419613040603490378339643089805457413221024938256536657321807568957643199227110483517463334169123421891737781956031035669256613834047452191981610994317205007325265267147717993979477824163203785303091503865856096468992\n", + "17482647111835336445033687102704114332719795694072697014094587034947761603329367812525561985219631247651216899243590388955921130515466711920923365853260354629625216920712844873449730018128330285131606959790771049035164399977214699979030722789853632218542097956666665109885535236624697650195698145201770727064509041404689346477664644023329577782316516403736848103046257567746256739603273385383353975193016222014593072542833293214415056253070229591219410174172973085397397433549159750924252886942830611243619052632151026260258132256586074014460623911257394840468916832948033175090217387375468964444933249085547479839714171329254297511721163456284015696004334972489077368181286839226081206980756679286179610914826442049876513073314643615137915286398454220967034926668338246843783475563912062071338513227668094904383963221988634410014650530534295435987958955648326407570606183007731712192937984\n", + "34965294223670672890067374205408228665439591388145394028189174069895523206658735625051123970439262495302433798487180777911842261030933423841846731706520709259250433841425689746899460036256660570263213919581542098070328799954429399958061445579707264437084195913333330219771070473249395300391396290403541454129018082809378692955329288046659155564633032807473696206092515135492513479206546770766707950386032444029186145085666586428830112506140459182438820348345946170794794867098319501848505773885661222487238105264302052520516264513172148028921247822514789680937833665896066350180434774750937928889866498171094959679428342658508595023442326912568031392008669944978154736362573678452162413961513358572359221829652884099753026146629287230275830572796908441934069853336676493687566951127824124142677026455336189808767926443977268820029301061068590871975917911296652815141212366015463424385875968\n", + "69930588447341345780134748410816457330879182776290788056378348139791046413317471250102247940878524990604867596974361555823684522061866847683693463413041418518500867682851379493798920072513321140526427839163084196140657599908858799916122891159414528874168391826666660439542140946498790600782792580807082908258036165618757385910658576093318311129266065614947392412185030270985026958413093541533415900772064888058372290171333172857660225012280918364877640696691892341589589734196639003697011547771322444974476210528604105041032529026344296057842495645029579361875667331792132700360869549501875857779732996342189919358856685317017190046884653825136062784017339889956309472725147356904324827923026717144718443659305768199506052293258574460551661145593816883868139706673352987375133902255648248285354052910672379617535852887954537640058602122137181743951835822593305630282424732030926848771751936\n", + "139861176894682691560269496821632914661758365552581576112756696279582092826634942500204495881757049981209735193948723111647369044123733695367386926826082837037001735365702758987597840145026642281052855678326168392281315199817717599832245782318829057748336783653333320879084281892997581201565585161614165816516072331237514771821317152186636622258532131229894784824370060541970053916826187083066831801544129776116744580342666345715320450024561836729755281393383784683179179468393278007394023095542644889948952421057208210082065058052688592115684991290059158723751334663584265400721739099003751715559465992684379838717713370634034380093769307650272125568034679779912618945450294713808649655846053434289436887318611536399012104586517148921103322291187633767736279413346705974750267804511296496570708105821344759235071705775909075280117204244274363487903671645186611260564849464061853697543503872\n", + "279722353789365383120538993643265829323516731105163152225513392559164185653269885000408991763514099962419470387897446223294738088247467390734773853652165674074003470731405517975195680290053284562105711356652336784562630399635435199664491564637658115496673567306666641758168563785995162403131170323228331633032144662475029543642634304373273244517064262459789569648740121083940107833652374166133663603088259552233489160685332691430640900049123673459510562786767569366358358936786556014788046191085289779897904842114416420164130116105377184231369982580118317447502669327168530801443478198007503431118931985368759677435426741268068760187538615300544251136069359559825237890900589427617299311692106868578873774637223072798024209173034297842206644582375267535472558826693411949500535609022592993141416211642689518470143411551818150560234408488548726975807343290373222521129698928123707395087007744\n", + "559444707578730766241077987286531658647033462210326304451026785118328371306539770000817983527028199924838940775794892446589476176494934781469547707304331348148006941462811035950391360580106569124211422713304673569125260799270870399328983129275316230993347134613333283516337127571990324806262340646456663266064289324950059087285268608746546489034128524919579139297480242167880215667304748332267327206176519104466978321370665382861281800098247346919021125573535138732716717873573112029576092382170579559795809684228832840328260232210754368462739965160236634895005338654337061602886956396015006862237863970737519354870853482536137520375077230601088502272138719119650475781801178855234598623384213737157747549274446145596048418346068595684413289164750535070945117653386823899001071218045185986282832423285379036940286823103636301120468816977097453951614686580746445042259397856247414790174015488\n", + "1118889415157461532482155974573063317294066924420652608902053570236656742613079540001635967054056399849677881551589784893178952352989869562939095414608662696296013882925622071900782721160213138248422845426609347138250521598541740798657966258550632461986694269226666567032674255143980649612524681292913326532128578649900118174570537217493092978068257049839158278594960484335760431334609496664534654412353038208933956642741330765722563600196494693838042251147070277465433435747146224059152184764341159119591619368457665680656520464421508736925479930320473269790010677308674123205773912792030013724475727941475038709741706965072275040750154461202177004544277438239300951563602357710469197246768427474315495098548892291192096836692137191368826578329501070141890235306773647798002142436090371972565664846570758073880573646207272602240937633954194907903229373161492890084518795712494829580348030976\n", + "2237778830314923064964311949146126634588133848841305217804107140473313485226159080003271934108112799699355763103179569786357904705979739125878190829217325392592027765851244143801565442320426276496845690853218694276501043197083481597315932517101264923973388538453333134065348510287961299225049362585826653064257157299800236349141074434986185956136514099678316557189920968671520862669218993329069308824706076417867913285482661531445127200392989387676084502294140554930866871494292448118304369528682318239183238736915331361313040928843017473850959860640946539580021354617348246411547825584060027448951455882950077419483413930144550081500308922404354009088554876478601903127204715420938394493536854948630990197097784582384193673384274382737653156659002140283780470613547295596004284872180743945131329693141516147761147292414545204481875267908389815806458746322985780169037591424989659160696061952\n", + "4475557660629846129928623898292253269176267697682610435608214280946626970452318160006543868216225599398711526206359139572715809411959478251756381658434650785184055531702488287603130884640852552993691381706437388553002086394166963194631865034202529847946777076906666268130697020575922598450098725171653306128514314599600472698282148869972371912273028199356633114379841937343041725338437986658138617649412152835735826570965323062890254400785978775352169004588281109861733742988584896236608739057364636478366477473830662722626081857686034947701919721281893079160042709234696492823095651168120054897902911765900154838966827860289100163000617844808708018177109752957203806254409430841876788987073709897261980394195569164768387346768548765475306313318004280567560941227094591192008569744361487890262659386283032295522294584829090408963750535816779631612917492645971560338075182849979318321392123904\n", + "8951115321259692259857247796584506538352535395365220871216428561893253940904636320013087736432451198797423052412718279145431618823918956503512763316869301570368111063404976575206261769281705105987382763412874777106004172788333926389263730068405059695893554153813332536261394041151845196900197450343306612257028629199200945396564297739944743824546056398713266228759683874686083450676875973316277235298824305671471653141930646125780508801571957550704338009176562219723467485977169792473217478114729272956732954947661325445252163715372069895403839442563786158320085418469392985646191302336240109795805823531800309677933655720578200326001235689617416036354219505914407612508818861683753577974147419794523960788391138329536774693537097530950612626636008561135121882454189182384017139488722975780525318772566064591044589169658180817927501071633559263225834985291943120676150365699958636642784247808\n", + "17902230642519384519714495593169013076705070790730441742432857123786507881809272640026175472864902397594846104825436558290863237647837913007025526633738603140736222126809953150412523538563410211974765526825749554212008345576667852778527460136810119391787108307626665072522788082303690393800394900686613224514057258398401890793128595479889487649092112797426532457519367749372166901353751946632554470597648611342943306283861292251561017603143915101408676018353124439446934971954339584946434956229458545913465909895322650890504327430744139790807678885127572316640170836938785971292382604672480219591611647063600619355867311441156400652002471379234832072708439011828815225017637723367507155948294839589047921576782276659073549387074195061901225253272017122270243764908378364768034278977445951561050637545132129182089178339316361635855002143267118526451669970583886241352300731399917273285568495616\n", + "35804461285038769039428991186338026153410141581460883484865714247573015763618545280052350945729804795189692209650873116581726475295675826014051053267477206281472444253619906300825047077126820423949531053651499108424016691153335705557054920273620238783574216615253330145045576164607380787600789801373226449028114516796803781586257190959778975298184225594853064915038735498744333802707503893265108941195297222685886612567722584503122035206287830202817352036706248878893869943908679169892869912458917091826931819790645301781008654861488279581615357770255144633280341673877571942584765209344960439183223294127201238711734622882312801304004942758469664145416878023657630450035275446735014311896589679178095843153564553318147098774148390123802450506544034244540487529816756729536068557954891903122101275090264258364178356678632723271710004286534237052903339941167772482704601462799834546571136991232\n", + "71608922570077538078857982372676052306820283162921766969731428495146031527237090560104701891459609590379384419301746233163452950591351652028102106534954412562944888507239812601650094154253640847899062107302998216848033382306671411114109840547240477567148433230506660290091152329214761575201579602746452898056229033593607563172514381919557950596368451189706129830077470997488667605415007786530217882390594445371773225135445169006244070412575660405634704073412497757787739887817358339785739824917834183653863639581290603562017309722976559163230715540510289266560683347755143885169530418689920878366446588254402477423469245764625602608009885516939328290833756047315260900070550893470028623793179358356191686307129106636294197548296780247604901013088068489080975059633513459072137115909783806244202550180528516728356713357265446543420008573068474105806679882335544965409202925599669093142273982464\n", + "143217845140155076157715964745352104613640566325843533939462856990292063054474181120209403782919219180758768838603492466326905901182703304056204213069908825125889777014479625203300188308507281695798124214605996433696066764613342822228219681094480955134296866461013320580182304658429523150403159205492905796112458067187215126345028763839115901192736902379412259660154941994977335210830015573060435764781188890743546450270890338012488140825151320811269408146824995515575479775634716679571479649835668367307727279162581207124034619445953118326461431081020578533121366695510287770339060837379841756732893176508804954846938491529251205216019771033878656581667512094630521800141101786940057247586358716712383372614258213272588395096593560495209802026176136978161950119267026918144274231819567612488405100361057033456713426714530893086840017146136948211613359764671089930818405851199338186284547964928\n", + "286435690280310152315431929490704209227281132651687067878925713980584126108948362240418807565838438361517537677206984932653811802365406608112408426139817650251779554028959250406600376617014563391596248429211992867392133529226685644456439362188961910268593732922026641160364609316859046300806318410985811592224916134374430252690057527678231802385473804758824519320309883989954670421660031146120871529562377781487092900541780676024976281650302641622538816293649991031150959551269433359142959299671336734615454558325162414248069238891906236652922862162041157066242733391020575540678121674759683513465786353017609909693876983058502410432039542067757313163335024189261043600282203573880114495172717433424766745228516426545176790193187120990419604052352273956323900238534053836288548463639135224976810200722114066913426853429061786173680034292273896423226719529342179861636811702398676372569095929856\n", + "572871380560620304630863858981408418454562265303374135757851427961168252217896724480837615131676876723035075354413969865307623604730813216224816852279635300503559108057918500813200753234029126783192496858423985734784267058453371288912878724377923820537187465844053282320729218633718092601612636821971623184449832268748860505380115055356463604770947609517649038640619767979909340843320062292241743059124755562974185801083561352049952563300605283245077632587299982062301919102538866718285918599342673469230909116650324828496138477783812473305845724324082314132485466782041151081356243349519367026931572706035219819387753966117004820864079084135514626326670048378522087200564407147760228990345434866849533490457032853090353580386374241980839208104704547912647800477068107672577096927278270449953620401444228133826853706858123572347360068584547792846453439058684359723273623404797352745138191859712\n", + "1145742761121240609261727717962816836909124530606748271515702855922336504435793448961675230263353753446070150708827939730615247209461626432449633704559270601007118216115837001626401506468058253566384993716847971469568534116906742577825757448755847641074374931688106564641458437267436185203225273643943246368899664537497721010760230110712927209541895219035298077281239535959818681686640124584483486118249511125948371602167122704099905126601210566490155265174599964124603838205077733436571837198685346938461818233300649656992276955567624946611691448648164628264970933564082302162712486699038734053863145412070439638775507932234009641728158168271029252653340096757044174401128814295520457980690869733699066980914065706180707160772748483961678416209409095825295600954136215345154193854556540899907240802888456267653707413716247144694720137169095585692906878117368719446547246809594705490276383719424\n", + "2291485522242481218523455435925633673818249061213496543031405711844673008871586897923350460526707506892140301417655879461230494418923252864899267409118541202014236432231674003252803012936116507132769987433695942939137068233813485155651514897511695282148749863376213129282916874534872370406450547287886492737799329074995442021520460221425854419083790438070596154562479071919637363373280249168966972236499022251896743204334245408199810253202421132980310530349199928249207676410155466873143674397370693876923636466601299313984553911135249893223382897296329256529941867128164604325424973398077468107726290824140879277551015864468019283456316336542058505306680193514088348802257628591040915961381739467398133961828131412361414321545496967923356832418818191650591201908272430690308387709113081799814481605776912535307414827432494289389440274338191171385813756234737438893094493619189410980552767438848\n", + "4582971044484962437046910871851267347636498122426993086062811423689346017743173795846700921053415013784280602835311758922460988837846505729798534818237082404028472864463348006505606025872233014265539974867391885878274136467626970311303029795023390564297499726752426258565833749069744740812901094575772985475598658149990884043040920442851708838167580876141192309124958143839274726746560498337933944472998044503793486408668490816399620506404842265960621060698399856498415352820310933746287348794741387753847272933202598627969107822270499786446765794592658513059883734256329208650849946796154936215452581648281758555102031728936038566912632673084117010613360387028176697604515257182081831922763478934796267923656262824722828643090993935846713664837636383301182403816544861380616775418226163599628963211553825070614829654864988578778880548676382342771627512469474877786188987238378821961105534877696\n", + "9165942088969924874093821743702534695272996244853986172125622847378692035486347591693401842106830027568561205670623517844921977675693011459597069636474164808056945728926696013011212051744466028531079949734783771756548272935253940622606059590046781128594999453504852517131667498139489481625802189151545970951197316299981768086081840885703417676335161752282384618249916287678549453493120996675867888945996089007586972817336981632799241012809684531921242121396799712996830705640621867492574697589482775507694545866405197255938215644540999572893531589185317026119767468512658417301699893592309872430905163296563517110204063457872077133825265346168234021226720774056353395209030514364163663845526957869592535847312525649445657286181987871693427329675272766602364807633089722761233550836452327199257926423107650141229659309729977157557761097352764685543255024938949755572377974476757643922211069755392\n", + "18331884177939849748187643487405069390545992489707972344251245694757384070972695183386803684213660055137122411341247035689843955351386022919194139272948329616113891457853392026022424103488932057062159899469567543513096545870507881245212119180093562257189998907009705034263334996278978963251604378303091941902394632599963536172163681771406835352670323504564769236499832575357098906986241993351735777891992178015173945634673963265598482025619369063842484242793599425993661411281243734985149395178965551015389091732810394511876431289081999145787063178370634052239534937025316834603399787184619744861810326593127034220408126915744154267650530692336468042453441548112706790418061028728327327691053915739185071694625051298891314572363975743386854659350545533204729615266179445522467101672904654398515852846215300282459318619459954315115522194705529371086510049877899511144755948953515287844422139510784\n", + "36663768355879699496375286974810138781091984979415944688502491389514768141945390366773607368427320110274244822682494071379687910702772045838388278545896659232227782915706784052044848206977864114124319798939135087026193091741015762490424238360187124514379997814019410068526669992557957926503208756606183883804789265199927072344327363542813670705340647009129538472999665150714197813972483986703471555783984356030347891269347926531196964051238738127684968485587198851987322822562487469970298790357931102030778183465620789023752862578163998291574126356741268104479069874050633669206799574369239489723620653186254068440816253831488308535301061384672936084906883096225413580836122057456654655382107831478370143389250102597782629144727951486773709318701091066409459230532358891044934203345809308797031705692430600564918637238919908630231044389411058742173020099755799022289511897907030575688844279021568\n", + "73327536711759398992750573949620277562183969958831889377004982779029536283890780733547214736854640220548489645364988142759375821405544091676776557091793318464455565831413568104089696413955728228248639597878270174052386183482031524980848476720374249028759995628038820137053339985115915853006417513212367767609578530399854144688654727085627341410681294018259076945999330301428395627944967973406943111567968712060695782538695853062393928102477476255369936971174397703974645645124974939940597580715862204061556366931241578047505725156327996583148252713482536208958139748101267338413599148738478979447241306372508136881632507662976617070602122769345872169813766192450827161672244114913309310764215662956740286778500205195565258289455902973547418637402182132818918461064717782089868406691618617594063411384861201129837274477839817260462088778822117484346040199511598044579023795814061151377688558043136\n", + "146655073423518797985501147899240555124367939917663778754009965558059072567781561467094429473709280441096979290729976285518751642811088183353553114183586636928911131662827136208179392827911456456497279195756540348104772366964063049961696953440748498057519991256077640274106679970231831706012835026424735535219157060799708289377309454171254682821362588036518153891998660602856791255889935946813886223135937424121391565077391706124787856204954952510739873942348795407949291290249949879881195161431724408123112733862483156095011450312655993166296505426965072417916279496202534676827198297476957958894482612745016273763265015325953234141204245538691744339627532384901654323344488229826618621528431325913480573557000410391130516578911805947094837274804364265637836922129435564179736813383237235188126822769722402259674548955679634520924177557644234968692080399023196089158047591628122302755377116086272\n", + "293310146847037595971002295798481110248735879835327557508019931116118145135563122934188858947418560882193958581459952571037503285622176366707106228367173273857822263325654272416358785655822912912994558391513080696209544733928126099923393906881496996115039982512155280548213359940463663412025670052849471070438314121599416578754618908342509365642725176073036307783997321205713582511779871893627772446271874848242783130154783412249575712409909905021479747884697590815898582580499899759762390322863448816246225467724966312190022900625311986332593010853930144835832558992405069353654396594953915917788965225490032547526530030651906468282408491077383488679255064769803308646688976459653237243056862651826961147114000820782261033157823611894189674549608728531275673844258871128359473626766474470376253645539444804519349097911359269041848355115288469937384160798046392178316095183256244605510754232172544\n", + "586620293694075191942004591596962220497471759670655115016039862232236290271126245868377717894837121764387917162919905142075006571244352733414212456734346547715644526651308544832717571311645825825989116783026161392419089467856252199846787813762993992230079965024310561096426719880927326824051340105698942140876628243198833157509237816685018731285450352146072615567994642411427165023559743787255544892543749696485566260309566824499151424819819810042959495769395181631797165160999799519524780645726897632492450935449932624380045801250623972665186021707860289671665117984810138707308793189907831835577930450980065095053060061303812936564816982154766977358510129539606617293377952919306474486113725303653922294228001641564522066315647223788379349099217457062551347688517742256718947253532948940752507291078889609038698195822718538083696710230576939874768321596092784356632190366512489211021508464345088\n", + "1173240587388150383884009183193924440994943519341310230032079724464472580542252491736755435789674243528775834325839810284150013142488705466828424913468693095431289053302617089665435142623291651651978233566052322784838178935712504399693575627525987984460159930048621122192853439761854653648102680211397884281753256486397666315018475633370037462570900704292145231135989284822854330047119487574511089785087499392971132520619133648998302849639639620085918991538790363263594330321999599039049561291453795264984901870899865248760091602501247945330372043415720579343330235969620277414617586379815663671155860901960130190106120122607625873129633964309533954717020259079213234586755905838612948972227450607307844588456003283129044132631294447576758698198434914125102695377035484513437894507065897881505014582157779218077396391645437076167393420461153879749536643192185568713264380733024978422043016928690176\n", + "2346481174776300767768018366387848881989887038682620460064159448928945161084504983473510871579348487057551668651679620568300026284977410933656849826937386190862578106605234179330870285246583303303956467132104645569676357871425008799387151255051975968920319860097242244385706879523709307296205360422795768563506512972795332630036951266740074925141801408584290462271978569645708660094238975149022179570174998785942265041238267297996605699279279240171837983077580726527188660643999198078099122582907590529969803741799730497520183205002495890660744086831441158686660471939240554829235172759631327342311721803920260380212240245215251746259267928619067909434040518158426469173511811677225897944454901214615689176912006566258088265262588895153517396396869828250205390754070969026875789014131795763010029164315558436154792783290874152334786840922307759499073286384371137426528761466049956844086033857380352\n", + "4692962349552601535536036732775697763979774077365240920128318897857890322169009966947021743158696974115103337303359241136600052569954821867313699653874772381725156213210468358661740570493166606607912934264209291139352715742850017598774302510103951937840639720194484488771413759047418614592410720845591537127013025945590665260073902533480149850283602817168580924543957139291417320188477950298044359140349997571884530082476534595993211398558558480343675966155161453054377321287998396156198245165815181059939607483599460995040366410004991781321488173662882317373320943878481109658470345519262654684623443607840520760424480490430503492518535857238135818868081036316852938347023623354451795888909802429231378353824013132516176530525177790307034792793739656500410781508141938053751578028263591526020058328631116872309585566581748304669573681844615518998146572768742274853057522932099913688172067714760704\n", + "9385924699105203071072073465551395527959548154730481840256637795715780644338019933894043486317393948230206674606718482273200105139909643734627399307749544763450312426420936717323481140986333213215825868528418582278705431485700035197548605020207903875681279440388968977542827518094837229184821441691183074254026051891181330520147805066960299700567205634337161849087914278582834640376955900596088718280699995143769060164953069191986422797117116960687351932310322906108754642575996792312396490331630362119879214967198921990080732820009983562642976347325764634746641887756962219316940691038525309369246887215681041520848960980861006985037071714476271637736162072633705876694047246708903591777819604858462756707648026265032353061050355580614069585587479313000821563016283876107503156056527183052040116657262233744619171133163496609339147363689231037996293145537484549706115045864199827376344135429521408\n", + "18771849398210406142144146931102791055919096309460963680513275591431561288676039867788086972634787896460413349213436964546400210279819287469254798615499089526900624852841873434646962281972666426431651737056837164557410862971400070395097210040415807751362558880777937955085655036189674458369642883382366148508052103782362661040295610133920599401134411268674323698175828557165669280753911801192177436561399990287538120329906138383972845594234233921374703864620645812217509285151993584624792980663260724239758429934397843980161465640019967125285952694651529269493283775513924438633881382077050618738493774431362083041697921961722013970074143428952543275472324145267411753388094493417807183555639209716925513415296052530064706122100711161228139171174958626001643126032567752215006312113054366104080233314524467489238342266326993218678294727378462075992586291074969099412230091728399654752688270859042816\n", + "37543698796420812284288293862205582111838192618921927361026551182863122577352079735576173945269575792920826698426873929092800420559638574938509597230998179053801249705683746869293924563945332852863303474113674329114821725942800140790194420080831615502725117761555875910171310072379348916739285766764732297016104207564725322080591220267841198802268822537348647396351657114331338561507823602384354873122799980575076240659812276767945691188468467842749407729241291624435018570303987169249585961326521448479516859868795687960322931280039934250571905389303058538986567551027848877267762764154101237476987548862724166083395843923444027940148286857905086550944648290534823506776188986835614367111278419433851026830592105060129412244201422322456278342349917252003286252065135504430012624226108732208160466629048934978476684532653986437356589454756924151985172582149938198824460183456799309505376541718085632\n", + "75087397592841624568576587724411164223676385237843854722053102365726245154704159471152347890539151585841653396853747858185600841119277149877019194461996358107602499411367493738587849127890665705726606948227348658229643451885600281580388840161663231005450235523111751820342620144758697833478571533529464594032208415129450644161182440535682397604537645074697294792703314228662677123015647204768709746245599961150152481319624553535891382376936935685498815458482583248870037140607974338499171922653042896959033719737591375920645862560079868501143810778606117077973135102055697754535525528308202474953975097725448332166791687846888055880296573715810173101889296581069647013552377973671228734222556838867702053661184210120258824488402844644912556684699834504006572504130271008860025248452217464416320933258097869956953369065307972874713178909513848303970345164299876397648920366913598619010753083436171264\n", + "150174795185683249137153175448822328447352770475687709444106204731452490309408318942304695781078303171683306793707495716371201682238554299754038388923992716215204998822734987477175698255781331411453213896454697316459286903771200563160777680323326462010900471046223503640685240289517395666957143067058929188064416830258901288322364881071364795209075290149394589585406628457325354246031294409537419492491199922300304962639249107071782764753873871370997630916965166497740074281215948676998343845306085793918067439475182751841291725120159737002287621557212234155946270204111395509071051056616404949907950195450896664333583375693776111760593147431620346203778593162139294027104755947342457468445113677735404107322368420240517648976805689289825113369399669008013145008260542017720050496904434928832641866516195739913906738130615945749426357819027696607940690328599752795297840733827197238021506166872342528\n", + "300349590371366498274306350897644656894705540951375418888212409462904980618816637884609391562156606343366613587414991432742403364477108599508076777847985432430409997645469974954351396511562662822906427792909394632918573807542401126321555360646652924021800942092447007281370480579034791333914286134117858376128833660517802576644729762142729590418150580298789179170813256914650708492062588819074838984982399844600609925278498214143565529507747742741995261833930332995480148562431897353996687690612171587836134878950365503682583450240319474004575243114424468311892540408222791018142102113232809899815900390901793328667166751387552223521186294863240692407557186324278588054209511894684914936890227355470808214644736840481035297953611378579650226738799338016026290016521084035440100993808869857665283733032391479827813476261231891498852715638055393215881380657199505590595681467654394476043012333744685056\n", + "600699180742732996548612701795289313789411081902750837776424818925809961237633275769218783124313212686733227174829982865484806728954217199016153555695970864860819995290939949908702793023125325645812855585818789265837147615084802252643110721293305848043601884184894014562740961158069582667828572268235716752257667321035605153289459524285459180836301160597578358341626513829301416984125177638149677969964799689201219850556996428287131059015495485483990523667860665990960297124863794707993375381224343175672269757900731007365166900480638948009150486228848936623785080816445582036284204226465619799631800781803586657334333502775104447042372589726481384815114372648557176108419023789369829873780454710941616429289473680962070595907222757159300453477598676032052580033042168070880201987617739715330567466064782959655626952522463782997705431276110786431762761314399011181191362935308788952086024667489370112\n", + "1201398361485465993097225403590578627578822163805501675552849637851619922475266551538437566248626425373466454349659965730969613457908434398032307111391941729721639990581879899817405586046250651291625711171637578531674295230169604505286221442586611696087203768369788029125481922316139165335657144536471433504515334642071210306578919048570918361672602321195156716683253027658602833968250355276299355939929599378402439701113992856574262118030990970967981047335721331981920594249727589415986750762448686351344539515801462014730333800961277896018300972457697873247570161632891164072568408452931239599263601563607173314668667005550208894084745179452962769630228745297114352216838047578739659747560909421883232858578947361924141191814445514318600906955197352064105160066084336141760403975235479430661134932129565919311253905044927565995410862552221572863525522628798022362382725870617577904172049334978740224\n", + "2402796722970931986194450807181157255157644327611003351105699275703239844950533103076875132497252850746932908699319931461939226915816868796064614222783883459443279981163759799634811172092501302583251422343275157063348590460339209010572442885173223392174407536739576058250963844632278330671314289072942867009030669284142420613157838097141836723345204642390313433366506055317205667936500710552598711879859198756804879402227985713148524236061981941935962094671442663963841188499455178831973501524897372702689079031602924029460667601922555792036601944915395746495140323265782328145136816905862479198527203127214346629337334011100417788169490358905925539260457490594228704433676095157479319495121818843766465717157894723848282383628891028637201813910394704128210320132168672283520807950470958861322269864259131838622507810089855131990821725104443145727051045257596044724765451741235155808344098669957480448\n", + "4805593445941863972388901614362314510315288655222006702211398551406479689901066206153750264994505701493865817398639862923878453831633737592129228445567766918886559962327519599269622344185002605166502844686550314126697180920678418021144885770346446784348815073479152116501927689264556661342628578145885734018061338568284841226315676194283673446690409284780626866733012110634411335873001421105197423759718397513609758804455971426297048472123963883871924189342885327927682376998910357663947003049794745405378158063205848058921335203845111584073203889830791492990280646531564656290273633811724958397054406254428693258674668022200835576338980717811851078520914981188457408867352190314958638990243637687532931434315789447696564767257782057274403627820789408256420640264337344567041615900941917722644539728518263677245015620179710263981643450208886291454102090515192089449530903482470311616688197339914960896\n", + "9611186891883727944777803228724629020630577310444013404422797102812959379802132412307500529989011402987731634797279725847756907663267475184258456891135533837773119924655039198539244688370005210333005689373100628253394361841356836042289771540692893568697630146958304233003855378529113322685257156291771468036122677136569682452631352388567346893380818569561253733466024221268822671746002842210394847519436795027219517608911942852594096944247927767743848378685770655855364753997820715327894006099589490810756316126411696117842670407690223168146407779661582985980561293063129312580547267623449916794108812508857386517349336044401671152677961435623702157041829962376914817734704380629917277980487275375065862868631578895393129534515564114548807255641578816512841280528674689134083231801883835445289079457036527354490031240359420527963286900417772582908204181030384178899061806964940623233376394679829921792\n", + "19222373783767455889555606457449258041261154620888026808845594205625918759604264824615001059978022805975463269594559451695513815326534950368516913782271067675546239849310078397078489376740010420666011378746201256506788723682713672084579543081385787137395260293916608466007710757058226645370514312583542936072245354273139364905262704777134693786761637139122507466932048442537645343492005684420789695038873590054439035217823885705188193888495855535487696757371541311710729507995641430655788012199178981621512632252823392235685340815380446336292815559323165971961122586126258625161094535246899833588217625017714773034698672088803342305355922871247404314083659924753829635469408761259834555960974550750131725737263157790786259069031128229097614511283157633025682561057349378268166463603767670890578158914073054708980062480718841055926573800835545165816408362060768357798123613929881246466752789359659843584\n", + "38444747567534911779111212914898516082522309241776053617691188411251837519208529649230002119956045611950926539189118903391027630653069900737033827564542135351092479698620156794156978753480020841332022757492402513013577447365427344169159086162771574274790520587833216932015421514116453290741028625167085872144490708546278729810525409554269387573523274278245014933864096885075290686984011368841579390077747180108878070435647771410376387776991711070975393514743082623421459015991282861311576024398357963243025264505646784471370681630760892672585631118646331943922245172252517250322189070493799667176435250035429546069397344177606684610711845742494808628167319849507659270938817522519669111921949101500263451474526315581572518138062256458195229022566315266051365122114698756536332927207535341781156317828146109417960124961437682111853147601671090331632816724121536715596247227859762492933505578719319687168\n", + "76889495135069823558222425829797032165044618483552107235382376822503675038417059298460004239912091223901853078378237806782055261306139801474067655129084270702184959397240313588313957506960041682664045514984805026027154894730854688338318172325543148549581041175666433864030843028232906581482057250334171744288981417092557459621050819108538775147046548556490029867728193770150581373968022737683158780155494360217756140871295542820752775553983422141950787029486165246842918031982565722623152048796715926486050529011293568942741363261521785345171262237292663887844490344505034500644378140987599334352870500070859092138794688355213369221423691484989617256334639699015318541877635045039338223843898203000526902949052631163145036276124512916390458045132630532102730244229397513072665854415070683562312635656292218835920249922875364223706295203342180663265633448243073431192494455719524985867011157438639374336\n", + "153778990270139647116444851659594064330089236967104214470764753645007350076834118596920008479824182447803706156756475613564110522612279602948135310258168541404369918794480627176627915013920083365328091029969610052054309789461709376676636344651086297099162082351332867728061686056465813162964114500668343488577962834185114919242101638217077550294093097112980059735456387540301162747936045475366317560310988720435512281742591085641505551107966844283901574058972330493685836063965131445246304097593431852972101058022587137885482726523043570690342524474585327775688980689010069001288756281975198668705741000141718184277589376710426738442847382969979234512669279398030637083755270090078676447687796406001053805898105262326290072552249025832780916090265261064205460488458795026145331708830141367124625271312584437671840499845750728447412590406684361326531266896486146862384988911439049971734022314877278748672\n", + "307557980540279294232889703319188128660178473934208428941529507290014700153668237193840016959648364895607412313512951227128221045224559205896270620516337082808739837588961254353255830027840166730656182059939220104108619578923418753353272689302172594198324164702665735456123372112931626325928229001336686977155925668370229838484203276434155100588186194225960119470912775080602325495872090950732635120621977440871024563485182171283011102215933688567803148117944660987371672127930262890492608195186863705944202116045174275770965453046087141380685048949170655551377961378020138002577512563950397337411482000283436368555178753420853476885694765939958469025338558796061274167510540180157352895375592812002107611796210524652580145104498051665561832180530522128410920976917590052290663417660282734249250542625168875343680999691501456894825180813368722653062533792972293724769977822878099943468044629754557497344\n", + "615115961080558588465779406638376257320356947868416857883059014580029400307336474387680033919296729791214824627025902454256442090449118411792541241032674165617479675177922508706511660055680333461312364119878440208217239157846837506706545378604345188396648329405331470912246744225863252651856458002673373954311851336740459676968406552868310201176372388451920238941825550161204650991744181901465270241243954881742049126970364342566022204431867377135606296235889321974743344255860525780985216390373727411888404232090348551541930906092174282761370097898341311102755922756040276005155025127900794674822964000566872737110357506841706953771389531879916938050677117592122548335021080360314705790751185624004215223592421049305160290208996103331123664361061044256821841953835180104581326835320565468498501085250337750687361999383002913789650361626737445306125067585944587449539955645756199886936089259509114994688\n", + "1230231922161117176931558813276752514640713895736833715766118029160058800614672948775360067838593459582429649254051804908512884180898236823585082482065348331234959350355845017413023320111360666922624728239756880416434478315693675013413090757208690376793296658810662941824493488451726505303712916005346747908623702673480919353936813105736620402352744776903840477883651100322409301983488363802930540482487909763484098253940728685132044408863734754271212592471778643949486688511721051561970432780747454823776808464180697103083861812184348565522740195796682622205511845512080552010310050255801589349645928001133745474220715013683413907542779063759833876101354235184245096670042160720629411581502371248008430447184842098610320580417992206662247328722122088513643683907670360209162653670641130936997002170500675501374723998766005827579300723253474890612250135171889174899079911291512399773872178519018229989376\n", + "2460463844322234353863117626553505029281427791473667431532236058320117601229345897550720135677186919164859298508103609817025768361796473647170164964130696662469918700711690034826046640222721333845249456479513760832868956631387350026826181514417380753586593317621325883648986976903453010607425832010693495817247405346961838707873626211473240804705489553807680955767302200644818603966976727605861080964975819526968196507881457370264088817727469508542425184943557287898973377023442103123940865561494909647553616928361394206167723624368697131045480391593365244411023691024161104020620100511603178699291856002267490948441430027366827815085558127519667752202708470368490193340084321441258823163004742496016860894369684197220641160835984413324494657444244177027287367815340720418325307341282261873994004341001351002749447997532011655158601446506949781224500270343778349798159822583024799547744357038036459978752\n", + "4920927688644468707726235253107010058562855582947334863064472116640235202458691795101440271354373838329718597016207219634051536723592947294340329928261393324939837401423380069652093280445442667690498912959027521665737913262774700053652363028834761507173186635242651767297973953806906021214851664021386991634494810693923677415747252422946481609410979107615361911534604401289637207933953455211722161929951639053936393015762914740528177635454939017084850369887114575797946754046884206247881731122989819295107233856722788412335447248737394262090960783186730488822047382048322208041240201023206357398583712004534981896882860054733655630171116255039335504405416940736980386680168642882517646326009484992033721788739368394441282321671968826648989314888488354054574735630681440836650614682564523747988008682002702005498895995064023310317202893013899562449000540687556699596319645166049599095488714076072919957504\n", + "9841855377288937415452470506214020117125711165894669726128944233280470404917383590202880542708747676659437194032414439268103073447185894588680659856522786649879674802846760139304186560890885335380997825918055043331475826525549400107304726057669523014346373270485303534595947907613812042429703328042773983268989621387847354831494504845892963218821958215230723823069208802579274415867906910423444323859903278107872786031525829481056355270909878034169700739774229151595893508093768412495763462245979638590214467713445576824670894497474788524181921566373460977644094764096644416082480402046412714797167424009069963793765720109467311260342232510078671008810833881473960773360337285765035292652018969984067443577478736788882564643343937653297978629776976708109149471261362881673301229365129047495976017364005404010997791990128046620634405786027799124898001081375113399192639290332099198190977428152145839915008\n", + "19683710754577874830904941012428040234251422331789339452257888466560940809834767180405761085417495353318874388064828878536206146894371789177361319713045573299759349605693520278608373121781770670761995651836110086662951653051098800214609452115339046028692746540970607069191895815227624084859406656085547966537979242775694709662989009691785926437643916430461447646138417605158548831735813820846888647719806556215745572063051658962112710541819756068339401479548458303191787016187536824991526924491959277180428935426891153649341788994949577048363843132746921955288189528193288832164960804092825429594334848018139927587531440218934622520684465020157342017621667762947921546720674571530070585304037939968134887154957473577765129286687875306595957259553953416218298942522725763346602458730258094991952034728010808021995583980256093241268811572055598249796002162750226798385278580664198396381954856304291679830016\n", + "39367421509155749661809882024856080468502844663578678904515776933121881619669534360811522170834990706637748776129657757072412293788743578354722639426091146599518699211387040557216746243563541341523991303672220173325903306102197600429218904230678092057385493081941214138383791630455248169718813312171095933075958485551389419325978019383571852875287832860922895292276835210317097663471627641693777295439613112431491144126103317924225421083639512136678802959096916606383574032375073649983053848983918554360857870853782307298683577989899154096727686265493843910576379056386577664329921608185650859188669696036279855175062880437869245041368930040314684035243335525895843093441349143060141170608075879936269774309914947155530258573375750613191914519107906832436597885045451526693204917460516189983904069456021616043991167960512186482537623144111196499592004325500453596770557161328396792763909712608583359660032\n", + "78734843018311499323619764049712160937005689327157357809031553866243763239339068721623044341669981413275497552259315514144824587577487156709445278852182293199037398422774081114433492487127082683047982607344440346651806612204395200858437808461356184114770986163882428276767583260910496339437626624342191866151916971102778838651956038767143705750575665721845790584553670420634195326943255283387554590879226224862982288252206635848450842167279024273357605918193833212767148064750147299966107697967837108721715741707564614597367155979798308193455372530987687821152758112773155328659843216371301718377339392072559710350125760875738490082737860080629368070486671051791686186882698286120282341216151759872539548619829894311060517146751501226383829038215813664873195770090903053386409834921032379967808138912043232087982335921024372965075246288222392999184008651000907193541114322656793585527819425217166719320064\n", + "157469686036622998647239528099424321874011378654314715618063107732487526478678137443246088683339962826550995104518631028289649175154974313418890557704364586398074796845548162228866984974254165366095965214688880693303613224408790401716875616922712368229541972327764856553535166521820992678875253248684383732303833942205557677303912077534287411501151331443691581169107340841268390653886510566775109181758452449725964576504413271696901684334558048546715211836387666425534296129500294599932215395935674217443431483415129229194734311959596616386910745061975375642305516225546310657319686432742603436754678784145119420700251521751476980165475720161258736140973342103583372373765396572240564682432303519745079097239659788622121034293503002452767658076431627329746391540181806106772819669842064759935616277824086464175964671842048745930150492576444785998368017302001814387082228645313587171055638850434333438640128\n", + "314939372073245997294479056198848643748022757308629431236126215464975052957356274886492177366679925653101990209037262056579298350309948626837781115408729172796149593691096324457733969948508330732191930429377761386607226448817580803433751233845424736459083944655529713107070333043641985357750506497368767464607667884411115354607824155068574823002302662887383162338214681682536781307773021133550218363516904899451929153008826543393803368669116097093430423672775332851068592259000589199864430791871348434886862966830258458389468623919193232773821490123950751284611032451092621314639372865485206873509357568290238841400503043502953960330951440322517472281946684207166744747530793144481129364864607039490158194479319577244242068587006004905535316152863254659492783080363612213545639339684129519871232555648172928351929343684097491860300985152889571996736034604003628774164457290627174342111277700868666877280256\n", + "629878744146491994588958112397697287496045514617258862472252430929950105914712549772984354733359851306203980418074524113158596700619897253675562230817458345592299187382192648915467939897016661464383860858755522773214452897635161606867502467690849472918167889311059426214140666087283970715501012994737534929215335768822230709215648310137149646004605325774766324676429363365073562615546042267100436727033809798903858306017653086787606737338232194186860847345550665702137184518001178399728861583742696869773725933660516916778937247838386465547642980247901502569222064902185242629278745730970413747018715136580477682801006087005907920661902880645034944563893368414333489495061586288962258729729214078980316388958639154488484137174012009811070632305726509318985566160727224427091278679368259039742465111296345856703858687368194983720601970305779143993472069208007257548328914581254348684222555401737333754560512\n", + "1259757488292983989177916224795394574992091029234517724944504861859900211829425099545968709466719702612407960836149048226317193401239794507351124461634916691184598374764385297830935879794033322928767721717511045546428905795270323213735004935381698945836335778622118852428281332174567941431002025989475069858430671537644461418431296620274299292009210651549532649352858726730147125231092084534200873454067619597807716612035306173575213474676464388373721694691101331404274369036002356799457723167485393739547451867321033833557874495676772931095285960495803005138444129804370485258557491461940827494037430273160955365602012174011815841323805761290069889127786736828666978990123172577924517459458428157960632777917278308976968274348024019622141264611453018637971132321454448854182557358736518079484930222592691713407717374736389967441203940611558287986944138416014515096657829162508697368445110803474667509121024\n", + "2519514976585967978355832449590789149984182058469035449889009723719800423658850199091937418933439405224815921672298096452634386802479589014702248923269833382369196749528770595661871759588066645857535443435022091092857811590540646427470009870763397891672671557244237704856562664349135882862004051978950139716861343075288922836862593240548598584018421303099065298705717453460294250462184169068401746908135239195615433224070612347150426949352928776747443389382202662808548738072004713598915446334970787479094903734642067667115748991353545862190571920991606010276888259608740970517114982923881654988074860546321910731204024348023631682647611522580139778255573473657333957980246345155849034918916856315921265555834556617953936548696048039244282529222906037275942264642908897708365114717473036158969860445185383426815434749472779934882407881223116575973888276832029030193315658325017394736890221606949335018242048\n", + "5039029953171935956711664899181578299968364116938070899778019447439600847317700398183874837866878810449631843344596192905268773604959178029404497846539666764738393499057541191323743519176133291715070886870044182185715623181081292854940019741526795783345343114488475409713125328698271765724008103957900279433722686150577845673725186481097197168036842606198130597411434906920588500924368338136803493816270478391230866448141224694300853898705857553494886778764405325617097476144009427197830892669941574958189807469284135334231497982707091724381143841983212020553776519217481941034229965847763309976149721092643821462408048696047263365295223045160279556511146947314667915960492690311698069837833712631842531111669113235907873097392096078488565058445812074551884529285817795416730229434946072317939720890370766853630869498945559869764815762446233151947776553664058060386631316650034789473780443213898670036484096\n", + "10078059906343871913423329798363156599936728233876141799556038894879201694635400796367749675733757620899263686689192385810537547209918356058808995693079333529476786998115082382647487038352266583430141773740088364371431246362162585709880039483053591566690686228976950819426250657396543531448016207915800558867445372301155691347450372962194394336073685212396261194822869813841177001848736676273606987632540956782461732896282449388601707797411715106989773557528810651234194952288018854395661785339883149916379614938568270668462995965414183448762287683966424041107553038434963882068459931695526619952299442185287642924816097392094526730590446090320559113022293894629335831920985380623396139675667425263685062223338226471815746194784192156977130116891624149103769058571635590833460458869892144635879441780741533707261738997891119739529631524892466303895553107328116120773262633300069578947560886427797340072968192\n", + "20156119812687743826846659596726313199873456467752283599112077789758403389270801592735499351467515241798527373378384771621075094419836712117617991386158667058953573996230164765294974076704533166860283547480176728742862492724325171419760078966107183133381372457953901638852501314793087062896032415831601117734890744602311382694900745924388788672147370424792522389645739627682354003697473352547213975265081913564923465792564898777203415594823430213979547115057621302468389904576037708791323570679766299832759229877136541336925991930828366897524575367932848082215106076869927764136919863391053239904598884370575285849632194784189053461180892180641118226044587789258671663841970761246792279351334850527370124446676452943631492389568384313954260233783248298207538117143271181666920917739784289271758883561483067414523477995782239479059263049784932607791106214656232241546525266600139157895121772855594680145936384\n", + "40312239625375487653693319193452626399746912935504567198224155579516806778541603185470998702935030483597054746756769543242150188839673424235235982772317334117907147992460329530589948153409066333720567094960353457485724985448650342839520157932214366266762744915907803277705002629586174125792064831663202235469781489204622765389801491848777577344294740849585044779291479255364708007394946705094427950530163827129846931585129797554406831189646860427959094230115242604936779809152075417582647141359532599665518459754273082673851983861656733795049150735865696164430212153739855528273839726782106479809197768741150571699264389568378106922361784361282236452089175578517343327683941522493584558702669701054740248893352905887262984779136768627908520467566496596415076234286542363333841835479568578543517767122966134829046955991564478958118526099569865215582212429312464483093050533200278315790243545711189360291872768\n", + "80624479250750975307386638386905252799493825871009134396448311159033613557083206370941997405870060967194109493513539086484300377679346848470471965544634668235814295984920659061179896306818132667441134189920706914971449970897300685679040315864428732533525489831815606555410005259172348251584129663326404470939562978409245530779602983697555154688589481699170089558582958510729416014789893410188855901060327654259693863170259595108813662379293720855918188460230485209873559618304150835165294282719065199331036919508546165347703967723313467590098301471731392328860424307479711056547679453564212959618395537482301143398528779136756213844723568722564472904178351157034686655367883044987169117405339402109480497786705811774525969558273537255817040935132993192830152468573084726667683670959137157087035534245932269658093911983128957916237052199139730431164424858624928966186101066400556631580487091422378720583745536\n", + "161248958501501950614773276773810505598987651742018268792896622318067227114166412741883994811740121934388218987027078172968600755358693696940943931089269336471628591969841318122359792613636265334882268379841413829942899941794601371358080631728857465067050979663631213110820010518344696503168259326652808941879125956818491061559205967395110309377178963398340179117165917021458832029579786820377711802120655308519387726340519190217627324758587441711836376920460970419747119236608301670330588565438130398662073839017092330695407935446626935180196602943462784657720848614959422113095358907128425919236791074964602286797057558273512427689447137445128945808356702314069373310735766089974338234810678804218960995573411623549051939116547074511634081870265986385660304937146169453335367341918274314174071068491864539316187823966257915832474104398279460862328849717249857932372202132801113263160974182844757441167491072\n", + "322497917003003901229546553547621011197975303484036537585793244636134454228332825483767989623480243868776437974054156345937201510717387393881887862178538672943257183939682636244719585227272530669764536759682827659885799883589202742716161263457714930134101959327262426221640021036689393006336518653305617883758251913636982123118411934790220618754357926796680358234331834042917664059159573640755423604241310617038775452681038380435254649517174883423672753840921940839494238473216603340661177130876260797324147678034184661390815870893253870360393205886925569315441697229918844226190717814256851838473582149929204573594115116547024855378894274890257891616713404628138746621471532179948676469621357608437921991146823247098103878233094149023268163740531972771320609874292338906670734683836548628348142136983729078632375647932515831664948208796558921724657699434499715864744404265602226526321948365689514882334982144\n", + "644995834006007802459093107095242022395950606968073075171586489272268908456665650967535979246960487737552875948108312691874403021434774787763775724357077345886514367879365272489439170454545061339529073519365655319771599767178405485432322526915429860268203918654524852443280042073378786012673037306611235767516503827273964246236823869580441237508715853593360716468663668085835328118319147281510847208482621234077550905362076760870509299034349766847345507681843881678988476946433206681322354261752521594648295356068369322781631741786507740720786411773851138630883394459837688452381435628513703676947164299858409147188230233094049710757788549780515783233426809256277493242943064359897352939242715216875843982293646494196207756466188298046536327481063945542641219748584677813341469367673097256696284273967458157264751295865031663329896417593117843449315398868999431729488808531204453052643896731379029764669964288\n", + "1289991668012015604918186214190484044791901213936146150343172978544537816913331301935071958493920975475105751896216625383748806042869549575527551448714154691773028735758730544978878340909090122679058147038731310639543199534356810970864645053830859720536407837309049704886560084146757572025346074613222471535033007654547928492473647739160882475017431707186721432937327336171670656236638294563021694416965242468155101810724153521741018598068699533694691015363687763357976953892866413362644708523505043189296590712136738645563263483573015481441572823547702277261766788919675376904762871257027407353894328599716818294376460466188099421515577099561031566466853618512554986485886128719794705878485430433751687964587292988392415512932376596093072654962127891085282439497169355626682938735346194513392568547934916314529502591730063326659792835186235686898630797737998863458977617062408906105287793462758059529339928576\n", + "2579983336024031209836372428380968089583802427872292300686345957089075633826662603870143916987841950950211503792433250767497612085739099151055102897428309383546057471517461089957756681818180245358116294077462621279086399068713621941729290107661719441072815674618099409773120168293515144050692149226444943070066015309095856984947295478321764950034863414373442865874654672343341312473276589126043388833930484936310203621448307043482037196137399067389382030727375526715953907785732826725289417047010086378593181424273477291126526967146030962883145647095404554523533577839350753809525742514054814707788657199433636588752920932376198843031154199122063132933707237025109972971772257439589411756970860867503375929174585976784831025864753192186145309924255782170564878994338711253365877470692389026785137095869832629059005183460126653319585670372471373797261595475997726917955234124817812210575586925516119058679857152\n", + "5159966672048062419672744856761936179167604855744584601372691914178151267653325207740287833975683901900423007584866501534995224171478198302110205794856618767092114943034922179915513363636360490716232588154925242558172798137427243883458580215323438882145631349236198819546240336587030288101384298452889886140132030618191713969894590956643529900069726828746885731749309344686682624946553178252086777667860969872620407242896614086964074392274798134778764061454751053431907815571465653450578834094020172757186362848546954582253053934292061925766291294190809109047067155678701507619051485028109629415577314398867273177505841864752397686062308398244126265867414474050219945943544514879178823513941721735006751858349171953569662051729506384372290619848511564341129757988677422506731754941384778053570274191739665258118010366920253306639171340744942747594523190951995453835910468249635624421151173851032238117359714304\n", + "10319933344096124839345489713523872358335209711489169202745383828356302535306650415480575667951367803800846015169733003069990448342956396604220411589713237534184229886069844359831026727272720981432465176309850485116345596274854487766917160430646877764291262698472397639092480673174060576202768596905779772280264061236383427939789181913287059800139453657493771463498618689373365249893106356504173555335721939745240814485793228173928148784549596269557528122909502106863815631142931306901157668188040345514372725697093909164506107868584123851532582588381618218094134311357403015238102970056219258831154628797734546355011683729504795372124616796488252531734828948100439891887089029758357647027883443470013503716698343907139324103459012768744581239697023128682259515977354845013463509882769556107140548383479330516236020733840506613278342681489885495189046381903990907671820936499271248842302347702064476234719428608\n", + "20639866688192249678690979427047744716670419422978338405490767656712605070613300830961151335902735607601692030339466006139980896685912793208440823179426475068368459772139688719662053454545441962864930352619700970232691192549708975533834320861293755528582525396944795278184961346348121152405537193811559544560528122472766855879578363826574119600278907314987542926997237378746730499786212713008347110671443879490481628971586456347856297569099192539115056245819004213727631262285862613802315336376080691028745451394187818329012215737168247703065165176763236436188268622714806030476205940112438517662309257595469092710023367459009590744249233592976505063469657896200879783774178059516715294055766886940027007433396687814278648206918025537489162479394046257364519031954709690026927019765539112214281096766958661032472041467681013226556685362979770990378092763807981815343641872998542497684604695404128952469438857216\n", + "41279733376384499357381958854095489433340838845956676810981535313425210141226601661922302671805471215203384060678932012279961793371825586416881646358852950136736919544279377439324106909090883925729860705239401940465382385099417951067668641722587511057165050793889590556369922692696242304811074387623119089121056244945533711759156727653148239200557814629975085853994474757493460999572425426016694221342887758980963257943172912695712595138198385078230112491638008427455262524571725227604630672752161382057490902788375636658024431474336495406130330353526472872376537245429612060952411880224877035324618515190938185420046734918019181488498467185953010126939315792401759567548356119033430588111533773880054014866793375628557296413836051074978324958788092514729038063909419380053854039531078224428562193533917322064944082935362026453113370725959541980756185527615963630687283745997084995369209390808257904938877714432\n", + "82559466752768998714763917708190978866681677691913353621963070626850420282453203323844605343610942430406768121357864024559923586743651172833763292717705900273473839088558754878648213818181767851459721410478803880930764770198835902135337283445175022114330101587779181112739845385392484609622148775246238178242112489891067423518313455306296478401115629259950171707988949514986921999144850852033388442685775517961926515886345825391425190276396770156460224983276016854910525049143450455209261345504322764114981805576751273316048862948672990812260660707052945744753074490859224121904823760449754070649237030381876370840093469836038362976996934371906020253878631584803519135096712238066861176223067547760108029733586751257114592827672102149956649917576185029458076127818838760107708079062156448857124387067834644129888165870724052906226741451919083961512371055231927261374567491994169990738418781616515809877755428864\n", + "165118933505537997429527835416381957733363355383826707243926141253700840564906406647689210687221884860813536242715728049119847173487302345667526585435411800546947678177117509757296427636363535702919442820957607761861529540397671804270674566890350044228660203175558362225479690770784969219244297550492476356484224979782134847036626910612592956802231258519900343415977899029973843998289701704066776885371551035923853031772691650782850380552793540312920449966552033709821050098286900910418522691008645528229963611153502546632097725897345981624521321414105891489506148981718448243809647520899508141298474060763752741680186939672076725953993868743812040507757263169607038270193424476133722352446135095520216059467173502514229185655344204299913299835152370058916152255637677520215416158124312897714248774135669288259776331741448105812453482903838167923024742110463854522749134983988339981476837563233031619755510857728\n", + "330237867011075994859055670832763915466726710767653414487852282507401681129812813295378421374443769721627072485431456098239694346974604691335053170870823601093895356354235019514592855272727071405838885641915215523723059080795343608541349133780700088457320406351116724450959381541569938438488595100984952712968449959564269694073253821225185913604462517039800686831955798059947687996579403408133553770743102071847706063545383301565700761105587080625840899933104067419642100196573801820837045382017291056459927222307005093264195451794691963249042642828211782979012297963436896487619295041799016282596948121527505483360373879344153451907987737487624081015514526339214076540386848952267444704892270191040432118934347005028458371310688408599826599670304740117832304511275355040430832316248625795428497548271338576519552663482896211624906965807676335846049484220927709045498269967976679962953675126466063239511021715456\n", + "660475734022151989718111341665527830933453421535306828975704565014803362259625626590756842748887539443254144970862912196479388693949209382670106341741647202187790712708470039029185710545454142811677771283830431047446118161590687217082698267561400176914640812702233448901918763083139876876977190201969905425936899919128539388146507642450371827208925034079601373663911596119895375993158806816267107541486204143695412127090766603131401522211174161251681799866208134839284200393147603641674090764034582112919854444614010186528390903589383926498085285656423565958024595926873792975238590083598032565193896243055010966720747758688306903815975474975248162031029052678428153080773697904534889409784540382080864237868694010056916742621376817199653199340609480235664609022550710080861664632497251590856995096542677153039105326965792423249813931615352671692098968441855418090996539935953359925907350252932126479022043430912\n", + "1320951468044303979436222683331055661866906843070613657951409130029606724519251253181513685497775078886508289941725824392958777387898418765340212683483294404375581425416940078058371421090908285623355542567660862094892236323181374434165396535122800353829281625404466897803837526166279753753954380403939810851873799838257078776293015284900743654417850068159202747327823192239790751986317613632534215082972408287390824254181533206262803044422348322503363599732416269678568400786295207283348181528069164225839708889228020373056781807178767852996170571312847131916049191853747585950477180167196065130387792486110021933441495517376613807631950949950496324062058105356856306161547395809069778819569080764161728475737388020113833485242753634399306398681218960471329218045101420161723329264994503181713990193085354306078210653931584846499627863230705343384197936883710836181993079871906719851814700505864252958044086861824\n", + "2641902936088607958872445366662111323733813686141227315902818260059213449038502506363027370995550157773016579883451648785917554775796837530680425366966588808751162850833880156116742842181816571246711085135321724189784472646362748868330793070245600707658563250808933795607675052332559507507908760807879621703747599676514157552586030569801487308835700136318405494655646384479581503972635227265068430165944816574781648508363066412525606088844696645006727199464832539357136801572590414566696363056138328451679417778456040746113563614357535705992341142625694263832098383707495171900954360334392130260775584972220043866882991034753227615263901899900992648124116210713712612323094791618139557639138161528323456951474776040227666970485507268798612797362437920942658436090202840323446658529989006363427980386170708612156421307863169692999255726461410686768395873767421672363986159743813439703629401011728505916088173723648\n", + "5283805872177215917744890733324222647467627372282454631805636520118426898077005012726054741991100315546033159766903297571835109551593675061360850733933177617502325701667760312233485684363633142493422170270643448379568945292725497736661586140491201415317126501617867591215350104665119015015817521615759243407495199353028315105172061139602974617671400272636810989311292768959163007945270454530136860331889633149563297016726132825051212177689393290013454398929665078714273603145180829133392726112276656903358835556912081492227127228715071411984682285251388527664196767414990343801908720668784260521551169944440087733765982069506455230527803799801985296248232421427425224646189583236279115278276323056646913902949552080455333940971014537597225594724875841885316872180405680646893317059978012726855960772341417224312842615726339385998511452922821373536791747534843344727972319487626879407258802023457011832176347447296\n", + "10567611744354431835489781466648445294935254744564909263611273040236853796154010025452109483982200631092066319533806595143670219103187350122721701467866355235004651403335520624466971368727266284986844340541286896759137890585450995473323172280982402830634253003235735182430700209330238030031635043231518486814990398706056630210344122279205949235342800545273621978622585537918326015890540909060273720663779266299126594033452265650102424355378786580026908797859330157428547206290361658266785452224553313806717671113824162984454254457430142823969364570502777055328393534829980687603817441337568521043102339888880175467531964139012910461055607599603970592496464842854850449292379166472558230556552646113293827805899104160910667881942029075194451189449751683770633744360811361293786634119956025453711921544682834448625685231452678771997022905845642747073583495069686689455944638975253758814517604046914023664352694894592\n", + "21135223488708863670979562933296890589870509489129818527222546080473707592308020050904218967964401262184132639067613190287340438206374700245443402935732710470009302806671041248933942737454532569973688681082573793518275781170901990946646344561964805661268506006471470364861400418660476060063270086463036973629980797412113260420688244558411898470685601090547243957245171075836652031781081818120547441327558532598253188066904531300204848710757573160053817595718660314857094412580723316533570904449106627613435342227648325968908508914860285647938729141005554110656787069659961375207634882675137042086204679777760350935063928278025820922111215199207941184992929685709700898584758332945116461113105292226587655611798208321821335763884058150388902378899503367541267488721622722587573268239912050907423843089365668897251370462905357543994045811691285494147166990139373378911889277950507517629035208093828047328705389789184\n", + "42270446977417727341959125866593781179741018978259637054445092160947415184616040101808437935928802524368265278135226380574680876412749400490886805871465420940018605613342082497867885474909065139947377362165147587036551562341803981893292689123929611322537012012942940729722800837320952120126540172926073947259961594824226520841376489116823796941371202181094487914490342151673304063562163636241094882655117065196506376133809062600409697421515146320107635191437320629714188825161446633067141808898213255226870684455296651937817017829720571295877458282011108221313574139319922750415269765350274084172409359555520701870127856556051641844222430398415882369985859371419401797169516665890232922226210584453175311223596416643642671527768116300777804757799006735082534977443245445175146536479824101814847686178731337794502740925810715087988091623382570988294333980278746757823778555901015035258070416187656094657410779578368\n", + "84540893954835454683918251733187562359482037956519274108890184321894830369232080203616875871857605048736530556270452761149361752825498800981773611742930841880037211226684164995735770949818130279894754724330295174073103124683607963786585378247859222645074024025885881459445601674641904240253080345852147894519923189648453041682752978233647593882742404362188975828980684303346608127124327272482189765310234130393012752267618125200819394843030292640215270382874641259428377650322893266134283617796426510453741368910593303875634035659441142591754916564022216442627148278639845500830539530700548168344818719111041403740255713112103283688444860796831764739971718742838803594339033331780465844452421168906350622447192833287285343055536232601555609515598013470165069954886490890350293072959648203629695372357462675589005481851621430175976183246765141976588667960557493515647557111802030070516140832375312189314821559156736\n", + "169081787909670909367836503466375124718964075913038548217780368643789660738464160407233751743715210097473061112540905522298723505650997601963547223485861683760074422453368329991471541899636260559789509448660590348146206249367215927573170756495718445290148048051771762918891203349283808480506160691704295789039846379296906083365505956467295187765484808724377951657961368606693216254248654544964379530620468260786025504535236250401638789686060585280430540765749282518856755300645786532268567235592853020907482737821186607751268071318882285183509833128044432885254296557279691001661079061401096336689637438222082807480511426224206567376889721593663529479943437485677607188678066663560931688904842337812701244894385666574570686111072465203111219031196026940330139909772981780700586145919296407259390744714925351178010963703242860351952366493530283953177335921114987031295114223604060141032281664750624378629643118313472\n", + "338163575819341818735673006932750249437928151826077096435560737287579321476928320814467503487430420194946122225081811044597447011301995203927094446971723367520148844906736659982943083799272521119579018897321180696292412498734431855146341512991436890580296096103543525837782406698567616961012321383408591578079692758593812166731011912934590375530969617448755903315922737213386432508497309089928759061240936521572051009070472500803277579372121170560861081531498565037713510601291573064537134471185706041814965475642373215502536142637764570367019666256088865770508593114559382003322158122802192673379274876444165614961022852448413134753779443187327058959886874971355214377356133327121863377809684675625402489788771333149141372222144930406222438062392053880660279819545963561401172291838592814518781489429850702356021927406485720703904732987060567906354671842229974062590228447208120282064563329501248757259286236626944\n", + "676327151638683637471346013865500498875856303652154192871121474575158642953856641628935006974860840389892244450163622089194894022603990407854188893943446735040297689813473319965886167598545042239158037794642361392584824997468863710292683025982873781160592192207087051675564813397135233922024642766817183156159385517187624333462023825869180751061939234897511806631845474426772865016994618179857518122481873043144102018140945001606555158744242341121722163062997130075427021202583146129074268942371412083629930951284746431005072285275529140734039332512177731541017186229118764006644316245604385346758549752888331229922045704896826269507558886374654117919773749942710428754712266654243726755619369351250804979577542666298282744444289860812444876124784107761320559639091927122802344583677185629037562978859701404712043854812971441407809465974121135812709343684459948125180456894416240564129126659002497514518572473253888\n", + "1352654303277367274942692027731000997751712607304308385742242949150317285907713283257870013949721680779784488900327244178389788045207980815708377787886893470080595379626946639931772335197090084478316075589284722785169649994937727420585366051965747562321184384414174103351129626794270467844049285533634366312318771034375248666924047651738361502123878469795023613263690948853545730033989236359715036244963746086288204036281890003213110317488484682243444326125994260150854042405166292258148537884742824167259861902569492862010144570551058281468078665024355463082034372458237528013288632491208770693517099505776662459844091409793652539015117772749308235839547499885420857509424533308487453511238738702501609959155085332596565488888579721624889752249568215522641119278183854245604689167354371258075125957719402809424087709625942882815618931948242271625418687368919896250360913788832481128258253318004995029037144946507776\n", + "2705308606554734549885384055462001995503425214608616771484485898300634571815426566515740027899443361559568977800654488356779576090415961631416755575773786940161190759253893279863544670394180168956632151178569445570339299989875454841170732103931495124642368768828348206702259253588540935688098571067268732624637542068750497333848095303476723004247756939590047226527381897707091460067978472719430072489927492172576408072563780006426220634976969364486888652251988520301708084810332584516297075769485648334519723805138985724020289141102116562936157330048710926164068744916475056026577264982417541387034199011553324919688182819587305078030235545498616471679094999770841715018849066616974907022477477405003219918310170665193130977777159443249779504499136431045282238556367708491209378334708742516150251915438805618848175419251885765631237863896484543250837374737839792500721827577664962256516506636009990058074289893015552\n", + "5410617213109469099770768110924003991006850429217233542968971796601269143630853133031480055798886723119137955601308976713559152180831923262833511151547573880322381518507786559727089340788360337913264302357138891140678599979750909682341464207862990249284737537656696413404518507177081871376197142134537465249275084137500994667696190606953446008495513879180094453054763795414182920135956945438860144979854984345152816145127560012852441269953938728973777304503977040603416169620665169032594151538971296669039447610277971448040578282204233125872314660097421852328137489832950112053154529964835082774068398023106649839376365639174610156060471090997232943358189999541683430037698133233949814044954954810006439836620341330386261955554318886499559008998272862090564477112735416982418756669417485032300503830877611237696350838503771531262475727792969086501674749475679585001443655155329924513033013272019980116148579786031104\n", + "10821234426218938199541536221848007982013700858434467085937943593202538287261706266062960111597773446238275911202617953427118304361663846525667022303095147760644763037015573119454178681576720675826528604714277782281357199959501819364682928415725980498569475075313392826809037014354163742752394284269074930498550168275001989335392381213906892016991027758360188906109527590828365840271913890877720289959709968690305632290255120025704882539907877457947554609007954081206832339241330338065188303077942593338078895220555942896081156564408466251744629320194843704656274979665900224106309059929670165548136796046213299678752731278349220312120942181994465886716379999083366860075396266467899628089909909620012879673240682660772523911108637772999118017996545724181128954225470833964837513338834970064601007661755222475392701677007543062524951455585938173003349498951359170002887310310659849026066026544039960232297159572062208\n", + "21642468852437876399083072443696015964027401716868934171875887186405076574523412532125920223195546892476551822405235906854236608723327693051334044606190295521289526074031146238908357363153441351653057209428555564562714399919003638729365856831451960997138950150626785653618074028708327485504788568538149860997100336550003978670784762427813784033982055516720377812219055181656731680543827781755440579919419937380611264580510240051409765079815754915895109218015908162413664678482660676130376606155885186676157790441111885792162313128816932503489258640389687409312549959331800448212618119859340331096273592092426599357505462556698440624241884363988931773432759998166733720150792532935799256179819819240025759346481365321545047822217275545998236035993091448362257908450941667929675026677669940129202015323510444950785403354015086125049902911171876346006698997902718340005774620621319698052132053088079920464594319144124416\n", + "43284937704875752798166144887392031928054803433737868343751774372810153149046825064251840446391093784953103644810471813708473217446655386102668089212380591042579052148062292477816714726306882703306114418857111129125428799838007277458731713662903921994277900301253571307236148057416654971009577137076299721994200673100007957341569524855627568067964111033440755624438110363313463361087655563510881159838839874761222529161020480102819530159631509831790218436031816324827329356965321352260753212311770373352315580882223771584324626257633865006978517280779374818625099918663600896425236239718680662192547184184853198715010925113396881248483768727977863546865519996333467440301585065871598512359639638480051518692962730643090095644434551091996472071986182896724515816901883335859350053355339880258404030647020889901570806708030172250099805822343752692013397995805436680011549241242639396104264106176159840929188638288248832\n", + "86569875409751505596332289774784063856109606867475736687503548745620306298093650128503680892782187569906207289620943627416946434893310772205336178424761182085158104296124584955633429452613765406612228837714222258250857599676014554917463427325807843988555800602507142614472296114833309942019154274152599443988401346200015914683139049711255136135928222066881511248876220726626926722175311127021762319677679749522445058322040960205639060319263019663580436872063632649654658713930642704521506424623540746704631161764447543168649252515267730013957034561558749637250199837327201792850472479437361324385094368369706397430021850226793762496967537455955727093731039992666934880603170131743197024719279276960103037385925461286180191288869102183992944143972365793449031633803766671718700106710679760516808061294041779803141613416060344500199611644687505384026795991610873360023098482485278792208528212352319681858377276576497664\n", + "173139750819503011192664579549568127712219213734951473375007097491240612596187300257007361785564375139812414579241887254833892869786621544410672356849522364170316208592249169911266858905227530813224457675428444516501715199352029109834926854651615687977111601205014285228944592229666619884038308548305198887976802692400031829366278099422510272271856444133763022497752441453253853444350622254043524639355359499044890116644081920411278120638526039327160873744127265299309317427861285409043012849247081493409262323528895086337298505030535460027914069123117499274500399674654403585700944958874722648770188736739412794860043700453587524993935074911911454187462079985333869761206340263486394049438558553920206074771850922572360382577738204367985888287944731586898063267607533343437400213421359521033616122588083559606283226832120689000399223289375010768053591983221746720046196964970557584417056424704639363716754553152995328\n", + "346279501639006022385329159099136255424438427469902946750014194982481225192374600514014723571128750279624829158483774509667785739573243088821344713699044728340632417184498339822533717810455061626448915350856889033003430398704058219669853709303231375954223202410028570457889184459333239768076617096610397775953605384800063658732556198845020544543712888267526044995504882906507706888701244508087049278710718998089780233288163840822556241277052078654321747488254530598618634855722570818086025698494162986818524647057790172674597010061070920055828138246234998549000799349308807171401889917749445297540377473478825589720087400907175049987870149823822908374924159970667739522412680526972788098877117107840412149543701845144720765155476408735971776575889463173796126535215066686874800426842719042067232245176167119212566453664241378000798446578750021536107183966443493440092393929941115168834112849409278727433509106305990656\n", + "692559003278012044770658318198272510848876854939805893500028389964962450384749201028029447142257500559249658316967549019335571479146486177642689427398089456681264834368996679645067435620910123252897830701713778066006860797408116439339707418606462751908446404820057140915778368918666479536153234193220795551907210769600127317465112397690041089087425776535052089991009765813015413777402489016174098557421437996179560466576327681645112482554104157308643494976509061197237269711445141636172051396988325973637049294115580345349194020122141840111656276492469997098001598698617614342803779835498890595080754946957651179440174801814350099975740299647645816749848319941335479044825361053945576197754234215680824299087403690289441530310952817471943553151778926347592253070430133373749600853685438084134464490352334238425132907328482756001596893157500043072214367932886986880184787859882230337668225698818557454867018212611981312\n", + "1385118006556024089541316636396545021697753709879611787000056779929924900769498402056058894284515001118499316633935098038671142958292972355285378854796178913362529668737993359290134871241820246505795661403427556132013721594816232878679414837212925503816892809640114281831556737837332959072306468386441591103814421539200254634930224795380082178174851553070104179982019531626030827554804978032348197114842875992359120933152655363290224965108208314617286989953018122394474539422890283272344102793976651947274098588231160690698388040244283680223312552984939994196003197397235228685607559670997781190161509893915302358880349603628700199951480599295291633499696639882670958089650722107891152395508468431361648598174807380578883060621905634943887106303557852695184506140860266747499201707370876168268928980704668476850265814656965512003193786315000086144428735865773973760369575719764460675336451397637114909734036425223962624\n", + "2770236013112048179082633272793090043395507419759223574000113559859849801538996804112117788569030002236998633267870196077342285916585944710570757709592357826725059337475986718580269742483640493011591322806855112264027443189632465757358829674425851007633785619280228563663113475674665918144612936772883182207628843078400509269860449590760164356349703106140208359964039063252061655109609956064696394229685751984718241866305310726580449930216416629234573979906036244788949078845780566544688205587953303894548197176462321381396776080488567360446625105969879988392006394794470457371215119341995562380323019787830604717760699207257400399902961198590583266999393279765341916179301444215782304791016936862723297196349614761157766121243811269887774212607115705390369012281720533494998403414741752336537857961409336953700531629313931024006387572630000172288857471731547947520739151439528921350672902795274229819468072850447925248\n", + "5540472026224096358165266545586180086791014839518447148000227119719699603077993608224235577138060004473997266535740392154684571833171889421141515419184715653450118674951973437160539484967280986023182645613710224528054886379264931514717659348851702015267571238560457127326226951349331836289225873545766364415257686156801018539720899181520328712699406212280416719928078126504123310219219912129392788459371503969436483732610621453160899860432833258469147959812072489577898157691561133089376411175906607789096394352924642762793552160977134720893250211939759976784012789588940914742430238683991124760646039575661209435521398414514800799805922397181166533998786559530683832358602888431564609582033873725446594392699229522315532242487622539775548425214231410780738024563441066989996806829483504673075715922818673907401063258627862048012775145260000344577714943463095895041478302879057842701345805590548459638936145700895850496\n", + "11080944052448192716330533091172360173582029679036894296000454239439399206155987216448471154276120008947994533071480784309369143666343778842283030838369431306900237349903946874321078969934561972046365291227420449056109772758529863029435318697703404030535142477120914254652453902698663672578451747091532728830515372313602037079441798363040657425398812424560833439856156253008246620438439824258785576918743007938872967465221242906321799720865666516938295919624144979155796315383122266178752822351813215578192788705849285525587104321954269441786500423879519953568025579177881829484860477367982249521292079151322418871042796829029601599611844794362333067997573119061367664717205776863129219164067747450893188785398459044631064484975245079551096850428462821561476049126882133979993613658967009346151431845637347814802126517255724096025550290520000689155429886926191790082956605758115685402691611181096919277872291401791700992\n", + "22161888104896385432661066182344720347164059358073788592000908478878798412311974432896942308552240017895989066142961568618738287332687557684566061676738862613800474699807893748642157939869123944092730582454840898112219545517059726058870637395406808061070284954241828509304907805397327345156903494183065457661030744627204074158883596726081314850797624849121666879712312506016493240876879648517571153837486015877745934930442485812643599441731333033876591839248289958311592630766244532357505644703626431156385577411698571051174208643908538883573000847759039907136051158355763658969720954735964499042584158302644837742085593658059203199223689588724666135995146238122735329434411553726258438328135494901786377570796918089262128969950490159102193700856925643122952098253764267959987227317934018692302863691274695629604253034511448192051100581040001378310859773852383580165913211516231370805383222362193838555744582803583401984\n", + "44323776209792770865322132364689440694328118716147577184001816957757596824623948865793884617104480035791978132285923137237476574665375115369132123353477725227600949399615787497284315879738247888185461164909681796224439091034119452117741274790813616122140569908483657018609815610794654690313806988366130915322061489254408148317767193452162629701595249698243333759424625012032986481753759297035142307674972031755491869860884971625287198883462666067753183678496579916623185261532489064715011289407252862312771154823397142102348417287817077767146001695518079814272102316711527317939441909471928998085168316605289675484171187316118406398447379177449332271990292476245470658868823107452516876656270989803572755141593836178524257939900980318204387401713851286245904196507528535919974454635868037384605727382549391259208506069022896384102201162080002756621719547704767160331826423032462741610766444724387677111489165607166803968\n", + "88647552419585541730644264729378881388656237432295154368003633915515193649247897731587769234208960071583956264571846274474953149330750230738264246706955450455201898799231574994568631759476495776370922329819363592448878182068238904235482549581627232244281139816967314037219631221589309380627613976732261830644122978508816296635534386904325259403190499396486667518849250024065972963507518594070284615349944063510983739721769943250574397766925332135506367356993159833246370523064978129430022578814505724625542309646794284204696834575634155534292003391036159628544204633423054635878883818943857996170336633210579350968342374632236812796894758354898664543980584952490941317737646214905033753312541979607145510283187672357048515879801960636408774803427702572491808393015057071839948909271736074769211454765098782518417012138045792768204402324160005513243439095409534320663652846064925483221532889448775354222978331214333607936\n", + "177295104839171083461288529458757762777312474864590308736007267831030387298495795463175538468417920143167912529143692548949906298661500461476528493413910900910403797598463149989137263518952991552741844659638727184897756364136477808470965099163254464488562279633934628074439262443178618761255227953464523661288245957017632593271068773808650518806380998792973335037698500048131945927015037188140569230699888127021967479443539886501148795533850664271012734713986319666492741046129956258860045157629011449251084619293588568409393669151268311068584006782072319257088409266846109271757767637887715992340673266421158701936684749264473625593789516709797329087961169904981882635475292429810067506625083959214291020566375344714097031759603921272817549606855405144983616786030114143679897818543472149538422909530197565036834024276091585536408804648320011026486878190819068641327305692129850966443065778897550708445956662428667215872\n", + "354590209678342166922577058917515525554624949729180617472014535662060774596991590926351076936835840286335825058287385097899812597323000922953056986827821801820807595196926299978274527037905983105483689319277454369795512728272955616941930198326508928977124559267869256148878524886357237522510455906929047322576491914035265186542137547617301037612761997585946670075397000096263891854030074376281138461399776254043934958887079773002297591067701328542025469427972639332985482092259912517720090315258022898502169238587177136818787338302536622137168013564144638514176818533692218543515535275775431984681346532842317403873369498528947251187579033419594658175922339809963765270950584859620135013250167918428582041132750689428194063519207842545635099213710810289967233572060228287359795637086944299076845819060395130073668048552183171072817609296640022052973756381638137282654611384259701932886131557795101416891913324857334431744\n", + "709180419356684333845154117835031051109249899458361234944029071324121549193983181852702153873671680572671650116574770195799625194646001845906113973655643603641615190393852599956549054075811966210967378638554908739591025456545911233883860396653017857954249118535738512297757049772714475045020911813858094645152983828070530373084275095234602075225523995171893340150794000192527783708060148752562276922799552508087869917774159546004595182135402657084050938855945278665970964184519825035440180630516045797004338477174354273637574676605073244274336027128289277028353637067384437087031070551550863969362693065684634807746738997057894502375158066839189316351844679619927530541901169719240270026500335836857164082265501378856388127038415685091270198427421620579934467144120456574719591274173888598153691638120790260147336097104366342145635218593280044105947512763276274565309222768519403865772263115590202833783826649714668863488\n", + "1418360838713368667690308235670062102218499798916722469888058142648243098387966363705404307747343361145343300233149540391599250389292003691812227947311287207283230380787705199913098108151623932421934757277109817479182050913091822467767720793306035715908498237071477024595514099545428950090041823627716189290305967656141060746168550190469204150451047990343786680301588000385055567416120297505124553845599105016175739835548319092009190364270805314168101877711890557331941928369039650070880361261032091594008676954348708547275149353210146488548672054256578554056707274134768874174062141103101727938725386131369269615493477994115789004750316133678378632703689359239855061083802339438480540053000671673714328164531002757712776254076831370182540396854843241159868934288240913149439182548347777196307383276241580520294672194208732684291270437186560088211895025526552549130618445537038807731544526231180405667567653299429337726976\n", + "2836721677426737335380616471340124204436999597833444939776116285296486196775932727410808615494686722290686600466299080783198500778584007383624455894622574414566460761575410399826196216303247864843869514554219634958364101826183644935535441586612071431816996474142954049191028199090857900180083647255432378580611935312282121492337100380938408300902095980687573360603176000770111134832240595010249107691198210032351479671096638184018380728541610628336203755423781114663883856738079300141760722522064183188017353908697417094550298706420292977097344108513157108113414548269537748348124282206203455877450772262738539230986955988231578009500632267356757265407378718479710122167604678876961080106001343347428656329062005515425552508153662740365080793709686482319737868576481826298878365096695554392614766552483161040589344388417465368582540874373120176423790051053105098261236891074077615463089052462360811335135306598858675453952\n", + "5673443354853474670761232942680248408873999195666889879552232570592972393551865454821617230989373444581373200932598161566397001557168014767248911789245148829132921523150820799652392432606495729687739029108439269916728203652367289871070883173224142863633992948285908098382056398181715800360167294510864757161223870624564242984674200761876816601804191961375146721206352001540222269664481190020498215382396420064702959342193276368036761457083221256672407510847562229327767713476158600283521445044128366376034707817394834189100597412840585954194688217026314216226829096539075496696248564412406911754901544525477078461973911976463156019001264534713514530814757436959420244335209357753922160212002686694857312658124011030851105016307325480730161587419372964639475737152963652597756730193391108785229533104966322081178688776834930737165081748746240352847580102106210196522473782148155230926178104924721622670270613197717350907904\n", + "11346886709706949341522465885360496817747998391333779759104465141185944787103730909643234461978746889162746401865196323132794003114336029534497823578490297658265843046301641599304784865212991459375478058216878539833456407304734579742141766346448285727267985896571816196764112796363431600720334589021729514322447741249128485969348401523753633203608383922750293442412704003080444539328962380040996430764792840129405918684386552736073522914166442513344815021695124458655535426952317200567042890088256732752069415634789668378201194825681171908389376434052628432453658193078150993392497128824813823509803089050954156923947823952926312038002529069427029061629514873918840488670418715507844320424005373389714625316248022061702210032614650961460323174838745929278951474305927305195513460386782217570459066209932644162357377553669861474330163497492480705695160204212420393044947564296310461852356209849443245340541226395434701815808\n", + "22693773419413898683044931770720993635495996782667559518208930282371889574207461819286468923957493778325492803730392646265588006228672059068995647156980595316531686092603283198609569730425982918750956116433757079666912814609469159484283532692896571454535971793143632393528225592726863201440669178043459028644895482498256971938696803047507266407216767845500586884825408006160889078657924760081992861529585680258811837368773105472147045828332885026689630043390248917311070853904634401134085780176513465504138831269579336756402389651362343816778752868105256864907316386156301986784994257649627647019606178101908313847895647905852624076005058138854058123259029747837680977340837431015688640848010746779429250632496044123404420065229301922920646349677491858557902948611854610391026920773564435140918132419865288324714755107339722948660326994984961411390320408424840786089895128592620923704712419698886490681082452790869403631616\n", + "45387546838827797366089863541441987270991993565335119036417860564743779148414923638572937847914987556650985607460785292531176012457344118137991294313961190633063372185206566397219139460851965837501912232867514159333825629218938318968567065385793142909071943586287264787056451185453726402881338356086918057289790964996513943877393606095014532814433535691001173769650816012321778157315849520163985723059171360517623674737546210944294091656665770053379260086780497834622141707809268802268171560353026931008277662539158673512804779302724687633557505736210513729814632772312603973569988515299255294039212356203816627695791295811705248152010116277708116246518059495675361954681674862031377281696021493558858501264992088246808840130458603845841292699354983717115805897223709220782053841547128870281836264839730576649429510214679445897320653989969922822780640816849681572179790257185241847409424839397772981362164905581738807263232\n", + "90775093677655594732179727082883974541983987130670238072835721129487558296829847277145875695829975113301971214921570585062352024914688236275982588627922381266126744370413132794438278921703931675003824465735028318667651258437876637937134130771586285818143887172574529574112902370907452805762676712173836114579581929993027887754787212190029065628867071382002347539301632024643556314631699040327971446118342721035247349475092421888588183313331540106758520173560995669244283415618537604536343120706053862016555325078317347025609558605449375267115011472421027459629265544625207947139977030598510588078424712407633255391582591623410496304020232555416232493036118991350723909363349724062754563392042987117717002529984176493617680260917207691682585398709967434231611794447418441564107683094257740563672529679461153298859020429358891794641307979939845645561281633699363144359580514370483694818849678795545962724329811163477614526464\n", + "181550187355311189464359454165767949083967974261340476145671442258975116593659694554291751391659950226603942429843141170124704049829376472551965177255844762532253488740826265588876557843407863350007648931470056637335302516875753275874268261543172571636287774345149059148225804741814905611525353424347672229159163859986055775509574424380058131257734142764004695078603264049287112629263398080655942892236685442070494698950184843777176366626663080213517040347121991338488566831237075209072686241412107724033110650156634694051219117210898750534230022944842054919258531089250415894279954061197021176156849424815266510783165183246820992608040465110832464986072237982701447818726699448125509126784085974235434005059968352987235360521834415383365170797419934868463223588894836883128215366188515481127345059358922306597718040858717783589282615959879691291122563267398726288719161028740967389637699357591091925448659622326955229052928\n", + "363100374710622378928718908331535898167935948522680952291342884517950233187319389108583502783319900453207884859686282340249408099658752945103930354511689525064506977481652531177753115686815726700015297862940113274670605033751506551748536523086345143272575548690298118296451609483629811223050706848695344458318327719972111551019148848760116262515468285528009390157206528098574225258526796161311885784473370884140989397900369687554352733253326160427034080694243982676977133662474150418145372482824215448066221300313269388102438234421797501068460045889684109838517062178500831788559908122394042352313698849630533021566330366493641985216080930221664929972144475965402895637453398896251018253568171948470868010119936705974470721043668830766730341594839869736926447177789673766256430732377030962254690118717844613195436081717435567178565231919759382582245126534797452577438322057481934779275398715182183850897319244653910458105856\n", + "726200749421244757857437816663071796335871897045361904582685769035900466374638778217167005566639800906415769719372564680498816199317505890207860709023379050129013954963305062355506231373631453400030595725880226549341210067503013103497073046172690286545151097380596236592903218967259622446101413697390688916636655439944223102038297697520232525030936571056018780314413056197148450517053592322623771568946741768281978795800739375108705466506652320854068161388487965353954267324948300836290744965648430896132442600626538776204876468843595002136920091779368219677034124357001663577119816244788084704627397699261066043132660732987283970432161860443329859944288951930805791274906797792502036507136343896941736020239873411948941442087337661533460683189679739473852894355579347532512861464754061924509380237435689226390872163434871134357130463839518765164490253069594905154876644114963869558550797430364367701794638489307820916211712\n", + "1452401498842489515714875633326143592671743794090723809165371538071800932749277556434334011133279601812831539438745129360997632398635011780415721418046758100258027909926610124711012462747262906800061191451760453098682420135006026206994146092345380573090302194761192473185806437934519244892202827394781377833273310879888446204076595395040465050061873142112037560628826112394296901034107184645247543137893483536563957591601478750217410933013304641708136322776975930707908534649896601672581489931296861792264885201253077552409752937687190004273840183558736439354068248714003327154239632489576169409254795398522132086265321465974567940864323720886659719888577903861611582549813595585004073014272687793883472040479746823897882884174675323066921366379359478947705788711158695065025722929508123849018760474871378452781744326869742268714260927679037530328980506139189810309753288229927739117101594860728735403589276978615641832423424\n", + "2904802997684979031429751266652287185343487588181447618330743076143601865498555112868668022266559203625663078877490258721995264797270023560831442836093516200516055819853220249422024925494525813600122382903520906197364840270012052413988292184690761146180604389522384946371612875869038489784405654789562755666546621759776892408153190790080930100123746284224075121257652224788593802068214369290495086275786967073127915183202957500434821866026609283416272645553951861415817069299793203345162979862593723584529770402506155104819505875374380008547680367117472878708136497428006654308479264979152338818509590797044264172530642931949135881728647441773319439777155807723223165099627191170008146028545375587766944080959493647795765768349350646133842732758718957895411577422317390130051445859016247698037520949742756905563488653739484537428521855358075060657961012278379620619506576459855478234203189721457470807178553957231283664846848\n", + "5809605995369958062859502533304574370686975176362895236661486152287203730997110225737336044533118407251326157754980517443990529594540047121662885672187032401032111639706440498844049850989051627200244765807041812394729680540024104827976584369381522292361208779044769892743225751738076979568811309579125511333093243519553784816306381580161860200247492568448150242515304449577187604136428738580990172551573934146255830366405915000869643732053218566832545291107903722831634138599586406690325959725187447169059540805012310209639011750748760017095360734234945757416272994856013308616958529958304677637019181594088528345061285863898271763457294883546638879554311615446446330199254382340016292057090751175533888161918987295591531536698701292267685465517437915790823154844634780260102891718032495396075041899485513811126977307478969074857043710716150121315922024556759241239013152919710956468406379442914941614357107914462567329693696\n", + "11619211990739916125719005066609148741373950352725790473322972304574407461994220451474672089066236814502652315509961034887981059189080094243325771344374064802064223279412880997688099701978103254400489531614083624789459361080048209655953168738763044584722417558089539785486451503476153959137622619158251022666186487039107569632612763160323720400494985136896300485030608899154375208272857477161980345103147868292511660732811830001739287464106437133665090582215807445663268277199172813380651919450374894338119081610024620419278023501497520034190721468469891514832545989712026617233917059916609355274038363188177056690122571727796543526914589767093277759108623230892892660398508764680032584114181502351067776323837974591183063073397402584535370931034875831581646309689269560520205783436064990792150083798971027622253954614957938149714087421432300242631844049113518482478026305839421912936812758885829883228714215828925134659387392\n", + "23238423981479832251438010133218297482747900705451580946645944609148814923988440902949344178132473629005304631019922069775962118378160188486651542688748129604128446558825761995376199403956206508800979063228167249578918722160096419311906337477526089169444835116179079570972903006952307918275245238316502045332372974078215139265225526320647440800989970273792600970061217798308750416545714954323960690206295736585023321465623660003478574928212874267330181164431614891326536554398345626761303838900749788676238163220049240838556047002995040068381442936939783029665091979424053234467834119833218710548076726376354113380245143455593087053829179534186555518217246461785785320797017529360065168228363004702135552647675949182366126146794805169070741862069751663163292619378539121040411566872129981584300167597942055244507909229915876299428174842864600485263688098227036964956052611678843825873625517771659766457428431657850269318774784\n", + "46476847962959664502876020266436594965495801410903161893291889218297629847976881805898688356264947258010609262039844139551924236756320376973303085377496259208256893117651523990752398807912413017601958126456334499157837444320192838623812674955052178338889670232358159141945806013904615836550490476633004090664745948156430278530451052641294881601979940547585201940122435596617500833091429908647921380412591473170046642931247320006957149856425748534660362328863229782653073108796691253522607677801499577352476326440098481677112094005990080136762885873879566059330183958848106468935668239666437421096153452752708226760490286911186174107658359068373111036434492923571570641594035058720130336456726009404271105295351898364732252293589610338141483724139503326326585238757078242080823133744259963168600335195884110489015818459831752598856349685729200970527376196454073929912105223357687651747251035543319532914856863315700538637549568\n", + "92953695925919329005752040532873189930991602821806323786583778436595259695953763611797376712529894516021218524079688279103848473512640753946606170754992518416513786235303047981504797615824826035203916252912668998315674888640385677247625349910104356677779340464716318283891612027809231673100980953266008181329491896312860557060902105282589763203959881095170403880244871193235001666182859817295842760825182946340093285862494640013914299712851497069320724657726459565306146217593382507045215355602999154704952652880196963354224188011980160273525771747759132118660367917696212937871336479332874842192306905505416453520980573822372348215316718136746222072868985847143141283188070117440260672913452018808542210590703796729464504587179220676282967448279006652653170477514156484161646267488519926337200670391768220978031636919663505197712699371458401941054752392908147859824210446715375303494502071086639065829713726631401077275099136\n", + "185907391851838658011504081065746379861983205643612647573167556873190519391907527223594753425059789032042437048159376558207696947025281507893212341509985036833027572470606095963009595231649652070407832505825337996631349777280771354495250699820208713355558680929432636567783224055618463346201961906532016362658983792625721114121804210565179526407919762190340807760489742386470003332365719634591685521650365892680186571724989280027828599425702994138641449315452919130612292435186765014090430711205998309409905305760393926708448376023960320547051543495518264237320735835392425875742672958665749684384613811010832907041961147644744696430633436273492444145737971694286282566376140234880521345826904037617084421181407593458929009174358441352565934896558013305306340955028312968323292534977039852674401340783536441956063273839327010395425398742916803882109504785816295719648420893430750606989004142173278131659427453262802154550198272\n", + "371814783703677316023008162131492759723966411287225295146335113746381038783815054447189506850119578064084874096318753116415393894050563015786424683019970073666055144941212191926019190463299304140815665011650675993262699554561542708990501399640417426711117361858865273135566448111236926692403923813064032725317967585251442228243608421130359052815839524380681615520979484772940006664731439269183371043300731785360373143449978560055657198851405988277282898630905838261224584870373530028180861422411996618819810611520787853416896752047920641094103086991036528474641471670784851751485345917331499368769227622021665814083922295289489392861266872546984888291475943388572565132752280469761042691653808075234168842362815186917858018348716882705131869793116026610612681910056625936646585069954079705348802681567072883912126547678654020790850797485833607764219009571632591439296841786861501213978008284346556263318854906525604309100396544\n", + "743629567407354632046016324262985519447932822574450590292670227492762077567630108894379013700239156128169748192637506232830787788101126031572849366039940147332110289882424383852038380926598608281631330023301351986525399109123085417981002799280834853422234723717730546271132896222473853384807847626128065450635935170502884456487216842260718105631679048761363231041958969545880013329462878538366742086601463570720746286899957120111314397702811976554565797261811676522449169740747060056361722844823993237639621223041575706833793504095841282188206173982073056949282943341569703502970691834662998737538455244043331628167844590578978785722533745093969776582951886777145130265504560939522085383307616150468337684725630373835716036697433765410263739586232053221225363820113251873293170139908159410697605363134145767824253095357308041581701594971667215528438019143265182878593683573723002427956016568693112526637709813051208618200793088\n", + "1487259134814709264092032648525971038895865645148901180585340454985524155135260217788758027400478312256339496385275012465661575576202252063145698732079880294664220579764848767704076761853197216563262660046602703973050798218246170835962005598561669706844469447435461092542265792444947706769615695252256130901271870341005768912974433684521436211263358097522726462083917939091760026658925757076733484173202927141441492573799914240222628795405623953109131594523623353044898339481494120112723445689647986475279242446083151413667587008191682564376412347964146113898565886683139407005941383669325997475076910488086663256335689181157957571445067490187939553165903773554290260531009121879044170766615232300936675369451260747671432073394867530820527479172464106442450727640226503746586340279816318821395210726268291535648506190714616083163403189943334431056876038286530365757187367147446004855912033137386225053275419626102417236401586176\n", + "2974518269629418528184065297051942077791731290297802361170680909971048310270520435577516054800956624512678992770550024931323151152404504126291397464159760589328441159529697535408153523706394433126525320093205407946101596436492341671924011197123339413688938894870922185084531584889895413539231390504512261802543740682011537825948867369042872422526716195045452924167835878183520053317851514153466968346405854282882985147599828480445257590811247906218263189047246706089796678962988240225446891379295972950558484892166302827335174016383365128752824695928292227797131773366278814011882767338651994950153820976173326512671378362315915142890134980375879106331807547108580521062018243758088341533230464601873350738902521495342864146789735061641054958344928212884901455280453007493172680559632637642790421452536583071297012381429232166326806379886668862113752076573060731514374734294892009711824066274772450106550839252204834472803172352\n", + "5949036539258837056368130594103884155583462580595604722341361819942096620541040871155032109601913249025357985541100049862646302304809008252582794928319521178656882319059395070816307047412788866253050640186410815892203192872984683343848022394246678827377877789741844370169063169779790827078462781009024523605087481364023075651897734738085744845053432390090905848335671756367040106635703028306933936692811708565765970295199656960890515181622495812436526378094493412179593357925976480450893782758591945901116969784332605654670348032766730257505649391856584455594263546732557628023765534677303989900307641952346653025342756724631830285780269960751758212663615094217161042124036487516176683066460929203746701477805042990685728293579470123282109916689856425769802910560906014986345361119265275285580842905073166142594024762858464332653612759773337724227504153146121463028749468589784019423648132549544900213101678504409668945606344704\n", + "11898073078517674112736261188207768311166925161191209444682723639884193241082081742310064219203826498050715971082200099725292604609618016505165589856639042357313764638118790141632614094825577732506101280372821631784406385745969366687696044788493357654755755579483688740338126339559581654156925562018049047210174962728046151303795469476171489690106864780181811696671343512734080213271406056613867873385623417131531940590399313921781030363244991624873052756188986824359186715851952960901787565517183891802233939568665211309340696065533460515011298783713168911188527093465115256047531069354607979800615283904693306050685513449263660571560539921503516425327230188434322084248072975032353366132921858407493402955610085981371456587158940246564219833379712851539605821121812029972690722238530550571161685810146332285188049525716928665307225519546675448455008306292242926057498937179568038847296265099089800426203357008819337891212689408\n", + "23796146157035348225472522376415536622333850322382418889365447279768386482164163484620128438407652996101431942164400199450585209219236033010331179713278084714627529276237580283265228189651155465012202560745643263568812771491938733375392089576986715309511511158967377480676252679119163308313851124036098094420349925456092302607590938952342979380213729560363623393342687025468160426542812113227735746771246834263063881180798627843562060726489983249746105512377973648718373431703905921803575131034367783604467879137330422618681392131066921030022597567426337822377054186930230512095062138709215959601230567809386612101371026898527321143121079843007032850654460376868644168496145950064706732265843716814986805911220171962742913174317880493128439666759425703079211642243624059945381444477061101142323371620292664570376099051433857330614451039093350896910016612584485852114997874359136077694592530198179600852406714017638675782425378816\n", + "47592292314070696450945044752831073244667700644764837778730894559536772964328326969240256876815305992202863884328800398901170418438472066020662359426556169429255058552475160566530456379302310930024405121491286527137625542983877466750784179153973430619023022317934754961352505358238326616627702248072196188840699850912184605215181877904685958760427459120727246786685374050936320853085624226455471493542493668526127762361597255687124121452979966499492211024755947297436746863407811843607150262068735567208935758274660845237362784262133842060045195134852675644754108373860461024190124277418431919202461135618773224202742053797054642286242159686014065701308920753737288336992291900129413464531687433629973611822440343925485826348635760986256879333518851406158423284487248119890762888954122202284646743240585329140752198102867714661228902078186701793820033225168971704229995748718272155389185060396359201704813428035277351564850757632\n", + "95184584628141392901890089505662146489335401289529675557461789119073545928656653938480513753630611984405727768657600797802340836876944132041324718853112338858510117104950321133060912758604621860048810242982573054275251085967754933501568358307946861238046044635869509922705010716476653233255404496144392377681399701824369210430363755809371917520854918241454493573370748101872641706171248452910942987084987337052255524723194511374248242905959932998984422049511894594873493726815623687214300524137471134417871516549321690474725568524267684120090390269705351289508216747720922048380248554836863838404922271237546448405484107594109284572484319372028131402617841507474576673984583800258826929063374867259947223644880687850971652697271521972513758667037702812316846568974496239781525777908244404569293486481170658281504396205735429322457804156373403587640066450337943408459991497436544310778370120792718403409626856070554703129701515264\n", + "190369169256282785803780179011324292978670802579059351114923578238147091857313307876961027507261223968811455537315201595604681673753888264082649437706224677717020234209900642266121825517209243720097620485965146108550502171935509867003136716615893722476092089271739019845410021432953306466510808992288784755362799403648738420860727511618743835041709836482908987146741496203745283412342496905821885974169974674104511049446389022748496485811919865997968844099023789189746987453631247374428601048274942268835743033098643380949451137048535368240180780539410702579016433495441844096760497109673727676809844542475092896810968215188218569144968638744056262805235683014949153347969167600517653858126749734519894447289761375701943305394543043945027517334075405624633693137948992479563051555816488809138586972962341316563008792411470858644915608312746807175280132900675886816919982994873088621556740241585436806819253712141109406259403030528\n", + "380738338512565571607560358022648585957341605158118702229847156476294183714626615753922055014522447937622911074630403191209363347507776528165298875412449355434040468419801284532243651034418487440195240971930292217101004343871019734006273433231787444952184178543478039690820042865906612933021617984577569510725598807297476841721455023237487670083419672965817974293482992407490566824684993811643771948339949348209022098892778045496992971623839731995937688198047578379493974907262494748857202096549884537671486066197286761898902274097070736480361561078821405158032866990883688193520994219347455353619689084950185793621936430376437138289937277488112525610471366029898306695938335201035307716253499469039788894579522751403886610789086087890055034668150811249267386275897984959126103111632977618277173945924682633126017584822941717289831216625493614350560265801351773633839965989746177243113480483170873613638507424282218812518806061056\n", + "761476677025131143215120716045297171914683210316237404459694312952588367429253231507844110029044895875245822149260806382418726695015553056330597750824898710868080936839602569064487302068836974880390481943860584434202008687742039468012546866463574889904368357086956079381640085731813225866043235969155139021451197614594953683442910046474975340166839345931635948586965984814981133649369987623287543896679898696418044197785556090993985943247679463991875376396095156758987949814524989497714404193099769075342972132394573523797804548194141472960723122157642810316065733981767376387041988438694910707239378169900371587243872860752874276579874554976225051220942732059796613391876670402070615432506998938079577789159045502807773221578172175780110069336301622498534772551795969918252206223265955236554347891849365266252035169645883434579662433250987228701120531602703547267679931979492354486226960966341747227277014848564437625037612122112\n", + "1522953354050262286430241432090594343829366420632474808919388625905176734858506463015688220058089791750491644298521612764837453390031106112661195501649797421736161873679205138128974604137673949760780963887721168868404017375484078936025093732927149779808736714173912158763280171463626451732086471938310278042902395229189907366885820092949950680333678691863271897173931969629962267298739975246575087793359797392836088395571112181987971886495358927983750752792190313517975899629049978995428808386199538150685944264789147047595609096388282945921446244315285620632131467963534752774083976877389821414478756339800743174487745721505748553159749109952450102441885464119593226783753340804141230865013997876159155578318091005615546443156344351560220138672603244997069545103591939836504412446531910473108695783698730532504070339291766869159324866501974457402241063205407094535359863958984708972453921932683494454554029697128875250075224244224\n", + "3045906708100524572860482864181188687658732841264949617838777251810353469717012926031376440116179583500983288597043225529674906780062212225322391003299594843472323747358410276257949208275347899521561927775442337736808034750968157872050187465854299559617473428347824317526560342927252903464172943876620556085804790458379814733771640185899901360667357383726543794347863939259924534597479950493150175586719594785672176791142224363975943772990717855967501505584380627035951799258099957990857616772399076301371888529578294095191218192776565891842892488630571241264262935927069505548167953754779642828957512679601486348975491443011497106319498219904900204883770928239186453567506681608282461730027995752318311156636182011231092886312688703120440277345206489994139090207183879673008824893063820946217391567397461065008140678583533738318649733003948914804482126410814189070719727917969417944907843865366988909108059394257750500150448488448\n", + "6091813416201049145720965728362377375317465682529899235677554503620706939434025852062752880232359167001966577194086451059349813560124424450644782006599189686944647494716820552515898416550695799043123855550884675473616069501936315744100374931708599119234946856695648635053120685854505806928345887753241112171609580916759629467543280371799802721334714767453087588695727878519849069194959900986300351173439189571344353582284448727951887545981435711935003011168761254071903598516199915981715233544798152602743777059156588190382436385553131783685784977261142482528525871854139011096335907509559285657915025359202972697950982886022994212638996439809800409767541856478372907135013363216564923460055991504636622313272364022462185772625377406240880554690412979988278180414367759346017649786127641892434783134794922130016281357167067476637299466007897829608964252821628378141439455835938835889815687730733977818216118788515501000300896976896\n", + "12183626832402098291441931456724754750634931365059798471355109007241413878868051704125505760464718334003933154388172902118699627120248848901289564013198379373889294989433641105031796833101391598086247711101769350947232139003872631488200749863417198238469893713391297270106241371709011613856691775506482224343219161833519258935086560743599605442669429534906175177391455757039698138389919801972600702346878379142688707164568897455903775091962871423870006022337522508143807197032399831963430467089596305205487554118313176380764872771106263567371569954522284965057051743708278022192671815019118571315830050718405945395901965772045988425277992879619600819535083712956745814270026726433129846920111983009273244626544728044924371545250754812481761109380825959976556360828735518692035299572255283784869566269589844260032562714334134953274598932015795659217928505643256756282878911671877671779631375461467955636432237577031002000601793953792\n", + "24367253664804196582883862913449509501269862730119596942710218014482827757736103408251011520929436668007866308776345804237399254240497697802579128026396758747778589978867282210063593666202783196172495422203538701894464278007745262976401499726834396476939787426782594540212482743418023227713383551012964448686438323667038517870173121487199210885338859069812350354782911514079396276779839603945201404693756758285377414329137794911807550183925742847740012044675045016287614394064799663926860934179192610410975108236626352761529745542212527134743139909044569930114103487416556044385343630038237142631660101436811890791803931544091976850555985759239201639070167425913491628540053452866259693840223966018546489253089456089848743090501509624963522218761651919953112721657471037384070599144510567569739132539179688520065125428668269906549197864031591318435857011286513512565757823343755343559262750922935911272864475154062004001203587907584\n", + "48734507329608393165767725826899019002539725460239193885420436028965655515472206816502023041858873336015732617552691608474798508480995395605158256052793517495557179957734564420127187332405566392344990844407077403788928556015490525952802999453668792953879574853565189080424965486836046455426767102025928897372876647334077035740346242974398421770677718139624700709565823028158792553559679207890402809387513516570754828658275589823615100367851485695480024089350090032575228788129599327853721868358385220821950216473252705523059491084425054269486279818089139860228206974833112088770687260076474285263320202873623781583607863088183953701111971518478403278140334851826983257080106905732519387680447932037092978506178912179697486181003019249927044437523303839906225443314942074768141198289021135139478265078359377040130250857336539813098395728063182636871714022573027025131515646687510687118525501845871822545728950308124008002407175815168\n", + "97469014659216786331535451653798038005079450920478387770840872057931311030944413633004046083717746672031465235105383216949597016961990791210316512105587034991114359915469128840254374664811132784689981688814154807577857112030981051905605998907337585907759149707130378160849930973672092910853534204051857794745753294668154071480692485948796843541355436279249401419131646056317585107119358415780805618775027033141509657316551179647230200735702971390960048178700180065150457576259198655707443736716770441643900432946505411046118982168850108538972559636178279720456413949666224177541374520152948570526640405747247563167215726176367907402223943036956806556280669703653966514160213811465038775360895864074185957012357824359394972362006038499854088875046607679812450886629884149536282396578042270278956530156718754080260501714673079626196791456126365273743428045146054050263031293375021374237051003691743645091457900616248016004814351630336\n", + "194938029318433572663070903307596076010158901840956775541681744115862622061888827266008092167435493344062930470210766433899194033923981582420633024211174069982228719830938257680508749329622265569379963377628309615155714224061962103811211997814675171815518299414260756321699861947344185821707068408103715589491506589336308142961384971897593687082710872558498802838263292112635170214238716831561611237550054066283019314633102359294460401471405942781920096357400360130300915152518397311414887473433540883287800865893010822092237964337700217077945119272356559440912827899332448355082749040305897141053280811494495126334431452352735814804447886073913613112561339407307933028320427622930077550721791728148371914024715648718789944724012076999708177750093215359624901773259768299072564793156084540557913060313437508160521003429346159252393582912252730547486856090292108100526062586750042748474102007383487290182915801232496032009628703260672\n", + "389876058636867145326141806615192152020317803681913551083363488231725244123777654532016184334870986688125860940421532867798388067847963164841266048422348139964457439661876515361017498659244531138759926755256619230311428448123924207622423995629350343631036598828521512643399723894688371643414136816207431178983013178672616285922769943795187374165421745116997605676526584225270340428477433663123222475100108132566038629266204718588920802942811885563840192714800720260601830305036794622829774946867081766575601731786021644184475928675400434155890238544713118881825655798664896710165498080611794282106561622988990252668862904705471629608895772147827226225122678814615866056640855245860155101443583456296743828049431297437579889448024153999416355500186430719249803546519536598145129586312169081115826120626875016321042006858692318504787165824505461094973712180584216201052125173500085496948204014766974580365831602464992064019257406521344\n", + "779752117273734290652283613230384304040635607363827102166726976463450488247555309064032368669741973376251721880843065735596776135695926329682532096844696279928914879323753030722034997318489062277519853510513238460622856896247848415244847991258700687262073197657043025286799447789376743286828273632414862357966026357345232571845539887590374748330843490233995211353053168450540680856954867326246444950200216265132077258532409437177841605885623771127680385429601440521203660610073589245659549893734163533151203463572043288368951857350800868311780477089426237763651311597329793420330996161223588564213123245977980505337725809410943259217791544295654452450245357629231732113281710491720310202887166912593487656098862594875159778896048307998832711000372861438499607093039073196290259172624338162231652241253750032642084013717384637009574331649010922189947424361168432402104250347000170993896408029533949160731663204929984128038514813042688\n", + "1559504234547468581304567226460768608081271214727654204333453952926900976495110618128064737339483946752503443761686131471193552271391852659365064193689392559857829758647506061444069994636978124555039707021026476921245713792495696830489695982517401374524146395314086050573598895578753486573656547264829724715932052714690465143691079775180749496661686980467990422706106336901081361713909734652492889900400432530264154517064818874355683211771247542255360770859202881042407321220147178491319099787468327066302406927144086576737903714701601736623560954178852475527302623194659586840661992322447177128426246491955961010675451618821886518435583088591308904900490715258463464226563420983440620405774333825186975312197725189750319557792096615997665422000745722876999214186078146392580518345248676324463304482507500065284168027434769274019148663298021844379894848722336864804208500694000341987792816059067898321463326409859968256077029626085376\n", + "3119008469094937162609134452921537216162542429455308408666907905853801952990221236256129474678967893505006887523372262942387104542783705318730128387378785119715659517295012122888139989273956249110079414042052953842491427584991393660979391965034802749048292790628172101147197791157506973147313094529659449431864105429380930287382159550361498993323373960935980845412212673802162723427819469304985779800800865060528309034129637748711366423542495084510721541718405762084814642440294356982638199574936654132604813854288173153475807429403203473247121908357704951054605246389319173681323984644894354256852492983911922021350903237643773036871166177182617809800981430516926928453126841966881240811548667650373950624395450379500639115584193231995330844001491445753998428372156292785161036690497352648926608965015000130568336054869538548038297326596043688759789697444673729608417001388000683975585632118135796642926652819719936512154059252170752\n", + "6238016938189874325218268905843074432325084858910616817333815811707603905980442472512258949357935787010013775046744525884774209085567410637460256774757570239431319034590024245776279978547912498220158828084105907684982855169982787321958783930069605498096585581256344202294395582315013946294626189059318898863728210858761860574764319100722997986646747921871961690824425347604325446855638938609971559601601730121056618068259275497422732847084990169021443083436811524169629284880588713965276399149873308265209627708576346306951614858806406946494243816715409902109210492778638347362647969289788708513704985967823844042701806475287546073742332354365235619601962861033853856906253683933762481623097335300747901248790900759001278231168386463990661688002982891507996856744312585570322073380994705297853217930030000261136672109739077096076594653192087377519579394889347459216834002776001367951171264236271593285853305639439873024308118504341504\n", + "12476033876379748650436537811686148864650169717821233634667631623415207811960884945024517898715871574020027550093489051769548418171134821274920513549515140478862638069180048491552559957095824996440317656168211815369965710339965574643917567860139210996193171162512688404588791164630027892589252378118637797727456421717523721149528638201445995973293495843743923381648850695208650893711277877219943119203203460242113236136518550994845465694169980338042886166873623048339258569761177427930552798299746616530419255417152692613903229717612813892988487633430819804218420985557276694725295938579577417027409971935647688085403612950575092147484664708730471239203925722067707713812507367867524963246194670601495802497581801518002556462336772927981323376005965783015993713488625171140644146761989410595706435860060000522273344219478154192153189306384174755039158789778694918433668005552002735902342528472543186571706611278879746048616237008683008\n", + "24952067752759497300873075623372297729300339435642467269335263246830415623921769890049035797431743148040055100186978103539096836342269642549841027099030280957725276138360096983105119914191649992880635312336423630739931420679931149287835135720278421992386342325025376809177582329260055785178504756237275595454912843435047442299057276402891991946586991687487846763297701390417301787422555754439886238406406920484226472273037101989690931388339960676085772333747246096678517139522354855861105596599493233060838510834305385227806459435225627785976975266861639608436841971114553389450591877159154834054819943871295376170807225901150184294969329417460942478407851444135415427625014735735049926492389341202991604995163603036005112924673545855962646752011931566031987426977250342281288293523978821191412871720120001044546688438956308384306378612768349510078317579557389836867336011104005471804685056945086373143413222557759492097232474017366016\n", + "49904135505518994601746151246744595458600678871284934538670526493660831247843539780098071594863486296080110200373956207078193672684539285099682054198060561915450552276720193966210239828383299985761270624672847261479862841359862298575670271440556843984772684650050753618355164658520111570357009512474551190909825686870094884598114552805783983893173983374975693526595402780834603574845111508879772476812813840968452944546074203979381862776679921352171544667494492193357034279044709711722211193198986466121677021668610770455612918870451255571953950533723279216873683942229106778901183754318309668109639887742590752341614451802300368589938658834921884956815702888270830855250029471470099852984778682405983209990327206072010225849347091711925293504023863132063974853954500684562576587047957642382825743440240002089093376877912616768612757225536699020156635159114779673734672022208010943609370113890172746286826445115518984194464948034732032\n", + "99808271011037989203492302493489190917201357742569869077341052987321662495687079560196143189726972592160220400747912414156387345369078570199364108396121123830901104553440387932420479656766599971522541249345694522959725682719724597151340542881113687969545369300101507236710329317040223140714019024949102381819651373740189769196229105611567967786347966749951387053190805561669207149690223017759544953625627681936905889092148407958763725553359842704343089334988984386714068558089419423444422386397972932243354043337221540911225837740902511143907901067446558433747367884458213557802367508636619336219279775485181504683228903604600737179877317669843769913631405776541661710500058942940199705969557364811966419980654412144020451698694183423850587008047726264127949707909001369125153174095915284765651486880480004178186753755825233537225514451073398040313270318229559347469344044416021887218740227780345492573652890231037968388929896069464064\n", + "199616542022075978406984604986978381834402715485139738154682105974643324991374159120392286379453945184320440801495824828312774690738157140398728216792242247661802209106880775864840959313533199943045082498691389045919451365439449194302681085762227375939090738600203014473420658634080446281428038049898204763639302747480379538392458211223135935572695933499902774106381611123338414299380446035519089907251255363873811778184296815917527451106719685408686178669977968773428137116178838846888844772795945864486708086674443081822451675481805022287815802134893116867494735768916427115604735017273238672438559550970363009366457807209201474359754635339687539827262811553083323421000117885880399411939114729623932839961308824288040903397388366847701174016095452528255899415818002738250306348191830569531302973760960008356373507511650467074451028902146796080626540636459118694938688088832043774437480455560690985147305780462075936777859792138928128\n", + "399233084044151956813969209973956763668805430970279476309364211949286649982748318240784572758907890368640881602991649656625549381476314280797456433584484495323604418213761551729681918627066399886090164997382778091838902730878898388605362171524454751878181477200406028946841317268160892562856076099796409527278605494960759076784916422446271871145391866999805548212763222246676828598760892071038179814502510727747623556368593631835054902213439370817372357339955937546856274232357677693777689545591891728973416173348886163644903350963610044575631604269786233734989471537832854231209470034546477344877119101940726018732915614418402948719509270679375079654525623106166646842000235771760798823878229459247865679922617648576081806794776733695402348032190905056511798831636005476500612696383661139062605947521920016712747015023300934148902057804293592161253081272918237389877376177664087548874960911121381970294611560924151873555719584277856256\n", + "798466168088303913627938419947913527337610861940558952618728423898573299965496636481569145517815780737281763205983299313251098762952628561594912867168968990647208836427523103459363837254132799772180329994765556183677805461757796777210724343048909503756362954400812057893682634536321785125712152199592819054557210989921518153569832844892543742290783733999611096425526444493353657197521784142076359629005021455495247112737187263670109804426878741634744714679911875093712548464715355387555379091183783457946832346697772327289806701927220089151263208539572467469978943075665708462418940069092954689754238203881452037465831228836805897439018541358750159309051246212333293684000471543521597647756458918495731359845235297152163613589553467390804696064381810113023597663272010953001225392767322278125211895043840033425494030046601868297804115608587184322506162545836474779754752355328175097749921822242763940589223121848303747111439168555712512\n", + "1596932336176607827255876839895827054675221723881117905237456847797146599930993272963138291035631561474563526411966598626502197525905257123189825734337937981294417672855046206918727674508265599544360659989531112367355610923515593554421448686097819007512725908801624115787365269072643570251424304399185638109114421979843036307139665689785087484581567467999222192851052888986707314395043568284152719258010042910990494225474374527340219608853757483269489429359823750187425096929430710775110758182367566915893664693395544654579613403854440178302526417079144934939957886151331416924837880138185909379508476407762904074931662457673611794878037082717500318618102492424666587368000943087043195295512917836991462719690470594304327227179106934781609392128763620226047195326544021906002450785534644556250423790087680066850988060093203736595608231217174368645012325091672949559509504710656350195499843644485527881178446243696607494222878337111425024\n", + "3193864672353215654511753679791654109350443447762235810474913695594293199861986545926276582071263122949127052823933197253004395051810514246379651468675875962588835345710092413837455349016531199088721319979062224734711221847031187108842897372195638015025451817603248231574730538145287140502848608798371276218228843959686072614279331379570174969163134935998444385702105777973414628790087136568305438516020085821980988450948749054680439217707514966538978858719647500374850193858861421550221516364735133831787329386791089309159226807708880356605052834158289869879915772302662833849675760276371818759016952815525808149863324915347223589756074165435000637236204984849333174736001886174086390591025835673982925439380941188608654454358213869563218784257527240452094390653088043812004901571069289112500847580175360133701976120186407473191216462434348737290024650183345899119019009421312700390999687288971055762356892487393214988445756674222850048\n", + "6387729344706431309023507359583308218700886895524471620949827391188586399723973091852553164142526245898254105647866394506008790103621028492759302937351751925177670691420184827674910698033062398177442639958124449469422443694062374217685794744391276030050903635206496463149461076290574281005697217596742552436457687919372145228558662759140349938326269871996888771404211555946829257580174273136610877032040171643961976901897498109360878435415029933077957717439295000749700387717722843100443032729470267663574658773582178618318453615417760713210105668316579739759831544605325667699351520552743637518033905631051616299726649830694447179512148330870001274472409969698666349472003772348172781182051671347965850878761882377217308908716427739126437568515054480904188781306176087624009803142138578225001695160350720267403952240372814946382432924868697474580049300366691798238038018842625400781999374577942111524713784974786429976891513348445700096\n", + "12775458689412862618047014719166616437401773791048943241899654782377172799447946183705106328285052491796508211295732789012017580207242056985518605874703503850355341382840369655349821396066124796354885279916248898938844887388124748435371589488782552060101807270412992926298922152581148562011394435193485104872915375838744290457117325518280699876652539743993777542808423111893658515160348546273221754064080343287923953803794996218721756870830059866155915434878590001499400775435445686200886065458940535327149317547164357236636907230835521426420211336633159479519663089210651335398703041105487275036067811262103232599453299661388894359024296661740002548944819939397332698944007544696345562364103342695931701757523764754434617817432855478252875137030108961808377562612352175248019606284277156450003390320701440534807904480745629892764865849737394949160098600733383596476076037685250801563998749155884223049427569949572859953783026696891400192\n", + "25550917378825725236094029438333232874803547582097886483799309564754345598895892367410212656570104983593016422591465578024035160414484113971037211749407007700710682765680739310699642792132249592709770559832497797877689774776249496870743178977565104120203614540825985852597844305162297124022788870386970209745830751677488580914234651036561399753305079487987555085616846223787317030320697092546443508128160686575847907607589992437443513741660119732311830869757180002998801550870891372401772130917881070654298635094328714473273814461671042852840422673266318959039326178421302670797406082210974550072135622524206465198906599322777788718048593323480005097889639878794665397888015089392691124728206685391863403515047529508869235634865710956505750274060217923616755125224704350496039212568554312900006780641402881069615808961491259785529731699474789898320197201466767192952152075370501603127997498311768446098855139899145719907566053393782800384\n", + "51101834757651450472188058876666465749607095164195772967598619129508691197791784734820425313140209967186032845182931156048070320828968227942074423498814015401421365531361478621399285584264499185419541119664995595755379549552498993741486357955130208240407229081651971705195688610324594248045577740773940419491661503354977161828469302073122799506610158975975110171233692447574634060641394185092887016256321373151695815215179984874887027483320239464623661739514360005997603101741782744803544261835762141308597270188657428946547628923342085705680845346532637918078652356842605341594812164421949100144271245048412930397813198645555577436097186646960010195779279757589330795776030178785382249456413370783726807030095059017738471269731421913011500548120435847233510250449408700992078425137108625800013561282805762139231617922982519571059463398949579796640394402933534385904304150741003206255994996623536892197710279798291439815132106787565600768\n", + "102203669515302900944376117753332931499214190328391545935197238259017382395583569469640850626280419934372065690365862312096140641657936455884148846997628030802842731062722957242798571168528998370839082239329991191510759099104997987482972715910260416480814458163303943410391377220649188496091155481547880838983323006709954323656938604146245599013220317951950220342467384895149268121282788370185774032512642746303391630430359969749774054966640478929247323479028720011995206203483565489607088523671524282617194540377314857893095257846684171411361690693065275836157304713685210683189624328843898200288542490096825860795626397291111154872194373293920020391558559515178661591552060357570764498912826741567453614060190118035476942539462843826023001096240871694467020500898817401984156850274217251600027122565611524278463235845965039142118926797899159593280788805867068771808608301482006412511989993247073784395420559596582879630264213575131201536\n", + "204407339030605801888752235506665862998428380656783091870394476518034764791167138939281701252560839868744131380731724624192281283315872911768297693995256061605685462125445914485597142337057996741678164478659982383021518198209995974965945431820520832961628916326607886820782754441298376992182310963095761677966646013419908647313877208292491198026440635903900440684934769790298536242565576740371548065025285492606783260860719939499548109933280957858494646958057440023990412406967130979214177047343048565234389080754629715786190515693368342822723381386130551672314609427370421366379248657687796400577084980193651721591252794582222309744388746587840040783117119030357323183104120715141528997825653483134907228120380236070953885078925687652046002192481743388934041001797634803968313700548434503200054245131223048556926471691930078284237853595798319186561577611734137543617216602964012825023979986494147568790841119193165759260528427150262403072\n", + "408814678061211603777504471013331725996856761313566183740788953036069529582334277878563402505121679737488262761463449248384562566631745823536595387990512123211370924250891828971194284674115993483356328957319964766043036396419991949931890863641041665923257832653215773641565508882596753984364621926191523355933292026839817294627754416584982396052881271807800881369869539580597072485131153480743096130050570985213566521721439878999096219866561915716989293916114880047980824813934261958428354094686097130468778161509259431572381031386736685645446762772261103344629218854740842732758497315375592801154169960387303443182505589164444619488777493175680081566234238060714646366208241430283057995651306966269814456240760472141907770157851375304092004384963486777868082003595269607936627401096869006400108490262446097113852943383860156568475707191596638373123155223468275087234433205928025650047959972988295137581682238386331518521056854300524806144\n", + "817629356122423207555008942026663451993713522627132367481577906072139059164668555757126805010243359474976525522926898496769125133263491647073190775981024246422741848501783657942388569348231986966712657914639929532086072792839983899863781727282083331846515665306431547283131017765193507968729243852383046711866584053679634589255508833169964792105762543615601762739739079161194144970262306961486192260101141970427133043442879757998192439733123831433978587832229760095961649627868523916856708189372194260937556323018518863144762062773473371290893525544522206689258437709481685465516994630751185602308339920774606886365011178328889238977554986351360163132468476121429292732416482860566115991302613932539628912481520944283815540315702750608184008769926973555736164007190539215873254802193738012800216980524892194227705886767720313136951414383193276746246310446936550174468866411856051300095919945976590275163364476772663037042113708601049612288\n", + "1635258712244846415110017884053326903987427045254264734963155812144278118329337111514253610020486718949953051045853796993538250266526983294146381551962048492845483697003567315884777138696463973933425315829279859064172145585679967799727563454564166663693031330612863094566262035530387015937458487704766093423733168107359269178511017666339929584211525087231203525479478158322388289940524613922972384520202283940854266086885759515996384879466247662867957175664459520191923299255737047833713416378744388521875112646037037726289524125546946742581787051089044413378516875418963370931033989261502371204616679841549213772730022356657778477955109972702720326264936952242858585464832965721132231982605227865079257824963041888567631080631405501216368017539853947111472328014381078431746509604387476025600433961049784388455411773535440626273902828766386553492492620893873100348937732823712102600191839891953180550326728953545326074084227417202099224576\n", + "3270517424489692830220035768106653807974854090508529469926311624288556236658674223028507220040973437899906102091707593987076500533053966588292763103924096985690967394007134631769554277392927947866850631658559718128344291171359935599455126909128333327386062661225726189132524071060774031874916975409532186847466336214718538357022035332679859168423050174462407050958956316644776579881049227845944769040404567881708532173771519031992769758932495325735914351328919040383846598511474095667426832757488777043750225292074075452579048251093893485163574102178088826757033750837926741862067978523004742409233359683098427545460044713315556955910219945405440652529873904485717170929665931442264463965210455730158515649926083777135262161262811002432736035079707894222944656028762156863493019208774952051200867922099568776910823547070881252547805657532773106984985241787746200697875465647424205200383679783906361100653457907090652148168454834404198449152\n", + "6541034848979385660440071536213307615949708181017058939852623248577112473317348446057014440081946875799812204183415187974153001066107933176585526207848193971381934788014269263539108554785855895733701263317119436256688582342719871198910253818256666654772125322451452378265048142121548063749833950819064373694932672429437076714044070665359718336846100348924814101917912633289553159762098455691889538080809135763417064347543038063985539517864990651471828702657838080767693197022948191334853665514977554087500450584148150905158096502187786970327148204356177653514067501675853483724135957046009484818466719366196855090920089426631113911820439890810881305059747808971434341859331862884528927930420911460317031299852167554270524322525622004865472070159415788445889312057524313726986038417549904102401735844199137553821647094141762505095611315065546213969970483575492401395750931294848410400767359567812722201306915814181304296336909668808396898304\n", + "13082069697958771320880143072426615231899416362034117879705246497154224946634696892114028880163893751599624408366830375948306002132215866353171052415696387942763869576028538527078217109571711791467402526634238872513377164685439742397820507636513333309544250644902904756530096284243096127499667901638128747389865344858874153428088141330719436673692200697849628203835825266579106319524196911383779076161618271526834128695086076127971079035729981302943657405315676161535386394045896382669707331029955108175000901168296301810316193004375573940654296408712355307028135003351706967448271914092018969636933438732393710181840178853262227823640879781621762610119495617942868683718663725769057855860841822920634062599704335108541048645051244009730944140318831576891778624115048627453972076835099808204803471688398275107643294188283525010191222630131092427939940967150984802791501862589696820801534719135625444402613831628362608592673819337616793796608\n", + "26164139395917542641760286144853230463798832724068235759410492994308449893269393784228057760327787503199248816733660751896612004264431732706342104831392775885527739152057077054156434219143423582934805053268477745026754329370879484795641015273026666619088501289805809513060192568486192254999335803276257494779730689717748306856176282661438873347384401395699256407671650533158212639048393822767558152323236543053668257390172152255942158071459962605887314810631352323070772788091792765339414662059910216350001802336592603620632386008751147881308592817424710614056270006703413934896543828184037939273866877464787420363680357706524455647281759563243525220238991235885737367437327451538115711721683645841268125199408670217082097290102488019461888280637663153783557248230097254907944153670199616409606943376796550215286588376567050020382445260262184855879881934301969605583003725179393641603069438271250888805227663256725217185347638675233587593216\n", + "52328278791835085283520572289706460927597665448136471518820985988616899786538787568456115520655575006398497633467321503793224008528863465412684209662785551771055478304114154108312868438286847165869610106536955490053508658741758969591282030546053333238177002579611619026120385136972384509998671606552514989559461379435496613712352565322877746694768802791398512815343301066316425278096787645535116304646473086107336514780344304511884316142919925211774629621262704646141545576183585530678829324119820432700003604673185207241264772017502295762617185634849421228112540013406827869793087656368075878547733754929574840727360715413048911294563519126487050440477982471771474734874654903076231423443367291682536250398817340434164194580204976038923776561275326307567114496460194509815888307340399232819213886753593100430573176753134100040764890520524369711759763868603939211166007450358787283206138876542501777610455326513450434370695277350467175186432\n", + "104656557583670170567041144579412921855195330896272943037641971977233799573077575136912231041311150012796995266934643007586448017057726930825368419325571103542110956608228308216625736876573694331739220213073910980107017317483517939182564061092106666476354005159223238052240770273944769019997343213105029979118922758870993227424705130645755493389537605582797025630686602132632850556193575291070232609292946172214673029560688609023768632285839850423549259242525409292283091152367171061357658648239640865400007209346370414482529544035004591525234371269698842456225080026813655739586175312736151757095467509859149681454721430826097822589127038252974100880955964943542949469749309806152462846886734583365072500797634680868328389160409952077847553122550652615134228992920389019631776614680798465638427773507186200861146353506268200081529781041048739423519527737207878422332014900717574566412277753085003555220910653026900868741390554700934350372864\n", + "209313115167340341134082289158825843710390661792545886075283943954467599146155150273824462082622300025593990533869286015172896034115453861650736838651142207084221913216456616433251473753147388663478440426147821960214034634967035878365128122184213332952708010318446476104481540547889538039994686426210059958237845517741986454849410261291510986779075211165594051261373204265265701112387150582140465218585892344429346059121377218047537264571679700847098518485050818584566182304734342122715317296479281730800014418692740828965059088070009183050468742539397684912450160053627311479172350625472303514190935019718299362909442861652195645178254076505948201761911929887085898939498619612304925693773469166730145001595269361736656778320819904155695106245101305230268457985840778039263553229361596931276855547014372401722292707012536400163059562082097478847039055474415756844664029801435149132824555506170007110441821306053801737482781109401868700745728\n", + "418626230334680682268164578317651687420781323585091772150567887908935198292310300547648924165244600051187981067738572030345792068230907723301473677302284414168443826432913232866502947506294777326956880852295643920428069269934071756730256244368426665905416020636892952208963081095779076079989372852420119916475691035483972909698820522583021973558150422331188102522746408530531402224774301164280930437171784688858692118242754436095074529143359401694197036970101637169132364609468684245430634592958563461600028837385481657930118176140018366100937485078795369824900320107254622958344701250944607028381870039436598725818885723304391290356508153011896403523823859774171797878997239224609851387546938333460290003190538723473313556641639808311390212490202610460536915971681556078527106458723193862553711094028744803444585414025072800326119124164194957694078110948831513689328059602870298265649111012340014220883642612107603474965562218803737401491456\n", + "837252460669361364536329156635303374841562647170183544301135775817870396584620601095297848330489200102375962135477144060691584136461815446602947354604568828336887652865826465733005895012589554653913761704591287840856138539868143513460512488736853331810832041273785904417926162191558152159978745704840239832951382070967945819397641045166043947116300844662376205045492817061062804449548602328561860874343569377717384236485508872190149058286718803388394073940203274338264729218937368490861269185917126923200057674770963315860236352280036732201874970157590739649800640214509245916689402501889214056763740078873197451637771446608782580713016306023792807047647719548343595757994478449219702775093876666920580006381077446946627113283279616622780424980405220921073831943363112157054212917446387725107422188057489606889170828050145600652238248328389915388156221897663027378656119205740596531298222024680028441767285224215206949931124437607474802982912\n", + "1674504921338722729072658313270606749683125294340367088602271551635740793169241202190595696660978400204751924270954288121383168272923630893205894709209137656673775305731652931466011790025179109307827523409182575681712277079736287026921024977473706663621664082547571808835852324383116304319957491409680479665902764141935891638795282090332087894232601689324752410090985634122125608899097204657123721748687138755434768472971017744380298116573437606776788147880406548676529458437874736981722538371834253846400115349541926631720472704560073464403749940315181479299601280429018491833378805003778428113527480157746394903275542893217565161426032612047585614095295439096687191515988956898439405550187753333841160012762154893893254226566559233245560849960810441842147663886726224314108425834892775450214844376114979213778341656100291201304476496656779830776312443795326054757312238411481193062596444049360056883534570448430413899862248875214949605965824\n", + "3349009842677445458145316626541213499366250588680734177204543103271481586338482404381191393321956800409503848541908576242766336545847261786411789418418275313347550611463305862932023580050358218615655046818365151363424554159472574053842049954947413327243328165095143617671704648766232608639914982819360959331805528283871783277590564180664175788465203378649504820181971268244251217798194409314247443497374277510869536945942035488760596233146875213553576295760813097353058916875749473963445076743668507692800230699083853263440945409120146928807499880630362958599202560858036983666757610007556856227054960315492789806551085786435130322852065224095171228190590878193374383031977913796878811100375506667682320025524309787786508453133118466491121699921620883684295327773452448628216851669785550900429688752229958427556683312200582402608952993313559661552624887590652109514624476822962386125192888098720113767069140896860827799724497750429899211931648\n", + "6698019685354890916290633253082426998732501177361468354409086206542963172676964808762382786643913600819007697083817152485532673091694523572823578836836550626695101222926611725864047160100716437231310093636730302726849108318945148107684099909894826654486656330190287235343409297532465217279829965638721918663611056567743566555181128361328351576930406757299009640363942536488502435596388818628494886994748555021739073891884070977521192466293750427107152591521626194706117833751498947926890153487337015385600461398167706526881890818240293857614999761260725917198405121716073967333515220015113712454109920630985579613102171572870260645704130448190342456381181756386748766063955827593757622200751013335364640051048619575573016906266236932982243399843241767368590655546904897256433703339571101800859377504459916855113366624401164805217905986627119323105249775181304219029248953645924772250385776197440227534138281793721655599448995500859798423863296\n", + "13396039370709781832581266506164853997465002354722936708818172413085926345353929617524765573287827201638015394167634304971065346183389047145647157673673101253390202445853223451728094320201432874462620187273460605453698216637890296215368199819789653308973312660380574470686818595064930434559659931277443837327222113135487133110362256722656703153860813514598019280727885072977004871192777637256989773989497110043478147783768141955042384932587500854214305183043252389412235667502997895853780306974674030771200922796335413053763781636480587715229999522521451834396810243432147934667030440030227424908219841261971159226204343145740521291408260896380684912762363512773497532127911655187515244401502026670729280102097239151146033812532473865964486799686483534737181311093809794512867406679142203601718755008919833710226733248802329610435811973254238646210499550362608438058497907291849544500771552394880455068276563587443311198897991001719596847726592\n", + "26792078741419563665162533012329707994930004709445873417636344826171852690707859235049531146575654403276030788335268609942130692366778094291294315347346202506780404891706446903456188640402865748925240374546921210907396433275780592430736399639579306617946625320761148941373637190129860869119319862554887674654444226270974266220724513445313406307721627029196038561455770145954009742385555274513979547978994220086956295567536283910084769865175001708428610366086504778824471335005995791707560613949348061542401845592670826107527563272961175430459999045042903668793620486864295869334060880060454849816439682523942318452408686291481042582816521792761369825524727025546995064255823310375030488803004053341458560204194478302292067625064947731928973599372967069474362622187619589025734813358284407203437510017839667420453466497604659220871623946508477292420999100725216876116995814583699089001543104789760910136553127174886622397795982003439193695453184\n", + "53584157482839127330325066024659415989860009418891746835272689652343705381415718470099062293151308806552061576670537219884261384733556188582588630694692405013560809783412893806912377280805731497850480749093842421814792866551561184861472799279158613235893250641522297882747274380259721738238639725109775349308888452541948532441449026890626812615443254058392077122911540291908019484771110549027959095957988440173912591135072567820169539730350003416857220732173009557648942670011991583415121227898696123084803691185341652215055126545922350860919998090085807337587240973728591738668121760120909699632879365047884636904817372582962085165633043585522739651049454051093990128511646620750060977606008106682917120408388956604584135250129895463857947198745934138948725244375239178051469626716568814406875020035679334840906932995209318441743247893016954584841998201450433752233991629167398178003086209579521820273106254349773244795591964006878387390906368\n", + "107168314965678254660650132049318831979720018837783493670545379304687410762831436940198124586302617613104123153341074439768522769467112377165177261389384810027121619566825787613824754561611462995700961498187684843629585733103122369722945598558317226471786501283044595765494548760519443476477279450219550698617776905083897064882898053781253625230886508116784154245823080583816038969542221098055918191915976880347825182270145135640339079460700006833714441464346019115297885340023983166830242455797392246169607382370683304430110253091844701721839996180171614675174481947457183477336243520241819399265758730095769273809634745165924170331266087171045479302098908102187980257023293241500121955212016213365834240816777913209168270500259790927715894397491868277897450488750478356102939253433137628813750040071358669681813865990418636883486495786033909169683996402900867504467983258334796356006172419159043640546212508699546489591183928013756774781812736\n", + "214336629931356509321300264098637663959440037675566987341090758609374821525662873880396249172605235226208246306682148879537045538934224754330354522778769620054243239133651575227649509123222925991401922996375369687259171466206244739445891197116634452943573002566089191530989097521038886952954558900439101397235553810167794129765796107562507250461773016233568308491646161167632077939084442196111836383831953760695650364540290271280678158921400013667428882928692038230595770680047966333660484911594784492339214764741366608860220506183689403443679992360343229350348963894914366954672487040483638798531517460191538547619269490331848340662532174342090958604197816204375960514046586483000243910424032426731668481633555826418336541000519581855431788794983736555794900977500956712205878506866275257627500080142717339363627731980837273766972991572067818339367992805801735008935966516669592712012344838318087281092425017399092979182367856027513549563625472\n", + "428673259862713018642600528197275327918880075351133974682181517218749643051325747760792498345210470452416492613364297759074091077868449508660709045557539240108486478267303150455299018246445851982803845992750739374518342932412489478891782394233268905887146005132178383061978195042077773905909117800878202794471107620335588259531592215125014500923546032467136616983292322335264155878168884392223672767663907521391300729080580542561356317842800027334857765857384076461191541360095932667320969823189568984678429529482733217720441012367378806887359984720686458700697927789828733909344974080967277597063034920383077095238538980663696681325064348684181917208395632408751921028093172966000487820848064853463336963267111652836673082001039163710863577589967473111589801955001913424411757013732550515255000160285434678727255463961674547533945983144135636678735985611603470017871933033339185424024689676636174562184850034798185958364735712055027099127250944\n", + "857346519725426037285201056394550655837760150702267949364363034437499286102651495521584996690420940904832985226728595518148182155736899017321418091115078480216972956534606300910598036492891703965607691985501478749036685864824978957783564788466537811774292010264356766123956390084155547811818235601756405588942215240671176519063184430250029001847092064934273233966584644670528311756337768784447345535327815042782601458161161085122712635685600054669715531714768152922383082720191865334641939646379137969356859058965466435440882024734757613774719969441372917401395855579657467818689948161934555194126069840766154190477077961327393362650128697368363834416791264817503842056186345932000975641696129706926673926534223305673346164002078327421727155179934946223179603910003826848823514027465101030510000320570869357454510927923349095067891966288271273357471971223206940035743866066678370848049379353272349124369700069596371916729471424110054198254501888\n", + "1714693039450852074570402112789101311675520301404535898728726068874998572205302991043169993380841881809665970453457191036296364311473798034642836182230156960433945913069212601821196072985783407931215383971002957498073371729649957915567129576933075623548584020528713532247912780168311095623636471203512811177884430481342353038126368860500058003694184129868546467933169289341056623512675537568894691070655630085565202916322322170245425271371200109339431063429536305844766165440383730669283879292758275938713718117930932870881764049469515227549439938882745834802791711159314935637379896323869110388252139681532308380954155922654786725300257394736727668833582529635007684112372691864001951283392259413853347853068446611346692328004156654843454310359869892446359207820007653697647028054930202061020000641141738714909021855846698190135783932576542546714943942446413880071487732133356741696098758706544698248739400139192743833458942848220108396509003776\n", + "3429386078901704149140804225578202623351040602809071797457452137749997144410605982086339986761683763619331940906914382072592728622947596069285672364460313920867891826138425203642392145971566815862430767942005914996146743459299915831134259153866151247097168041057427064495825560336622191247272942407025622355768860962684706076252737721000116007388368259737092935866338578682113247025351075137789382141311260171130405832644644340490850542742400218678862126859072611689532330880767461338567758585516551877427436235861865741763528098939030455098879877765491669605583422318629871274759792647738220776504279363064616761908311845309573450600514789473455337667165059270015368224745383728003902566784518827706695706136893222693384656008313309686908620719739784892718415640015307395294056109860404122040001282283477429818043711693396380271567865153085093429887884892827760142975464266713483392197517413089396497478800278385487666917885696440216793018007552\n", + "6858772157803408298281608451156405246702081205618143594914904275499994288821211964172679973523367527238663881813828764145185457245895192138571344728920627841735783652276850407284784291943133631724861535884011829992293486918599831662268518307732302494194336082114854128991651120673244382494545884814051244711537721925369412152505475442000232014776736519474185871732677157364226494050702150275578764282622520342260811665289288680981701085484800437357724253718145223379064661761534922677135517171033103754854872471723731483527056197878060910197759755530983339211166844637259742549519585295476441553008558726129233523816623690619146901201029578946910675334330118540030736449490767456007805133569037655413391412273786445386769312016626619373817241439479569785436831280030614790588112219720808244080002564566954859636087423386792760543135730306170186859775769785655520285950928533426966784395034826178792994957600556770975333835771392880433586036015104\n", + "13717544315606816596563216902312810493404162411236287189829808550999988577642423928345359947046735054477327763627657528290370914491790384277142689457841255683471567304553700814569568583886267263449723071768023659984586973837199663324537036615464604988388672164229708257983302241346488764989091769628102489423075443850738824305010950884000464029553473038948371743465354314728452988101404300551157528565245040684521623330578577361963402170969600874715448507436290446758129323523069845354271034342066207509709744943447462967054112395756121820395519511061966678422333689274519485099039170590952883106017117452258467047633247381238293802402059157893821350668660237080061472898981534912015610267138075310826782824547572890773538624033253238747634482878959139570873662560061229581176224439441616488160005129133909719272174846773585521086271460612340373719551539571311040571901857066853933568790069652357585989915201113541950667671542785760867172072030208\n", + "27435088631213633193126433804625620986808324822472574379659617101999977155284847856690719894093470108954655527255315056580741828983580768554285378915682511366943134609107401629139137167772534526899446143536047319969173947674399326649074073230929209976777344328459416515966604482692977529978183539256204978846150887701477648610021901768000928059106946077896743486930708629456905976202808601102315057130490081369043246661157154723926804341939201749430897014872580893516258647046139690708542068684132415019419489886894925934108224791512243640791039022123933356844667378549038970198078341181905766212034234904516934095266494762476587604804118315787642701337320474160122945797963069824031220534276150621653565649095145781547077248066506477495268965757918279141747325120122459162352448878883232976320010258267819438544349693547171042172542921224680747439103079142622081143803714133707867137580139304715171979830402227083901335343085571521734344144060416\n", + "54870177262427266386252867609251241973616649644945148759319234203999954310569695713381439788186940217909311054510630113161483657967161537108570757831365022733886269218214803258278274335545069053798892287072094639938347895348798653298148146461858419953554688656918833031933208965385955059956367078512409957692301775402955297220043803536001856118213892155793486973861417258913811952405617202204630114260980162738086493322314309447853608683878403498861794029745161787032517294092279381417084137368264830038838979773789851868216449583024487281582078044247866713689334757098077940396156682363811532424068469809033868190532989524953175209608236631575285402674640948320245891595926139648062441068552301243307131298190291563094154496133012954990537931515836558283494650240244918324704897757766465952640020516535638877088699387094342084345085842449361494878206158285244162287607428267415734275160278609430343959660804454167802670686171143043468688288120832\n", + "109740354524854532772505735218502483947233299289890297518638468407999908621139391426762879576373880435818622109021260226322967315934323074217141515662730045467772538436429606516556548671090138107597784574144189279876695790697597306596296292923716839907109377313837666063866417930771910119912734157024819915384603550805910594440087607072003712236427784311586973947722834517827623904811234404409260228521960325476172986644628618895707217367756806997723588059490323574065034588184558762834168274736529660077677959547579703736432899166048974563164156088495733427378669514196155880792313364727623064848136939618067736381065979049906350419216473263150570805349281896640491783191852279296124882137104602486614262596380583126188308992266025909981075863031673116566989300480489836649409795515532931905280041033071277754177398774188684168690171684898722989756412316570488324575214856534831468550320557218860687919321608908335605341372342286086937376576241664\n", + "219480709049709065545011470437004967894466598579780595037276936815999817242278782853525759152747760871637244218042520452645934631868646148434283031325460090935545076872859213033113097342180276215195569148288378559753391581395194613192592585847433679814218754627675332127732835861543820239825468314049639830769207101611821188880175214144007424472855568623173947895445669035655247809622468808818520457043920650952345973289257237791414434735513613995447176118980647148130069176369117525668336549473059320155355919095159407472865798332097949126328312176991466854757339028392311761584626729455246129696273879236135472762131958099812700838432946526301141610698563793280983566383704558592249764274209204973228525192761166252376617984532051819962151726063346233133978600960979673298819591031065863810560082066142555508354797548377368337380343369797445979512824633140976649150429713069662937100641114437721375838643217816671210682744684572173874753152483328\n", + "438961418099418131090022940874009935788933197159561190074553873631999634484557565707051518305495521743274488436085040905291869263737292296868566062650920181871090153745718426066226194684360552430391138296576757119506783162790389226385185171694867359628437509255350664255465671723087640479650936628099279661538414203223642377760350428288014848945711137246347895790891338071310495619244937617637040914087841301904691946578514475582828869471027227990894352237961294296260138352738235051336673098946118640310711838190318814945731596664195898252656624353982933709514678056784623523169253458910492259392547758472270945524263916199625401676865893052602283221397127586561967132767409117184499528548418409946457050385522332504753235969064103639924303452126692466267957201921959346597639182062131727621120164132285111016709595096754736674760686739594891959025649266281953298300859426139325874201282228875442751677286435633342421365489369144347749506304966656\n", + "877922836198836262180045881748019871577866394319122380149107747263999268969115131414103036610991043486548976872170081810583738527474584593737132125301840363742180307491436852132452389368721104860782276593153514239013566325580778452770370343389734719256875018510701328510931343446175280959301873256198559323076828406447284755520700856576029697891422274492695791581782676142620991238489875235274081828175682603809383893157028951165657738942054455981788704475922588592520276705476470102673346197892237280621423676380637629891463193328391796505313248707965867419029356113569247046338506917820984518785095516944541891048527832399250803353731786105204566442794255173123934265534818234368999057096836819892914100771044665009506471938128207279848606904253384932535914403843918693195278364124263455242240328264570222033419190193509473349521373479189783918051298532563906596601718852278651748402564457750885503354572871266684842730978738288695499012609933312\n", + "1755845672397672524360091763496039743155732788638244760298215494527998537938230262828206073221982086973097953744340163621167477054949169187474264250603680727484360614982873704264904778737442209721564553186307028478027132651161556905540740686779469438513750037021402657021862686892350561918603746512397118646153656812894569511041401713152059395782844548985391583163565352285241982476979750470548163656351365207618767786314057902331315477884108911963577408951845177185040553410952940205346692395784474561242847352761275259782926386656783593010626497415931734838058712227138494092677013835641969037570191033889083782097055664798501606707463572210409132885588510346247868531069636468737998114193673639785828201542089330019012943876256414559697213808506769865071828807687837386390556728248526910484480656529140444066838380387018946699042746958379567836102597065127813193203437704557303496805128915501771006709145742533369685461957476577390998025219866624\n", + "3511691344795345048720183526992079486311465577276489520596430989055997075876460525656412146443964173946195907488680327242334954109898338374948528501207361454968721229965747408529809557474884419443129106372614056956054265302323113811081481373558938877027500074042805314043725373784701123837207493024794237292307313625789139022082803426304118791565689097970783166327130704570483964953959500941096327312702730415237535572628115804662630955768217823927154817903690354370081106821905880410693384791568949122485694705522550519565852773313567186021252994831863469676117424454276988185354027671283938075140382067778167564194111329597003213414927144420818265771177020692495737062139272937475996228387347279571656403084178660038025887752512829119394427617013539730143657615375674772781113456497053820968961313058280888133676760774037893398085493916759135672205194130255626386406875409114606993610257831003542013418291485066739370923914953154781996050439733248\n", + "7023382689590690097440367053984158972622931154552979041192861978111994151752921051312824292887928347892391814977360654484669908219796676749897057002414722909937442459931494817059619114949768838886258212745228113912108530604646227622162962747117877754055000148085610628087450747569402247674414986049588474584614627251578278044165606852608237583131378195941566332654261409140967929907919001882192654625405460830475071145256231609325261911536435647854309635807380708740162213643811760821386769583137898244971389411045101039131705546627134372042505989663726939352234848908553976370708055342567876150280764135556335128388222659194006426829854288841636531542354041384991474124278545874951992456774694559143312806168357320076051775505025658238788855234027079460287315230751349545562226912994107641937922626116561776267353521548075786796170987833518271344410388260511252772813750818229213987220515662007084026836582970133478741847829906309563992100879466496\n", + "14046765379181380194880734107968317945245862309105958082385723956223988303505842102625648585775856695784783629954721308969339816439593353499794114004829445819874884919862989634119238229899537677772516425490456227824217061209292455244325925494235755508110000296171221256174901495138804495348829972099176949169229254503156556088331213705216475166262756391883132665308522818281935859815838003764385309250810921660950142290512463218650523823072871295708619271614761417480324427287623521642773539166275796489942778822090202078263411093254268744085011979327453878704469697817107952741416110685135752300561528271112670256776445318388012853659708577683273063084708082769982948248557091749903984913549389118286625612336714640152103551010051316477577710468054158920574630461502699091124453825988215283875845252233123552534707043096151573592341975667036542688820776521022505545627501636458427974441031324014168053673165940266957483695659812619127984201758932992\n", + "28093530758362760389761468215936635890491724618211916164771447912447976607011684205251297171551713391569567259909442617938679632879186706999588228009658891639749769839725979268238476459799075355545032850980912455648434122418584910488651850988471511016220000592342442512349802990277608990697659944198353898338458509006313112176662427410432950332525512783766265330617045636563871719631676007528770618501621843321900284581024926437301047646145742591417238543229522834960648854575247043285547078332551592979885557644180404156526822186508537488170023958654907757408939395634215905482832221370271504601123056542225340513552890636776025707319417155366546126169416165539965896497114183499807969827098778236573251224673429280304207102020102632955155420936108317841149260923005398182248907651976430567751690504466247105069414086192303147184683951334073085377641553042045011091255003272916855948882062648028336107346331880533914967391319625238255968403517865984\n", + "56187061516725520779522936431873271780983449236423832329542895824895953214023368410502594343103426783139134519818885235877359265758373413999176456019317783279499539679451958536476952919598150711090065701961824911296868244837169820977303701976943022032440001184684885024699605980555217981395319888396707796676917018012626224353324854820865900665051025567532530661234091273127743439263352015057541237003243686643800569162049852874602095292291485182834477086459045669921297709150494086571094156665103185959771115288360808313053644373017074976340047917309815514817878791268431810965664442740543009202246113084450681027105781273552051414638834310733092252338832331079931792994228366999615939654197556473146502449346858560608414204040205265910310841872216635682298521846010796364497815303952861135503381008932494210138828172384606294369367902668146170755283106084090022182510006545833711897764125296056672214692663761067829934782639250476511936807035731968\n", + "112374123033451041559045872863746543561966898472847664659085791649791906428046736821005188686206853566278269039637770471754718531516746827998352912038635566558999079358903917072953905839196301422180131403923649822593736489674339641954607403953886044064880002369369770049399211961110435962790639776793415593353834036025252448706649709641731801330102051135065061322468182546255486878526704030115082474006487373287601138324099705749204190584582970365668954172918091339842595418300988173142188313330206371919542230576721616626107288746034149952680095834619631029635757582536863621931328885481086018404492226168901362054211562547104102829277668621466184504677664662159863585988456733999231879308395112946293004898693717121216828408080410531820621683744433271364597043692021592728995630607905722271006762017864988420277656344769212588738735805336292341510566212168180044365020013091667423795528250592113344429385327522135659869565278500953023873614071463936\n", + "224748246066902083118091745727493087123933796945695329318171583299583812856093473642010377372413707132556538079275540943509437063033493655996705824077271133117998158717807834145907811678392602844360262807847299645187472979348679283909214807907772088129760004738739540098798423922220871925581279553586831186707668072050504897413299419283463602660204102270130122644936365092510973757053408060230164948012974746575202276648199411498408381169165940731337908345836182679685190836601976346284376626660412743839084461153443233252214577492068299905360191669239262059271515165073727243862657770962172036808984452337802724108423125094208205658555337242932369009355329324319727171976913467998463758616790225892586009797387434242433656816160821063641243367488866542729194087384043185457991261215811444542013524035729976840555312689538425177477471610672584683021132424336360088730040026183334847591056501184226688858770655044271319739130557001906047747228142927872\n", + "449496492133804166236183491454986174247867593891390658636343166599167625712186947284020754744827414265113076158551081887018874126066987311993411648154542266235996317435615668291815623356785205688720525615694599290374945958697358567818429615815544176259520009477479080197596847844441743851162559107173662373415336144101009794826598838566927205320408204540260245289872730185021947514106816120460329896025949493150404553296398822996816762338331881462675816691672365359370381673203952692568753253320825487678168922306886466504429154984136599810720383338478524118543030330147454487725315541924344073617968904675605448216846250188416411317110674485864738018710658648639454343953826935996927517233580451785172019594774868484867313632321642127282486734977733085458388174768086370915982522431622889084027048071459953681110625379076850354954943221345169366042264848672720177460080052366669695182113002368453377717541310088542639478261114003812095494456285855744\n", + "898992984267608332472366982909972348495735187782781317272686333198335251424373894568041509489654828530226152317102163774037748252133974623986823296309084532471992634871231336583631246713570411377441051231389198580749891917394717135636859231631088352519040018954958160395193695688883487702325118214347324746830672288202019589653197677133854410640816409080520490579745460370043895028213632240920659792051898986300809106592797645993633524676663762925351633383344730718740763346407905385137506506641650975356337844613772933008858309968273199621440766676957048237086060660294908975450631083848688147235937809351210896433692500376832822634221348971729476037421317297278908687907653871993855034467160903570344039189549736969734627264643284254564973469955466170916776349536172741831965044863245778168054096142919907362221250758153700709909886442690338732084529697345440354920160104733339390364226004736906755435082620177085278956522228007624190988912571711488\n", + "1797985968535216664944733965819944696991470375565562634545372666396670502848747789136083018979309657060452304634204327548075496504267949247973646592618169064943985269742462673167262493427140822754882102462778397161499783834789434271273718463262176705038080037909916320790387391377766975404650236428694649493661344576404039179306395354267708821281632818161040981159490920740087790056427264481841319584103797972601618213185595291987267049353327525850703266766689461437481526692815810770275013013283301950712675689227545866017716619936546399242881533353914096474172121320589817950901262167697376294471875618702421792867385000753665645268442697943458952074842634594557817375815307743987710068934321807140688078379099473939469254529286568509129946939910932341833552699072345483663930089726491556336108192285839814724442501516307401419819772885380677464169059394690880709840320209466678780728452009473813510870165240354170557913044456015248381977825143422976\n", + "3595971937070433329889467931639889393982940751131125269090745332793341005697495578272166037958619314120904609268408655096150993008535898495947293185236338129887970539484925346334524986854281645509764204925556794322999567669578868542547436926524353410076160075819832641580774782755533950809300472857389298987322689152808078358612790708535417642563265636322081962318981841480175580112854528963682639168207595945203236426371190583974534098706655051701406533533378922874963053385631621540550026026566603901425351378455091732035433239873092798485763066707828192948344242641179635901802524335394752588943751237404843585734770001507331290536885395886917904149685269189115634751630615487975420137868643614281376156758198947878938509058573137018259893879821864683667105398144690967327860179452983112672216384571679629448885003032614802839639545770761354928338118789381761419680640418933357561456904018947627021740330480708341115826088912030496763955650286845952\n", + "7191943874140866659778935863279778787965881502262250538181490665586682011394991156544332075917238628241809218536817310192301986017071796991894586370472676259775941078969850692669049973708563291019528409851113588645999135339157737085094873853048706820152320151639665283161549565511067901618600945714778597974645378305616156717225581417070835285126531272644163924637963682960351160225709057927365278336415191890406472852742381167949068197413310103402813067066757845749926106771263243081100052053133207802850702756910183464070866479746185596971526133415656385896688485282359271803605048670789505177887502474809687171469540003014662581073770791773835808299370538378231269503261230975950840275737287228562752313516397895757877018117146274036519787759643729367334210796289381934655720358905966225344432769143359258897770006065229605679279091541522709856676237578763522839361280837866715122913808037895254043480660961416682231652177824060993527911300573691904\n", + "14383887748281733319557871726559557575931763004524501076362981331173364022789982313088664151834477256483618437073634620384603972034143593983789172740945352519551882157939701385338099947417126582039056819702227177291998270678315474170189747706097413640304640303279330566323099131022135803237201891429557195949290756611232313434451162834141670570253062545288327849275927365920702320451418115854730556672830383780812945705484762335898136394826620206805626134133515691499852213542526486162200104106266415605701405513820366928141732959492371193943052266831312771793376970564718543607210097341579010355775004949619374342939080006029325162147541583547671616598741076756462539006522461951901680551474574457125504627032795791515754036234292548073039575519287458734668421592578763869311440717811932450688865538286718517795540012130459211358558183083045419713352475157527045678722561675733430245827616075790508086961321922833364463304355648121987055822601147383808\n", + "28767775496563466639115743453119115151863526009049002152725962662346728045579964626177328303668954512967236874147269240769207944068287187967578345481890705039103764315879402770676199894834253164078113639404454354583996541356630948340379495412194827280609280606558661132646198262044271606474403782859114391898581513222464626868902325668283341140506125090576655698551854731841404640902836231709461113345660767561625891410969524671796272789653240413611252268267031382999704427085052972324400208212532831211402811027640733856283465918984742387886104533662625543586753941129437087214420194683158020711550009899238748685878160012058650324295083167095343233197482153512925078013044923903803361102949148914251009254065591583031508072468585096146079151038574917469336843185157527738622881435623864901377731076573437035591080024260918422717116366166090839426704950315054091357445123351466860491655232151581016173922643845666728926608711296243974111645202294767616\n", + "57535550993126933278231486906238230303727052018098004305451925324693456091159929252354656607337909025934473748294538481538415888136574375935156690963781410078207528631758805541352399789668506328156227278808908709167993082713261896680758990824389654561218561213117322265292396524088543212948807565718228783797163026444929253737804651336566682281012250181153311397103709463682809281805672463418922226691321535123251782821939049343592545579306480827222504536534062765999408854170105944648800416425065662422805622055281467712566931837969484775772209067325251087173507882258874174428840389366316041423100019798477497371756320024117300648590166334190686466394964307025850156026089847807606722205898297828502018508131183166063016144937170192292158302077149834938673686370315055477245762871247729802755462153146874071182160048521836845434232732332181678853409900630108182714890246702933720983310464303162032347845287691333457853217422592487948223290404589535232\n", + "115071101986253866556462973812476460607454104036196008610903850649386912182319858504709313214675818051868947496589076963076831776273148751870313381927562820156415057263517611082704799579337012656312454557617817418335986165426523793361517981648779309122437122426234644530584793048177086425897615131436457567594326052889858507475609302673133364562024500362306622794207418927365618563611344926837844453382643070246503565643878098687185091158612961654445009073068125531998817708340211889297600832850131324845611244110562935425133863675938969551544418134650502174347015764517748348857680778732632082846200039596954994743512640048234601297180332668381372932789928614051700312052179695615213444411796595657004037016262366332126032289874340384584316604154299669877347372740630110954491525742495459605510924306293748142364320097043673690868465464664363357706819801260216365429780493405867441966620928606324064695690575382666915706434845184975896446580809179070464\n", + "230142203972507733112925947624952921214908208072392017221807701298773824364639717009418626429351636103737894993178153926153663552546297503740626763855125640312830114527035222165409599158674025312624909115235634836671972330853047586723035963297558618244874244852469289061169586096354172851795230262872915135188652105779717014951218605346266729124049000724613245588414837854731237127222689853675688906765286140493007131287756197374370182317225923308890018146136251063997635416680423778595201665700262649691222488221125870850267727351877939103088836269301004348694031529035496697715361557465264165692400079193909989487025280096469202594360665336762745865579857228103400624104359391230426888823593191314008074032524732664252064579748680769168633208308599339754694745481260221908983051484990919211021848612587496284728640194087347381736930929328726715413639602520432730859560986811734883933241857212648129391381150765333831412869690369951792893161618358140928\n", + "460284407945015466225851895249905842429816416144784034443615402597547648729279434018837252858703272207475789986356307852307327105092595007481253527710251280625660229054070444330819198317348050625249818230471269673343944661706095173446071926595117236489748489704938578122339172192708345703590460525745830270377304211559434029902437210692533458248098001449226491176829675709462474254445379707351377813530572280986014262575512394748740364634451846617780036292272502127995270833360847557190403331400525299382444976442251741700535454703755878206177672538602008697388063058070993395430723114930528331384800158387819978974050560192938405188721330673525491731159714456206801248208718782460853777647186382628016148065049465328504129159497361538337266416617198679509389490962520443817966102969981838422043697225174992569457280388174694763473861858657453430827279205040865461719121973623469767866483714425296258782762301530667662825739380739903585786323236716281856\n", + "920568815890030932451703790499811684859632832289568068887230805195095297458558868037674505717406544414951579972712615704614654210185190014962507055420502561251320458108140888661638396634696101250499636460942539346687889323412190346892143853190234472979496979409877156244678344385416691407180921051491660540754608423118868059804874421385066916496196002898452982353659351418924948508890759414702755627061144561972028525151024789497480729268903693235560072584545004255990541666721695114380806662801050598764889952884503483401070909407511756412355345077204017394776126116141986790861446229861056662769600316775639957948101120385876810377442661347050983462319428912413602496417437564921707555294372765256032296130098930657008258318994723076674532833234397359018778981925040887635932205939963676844087394450349985138914560776349389526947723717314906861654558410081730923438243947246939535732967428850592517565524603061335325651478761479807171572646473432563712\n", + "1841137631780061864903407580999623369719265664579136137774461610390190594917117736075349011434813088829903159945425231409229308420370380029925014110841005122502640916216281777323276793269392202500999272921885078693375778646824380693784287706380468945958993958819754312489356688770833382814361842102983321081509216846237736119609748842770133832992392005796905964707318702837849897017781518829405511254122289123944057050302049578994961458537807386471120145169090008511981083333443390228761613325602101197529779905769006966802141818815023512824710690154408034789552252232283973581722892459722113325539200633551279915896202240771753620754885322694101966924638857824827204992834875129843415110588745530512064592260197861314016516637989446153349065666468794718037557963850081775271864411879927353688174788900699970277829121552698779053895447434629813723309116820163461846876487894493879071465934857701185035131049206122670651302957522959614343145292946865127424\n", + "3682275263560123729806815161999246739438531329158272275548923220780381189834235472150698022869626177659806319890850462818458616840740760059850028221682010245005281832432563554646553586538784405001998545843770157386751557293648761387568575412760937891917987917639508624978713377541666765628723684205966642163018433692475472239219497685540267665984784011593811929414637405675699794035563037658811022508244578247888114100604099157989922917075614772942240290338180017023962166666886780457523226651204202395059559811538013933604283637630047025649421380308816069579104504464567947163445784919444226651078401267102559831792404481543507241509770645388203933849277715649654409985669750259686830221177491061024129184520395722628033033275978892306698131332937589436075115927700163550543728823759854707376349577801399940555658243105397558107790894869259627446618233640326923693752975788987758142931869715402370070262098412245341302605915045919228686290585893730254848\n", + "7364550527120247459613630323998493478877062658316544551097846441560762379668470944301396045739252355319612639781700925636917233681481520119700056443364020490010563664865127109293107173077568810003997091687540314773503114587297522775137150825521875783835975835279017249957426755083333531257447368411933284326036867384950944478438995371080535331969568023187623858829274811351399588071126075317622045016489156495776228201208198315979845834151229545884480580676360034047924333333773560915046453302408404790119119623076027867208567275260094051298842760617632139158209008929135894326891569838888453302156802534205119663584808963087014483019541290776407867698555431299308819971339500519373660442354982122048258369040791445256066066551957784613396262665875178872150231855400327101087457647519709414752699155602799881111316486210795116215581789738519254893236467280653847387505951577975516285863739430804740140524196824490682605211830091838457372581171787460509696\n", + "14729101054240494919227260647996986957754125316633089102195692883121524759336941888602792091478504710639225279563401851273834467362963040239400112886728040980021127329730254218586214346155137620007994183375080629547006229174595045550274301651043751567671951670558034499914853510166667062514894736823866568652073734769901888956877990742161070663939136046375247717658549622702799176142252150635244090032978312991552456402416396631959691668302459091768961161352720068095848666667547121830092906604816809580238239246152055734417134550520188102597685521235264278316418017858271788653783139677776906604313605068410239327169617926174028966039082581552815735397110862598617639942679001038747320884709964244096516738081582890512132133103915569226792525331750357744300463710800654202174915295039418829505398311205599762222632972421590232431163579477038509786472934561307694775011903155951032571727478861609480281048393648981365210423660183676914745162343574921019392\n", + "29458202108480989838454521295993973915508250633266178204391385766243049518673883777205584182957009421278450559126803702547668934725926080478800225773456081960042254659460508437172428692310275240015988366750161259094012458349190091100548603302087503135343903341116068999829707020333334125029789473647733137304147469539803777913755981484322141327878272092750495435317099245405598352284504301270488180065956625983104912804832793263919383336604918183537922322705440136191697333335094243660185813209633619160476478492304111468834269101040376205195371042470528556632836035716543577307566279355553813208627210136820478654339235852348057932078165163105631470794221725197235279885358002077494641769419928488193033476163165781024264266207831138453585050663500715488600927421601308404349830590078837659010796622411199524445265944843180464862327158954077019572945869122615389550023806311902065143454957723218960562096787297962730420847320367353829490324687149842038784\n", + "58916404216961979676909042591987947831016501266532356408782771532486099037347767554411168365914018842556901118253607405095337869451852160957600451546912163920084509318921016874344857384620550480031976733500322518188024916698380182201097206604175006270687806682232137999659414040666668250059578947295466274608294939079607555827511962968644282655756544185500990870634198490811196704569008602540976360131913251966209825609665586527838766673209836367075844645410880272383394666670188487320371626419267238320952956984608222937668538202080752410390742084941057113265672071433087154615132558711107626417254420273640957308678471704696115864156330326211262941588443450394470559770716004154989283538839856976386066952326331562048528532415662276907170101327001430977201854843202616808699661180157675318021593244822399048890531889686360929724654317908154039145891738245230779100047612623804130286909915446437921124193574595925460841694640734707658980649374299684077568\n", + "117832808433923959353818085183975895662033002533064712817565543064972198074695535108822336731828037685113802236507214810190675738903704321915200903093824327840169018637842033748689714769241100960063953467000645036376049833396760364402194413208350012541375613364464275999318828081333336500119157894590932549216589878159215111655023925937288565311513088371001981741268396981622393409138017205081952720263826503932419651219331173055677533346419672734151689290821760544766789333340376974640743252838534476641905913969216445875337076404161504820781484169882114226531344142866174309230265117422215252834508840547281914617356943409392231728312660652422525883176886900788941119541432008309978567077679713952772133904652663124097057064831324553814340202654002861954403709686405233617399322360315350636043186489644798097781063779372721859449308635816308078291783476490461558200095225247608260573819830892875842248387149191850921683389281469415317961298748599368155136\n", + "235665616867847918707636170367951791324066005066129425635131086129944396149391070217644673463656075370227604473014429620381351477807408643830401806187648655680338037275684067497379429538482201920127906934001290072752099666793520728804388826416700025082751226728928551998637656162666673000238315789181865098433179756318430223310047851874577130623026176742003963482536793963244786818276034410163905440527653007864839302438662346111355066692839345468303378581643521089533578666680753949281486505677068953283811827938432891750674152808323009641562968339764228453062688285732348618460530234844430505669017681094563829234713886818784463456625321304845051766353773801577882239082864016619957134155359427905544267809305326248194114129662649107628680405308005723908807419372810467234798644720630701272086372979289596195562127558745443718898617271632616156583566952980923116400190450495216521147639661785751684496774298383701843366778562938830635922597497198736310272\n", + "471331233735695837415272340735903582648132010132258851270262172259888792298782140435289346927312150740455208946028859240762702955614817287660803612375297311360676074551368134994758859076964403840255813868002580145504199333587041457608777652833400050165502453457857103997275312325333346000476631578363730196866359512636860446620095703749154261246052353484007926965073587926489573636552068820327810881055306015729678604877324692222710133385678690936606757163287042179067157333361507898562973011354137906567623655876865783501348305616646019283125936679528456906125376571464697236921060469688861011338035362189127658469427773637568926913250642609690103532707547603155764478165728033239914268310718855811088535618610652496388228259325298215257360810616011447817614838745620934469597289441261402544172745958579192391124255117490887437797234543265232313167133905961846232800380900990433042295279323571503368993548596767403686733557125877661271845194994397472620544\n", + "942662467471391674830544681471807165296264020264517702540524344519777584597564280870578693854624301480910417892057718481525405911229634575321607224750594622721352149102736269989517718153928807680511627736005160291008398667174082915217555305666800100331004906915714207994550624650666692000953263156727460393732719025273720893240191407498308522492104706968015853930147175852979147273104137640655621762110612031459357209754649384445420266771357381873213514326574084358134314666723015797125946022708275813135247311753731567002696611233292038566251873359056913812250753142929394473842120939377722022676070724378255316938855547275137853826501285219380207065415095206311528956331456066479828536621437711622177071237221304992776456518650596430514721621232022895635229677491241868939194578882522805088345491917158384782248510234981774875594469086530464626334267811923692465600761801980866084590558647143006737987097193534807373467114251755322543690389988794945241088\n", + "1885324934942783349661089362943614330592528040529035405081048689039555169195128561741157387709248602961820835784115436963050811822459269150643214449501189245442704298205472539979035436307857615361023255472010320582016797334348165830435110611333600200662009813831428415989101249301333384001906526313454920787465438050547441786480382814996617044984209413936031707860294351705958294546208275281311243524221224062918714419509298768890840533542714763746427028653148168716268629333446031594251892045416551626270494623507463134005393222466584077132503746718113827624501506285858788947684241878755444045352141448756510633877711094550275707653002570438760414130830190412623057912662912132959657073242875423244354142474442609985552913037301192861029443242464045791270459354982483737878389157765045610176690983834316769564497020469963549751188938173060929252668535623847384931201523603961732169181117294286013475974194387069614746934228503510645087380779977589890482176\n", + "3770649869885566699322178725887228661185056081058070810162097378079110338390257123482314775418497205923641671568230873926101623644918538301286428899002378490885408596410945079958070872615715230722046510944020641164033594668696331660870221222667200401324019627662856831978202498602666768003813052626909841574930876101094883572960765629993234089968418827872063415720588703411916589092416550562622487048442448125837428839018597537781681067085429527492854057306296337432537258666892063188503784090833103252540989247014926268010786444933168154265007493436227655249003012571717577895368483757510888090704282897513021267755422189100551415306005140877520828261660380825246115825325824265919314146485750846488708284948885219971105826074602385722058886484928091582540918709964967475756778315530091220353381967668633539128994040939927099502377876346121858505337071247694769862403047207923464338362234588572026951948388774139229493868457007021290174761559955179780964352\n", + "7541299739771133398644357451774457322370112162116141620324194756158220676780514246964629550836994411847283343136461747852203247289837076602572857798004756981770817192821890159916141745231430461444093021888041282328067189337392663321740442445334400802648039255325713663956404997205333536007626105253819683149861752202189767145921531259986468179936837655744126831441177406823833178184833101125244974096884896251674857678037195075563362134170859054985708114612592674865074517333784126377007568181666206505081978494029852536021572889866336308530014986872455310498006025143435155790736967515021776181408565795026042535510844378201102830612010281755041656523320761650492231650651648531838628292971501692977416569897770439942211652149204771444117772969856183165081837419929934951513556631060182440706763935337267078257988081879854199004755752692243717010674142495389539724806094415846928676724469177144053903896777548278458987736914014042580349523119910359561928704\n", + "15082599479542266797288714903548914644740224324232283240648389512316441353561028493929259101673988823694566686272923495704406494579674153205145715596009513963541634385643780319832283490462860922888186043776082564656134378674785326643480884890668801605296078510651427327912809994410667072015252210507639366299723504404379534291843062519972936359873675311488253662882354813647666356369666202250489948193769792503349715356074390151126724268341718109971416229225185349730149034667568252754015136363332413010163956988059705072043145779732672617060029973744910620996012050286870311581473935030043552362817131590052085071021688756402205661224020563510083313046641523300984463301303297063677256585943003385954833139795540879884423304298409542888235545939712366330163674839859869903027113262120364881413527870674534156515976163759708398009511505384487434021348284990779079449612188831693857353448938354288107807793555096556917975473828028085160699046239820719123857408\n", + "30165198959084533594577429807097829289480448648464566481296779024632882707122056987858518203347977647389133372545846991408812989159348306410291431192019027927083268771287560639664566980925721845776372087552165129312268757349570653286961769781337603210592157021302854655825619988821334144030504421015278732599447008808759068583686125039945872719747350622976507325764709627295332712739332404500979896387539585006699430712148780302253448536683436219942832458450370699460298069335136505508030272726664826020327913976119410144086291559465345234120059947489821241992024100573740623162947870060087104725634263180104170142043377512804411322448041127020166626093283046601968926602606594127354513171886006771909666279591081759768846608596819085776471091879424732660327349679719739806054226524240729762827055741349068313031952327519416796019023010768974868042696569981558158899224377663387714706897876708576215615587110193113835950947656056170321398092479641438247714816\n", + "60330397918169067189154859614195658578960897296929132962593558049265765414244113975717036406695955294778266745091693982817625978318696612820582862384038055854166537542575121279329133961851443691552744175104330258624537514699141306573923539562675206421184314042605709311651239977642668288061008842030557465198894017617518137167372250079891745439494701245953014651529419254590665425478664809001959792775079170013398861424297560604506897073366872439885664916900741398920596138670273011016060545453329652040655827952238820288172583118930690468240119894979642483984048201147481246325895740120174209451268526360208340284086755025608822644896082254040333252186566093203937853205213188254709026343772013543819332559182163519537693217193638171552942183758849465320654699359439479612108453048481459525654111482698136626063904655038833592038046021537949736085393139963116317798448755326775429413795753417152431231174220386227671901895312112340642796184959282876495429632\n", + "120660795836338134378309719228391317157921794593858265925187116098531530828488227951434072813391910589556533490183387965635251956637393225641165724768076111708333075085150242558658267923702887383105488350208660517249075029398282613147847079125350412842368628085211418623302479955285336576122017684061114930397788035235036274334744500159783490878989402491906029303058838509181330850957329618003919585550158340026797722848595121209013794146733744879771329833801482797841192277340546022032121090906659304081311655904477640576345166237861380936480239789959284967968096402294962492651791480240348418902537052720416680568173510051217645289792164508080666504373132186407875706410426376509418052687544027087638665118364327039075386434387276343105884367517698930641309398718878959224216906096962919051308222965396273252127809310077667184076092043075899472170786279926232635596897510653550858827591506834304862462348440772455343803790624224681285592369918565752990859264\n", + "241321591672676268756619438456782634315843589187716531850374232197063061656976455902868145626783821179113066980366775931270503913274786451282331449536152223416666150170300485117316535847405774766210976700417321034498150058796565226295694158250700825684737256170422837246604959910570673152244035368122229860795576070470072548669489000319566981757978804983812058606117677018362661701914659236007839171100316680053595445697190242418027588293467489759542659667602965595682384554681092044064242181813318608162623311808955281152690332475722761872960479579918569935936192804589924985303582960480696837805074105440833361136347020102435290579584329016161333008746264372815751412820852753018836105375088054175277330236728654078150772868774552686211768735035397861282618797437757918448433812193925838102616445930792546504255618620155334368152184086151798944341572559852465271193795021307101717655183013668609724924696881544910687607581248449362571184739837131505981718528\n", + "482643183345352537513238876913565268631687178375433063700748464394126123313952911805736291253567642358226133960733551862541007826549572902564662899072304446833332300340600970234633071694811549532421953400834642068996300117593130452591388316501401651369474512340845674493209919821141346304488070736244459721591152140940145097338978000639133963515957609967624117212235354036725323403829318472015678342200633360107190891394380484836055176586934979519085319335205931191364769109362184088128484363626637216325246623617910562305380664951445523745920959159837139871872385609179849970607165920961393675610148210881666722272694040204870581159168658032322666017492528745631502825641705506037672210750176108350554660473457308156301545737549105372423537470070795722565237594875515836896867624387851676205232891861585093008511237240310668736304368172303597888683145119704930542387590042614203435310366027337219449849393763089821375215162496898725142369479674263011963437056\n", + "965286366690705075026477753827130537263374356750866127401496928788252246627905823611472582507135284716452267921467103725082015653099145805129325798144608893666664600681201940469266143389623099064843906801669284137992600235186260905182776633002803302738949024681691348986419839642282692608976141472488919443182304281880290194677956001278267927031915219935248234424470708073450646807658636944031356684401266720214381782788760969672110353173869959038170638670411862382729538218724368176256968727253274432650493247235821124610761329902891047491841918319674279743744771218359699941214331841922787351220296421763333444545388080409741162318337316064645332034985057491263005651283411012075344421500352216701109320946914616312603091475098210744847074940141591445130475189751031673793735248775703352410465783723170186017022474480621337472608736344607195777366290239409861084775180085228406870620732054674438899698787526179642750430324993797450284738959348526023926874112\n", + "1930572733381410150052955507654261074526748713501732254802993857576504493255811647222945165014270569432904535842934207450164031306198291610258651596289217787333329201362403880938532286779246198129687813603338568275985200470372521810365553266005606605477898049363382697972839679284565385217952282944977838886364608563760580389355912002556535854063830439870496468848941416146901293615317273888062713368802533440428763565577521939344220706347739918076341277340823724765459076437448736352513937454506548865300986494471642249221522659805782094983683836639348559487489542436719399882428663683845574702440592843526666889090776160819482324636674632129290664069970114982526011302566822024150688843000704433402218641893829232625206182950196421489694149880283182890260950379502063347587470497551406704820931567446340372034044948961242674945217472689214391554732580478819722169550360170456813741241464109348877799397575052359285500860649987594900569477918697052047853748224\n", + "3861145466762820300105911015308522149053497427003464509605987715153008986511623294445890330028541138865809071685868414900328062612396583220517303192578435574666658402724807761877064573558492396259375627206677136551970400940745043620731106532011213210955796098726765395945679358569130770435904565889955677772729217127521160778711824005113071708127660879740992937697882832293802587230634547776125426737605066880857527131155043878688441412695479836152682554681647449530918152874897472705027874909013097730601972988943284498443045319611564189967367673278697118974979084873438799764857327367691149404881185687053333778181552321638964649273349264258581328139940229965052022605133644048301377686001408866804437283787658465250412365900392842979388299760566365780521900759004126695174940995102813409641863134892680744068089897922485349890434945378428783109465160957639444339100720340913627482482928218697755598795150104718571001721299975189801138955837394104095707496448\n", + "7722290933525640600211822030617044298106994854006929019211975430306017973023246588891780660057082277731618143371736829800656125224793166441034606385156871149333316805449615523754129147116984792518751254413354273103940801881490087241462213064022426421911592197453530791891358717138261540871809131779911355545458434255042321557423648010226143416255321759481985875395765664587605174461269095552250853475210133761715054262310087757376882825390959672305365109363294899061836305749794945410055749818026195461203945977886568996886090639223128379934735346557394237949958169746877599529714654735382298809762371374106667556363104643277929298546698528517162656279880459930104045210267288096602755372002817733608874567575316930500824731800785685958776599521132731561043801518008253390349881990205626819283726269785361488136179795844970699780869890756857566218930321915278888678201440681827254964965856437395511197590300209437142003442599950379602277911674788208191414992896\n", + "15444581867051281200423644061234088596213989708013858038423950860612035946046493177783561320114164555463236286743473659601312250449586332882069212770313742298666633610899231047508258294233969585037502508826708546207881603762980174482924426128044852843823184394907061583782717434276523081743618263559822711090916868510084643114847296020452286832510643518963971750791531329175210348922538191104501706950420267523430108524620175514753765650781919344610730218726589798123672611499589890820111499636052390922407891955773137993772181278446256759869470693114788475899916339493755199059429309470764597619524742748213335112726209286555858597093397057034325312559760919860208090420534576193205510744005635467217749135150633861001649463601571371917553199042265463122087603036016506780699763980411253638567452539570722976272359591689941399561739781513715132437860643830557777356402881363654509929931712874791022395180600418874284006885199900759204555823349576416382829985792\n", + "30889163734102562400847288122468177192427979416027716076847901721224071892092986355567122640228329110926472573486947319202624500899172665764138425540627484597333267221798462095016516588467939170075005017653417092415763207525960348965848852256089705687646368789814123167565434868553046163487236527119645422181833737020169286229694592040904573665021287037927943501583062658350420697845076382209003413900840535046860217049240351029507531301563838689221460437453179596247345222999179781640222999272104781844815783911546275987544362556892513519738941386229576951799832678987510398118858618941529195239049485496426670225452418573111717194186794114068650625119521839720416180841069152386411021488011270934435498270301267722003298927203142743835106398084530926244175206072033013561399527960822507277134905079141445952544719183379882799123479563027430264875721287661115554712805762727309019859863425749582044790361200837748568013770399801518409111646699152832765659971584\n", + "61778327468205124801694576244936354384855958832055432153695803442448143784185972711134245280456658221852945146973894638405249001798345331528276851081254969194666534443596924190033033176935878340150010035306834184831526415051920697931697704512179411375292737579628246335130869737106092326974473054239290844363667474040338572459389184081809147330042574075855887003166125316700841395690152764418006827801681070093720434098480702059015062603127677378442920874906359192494690445998359563280445998544209563689631567823092551975088725113785027039477882772459153903599665357975020796237717237883058390478098970992853340450904837146223434388373588228137301250239043679440832361682138304772822042976022541868870996540602535444006597854406285487670212796169061852488350412144066027122799055921645014554269810158282891905089438366759765598246959126054860529751442575322231109425611525454618039719726851499164089580722401675497136027540799603036818223293398305665531319943168\n", + "123556654936410249603389152489872708769711917664110864307391606884896287568371945422268490560913316443705890293947789276810498003596690663056553702162509938389333068887193848380066066353871756680300020070613668369663052830103841395863395409024358822750585475159256492670261739474212184653948946108478581688727334948080677144918778368163618294660085148151711774006332250633401682791380305528836013655603362140187440868196961404118030125206255354756885841749812718384989380891996719126560891997088419127379263135646185103950177450227570054078955765544918307807199330715950041592475434475766116780956197941985706680901809674292446868776747176456274602500478087358881664723364276609545644085952045083737741993081205070888013195708812570975340425592338123704976700824288132054245598111843290029108539620316565783810178876733519531196493918252109721059502885150644462218851223050909236079439453702998328179161444803350994272055081599206073636446586796611331062639886336\n", + "247113309872820499206778304979745417539423835328221728614783213769792575136743890844536981121826632887411780587895578553620996007193381326113107404325019876778666137774387696760132132707743513360600040141227336739326105660207682791726790818048717645501170950318512985340523478948424369307897892216957163377454669896161354289837556736327236589320170296303423548012664501266803365582760611057672027311206724280374881736393922808236060250412510709513771683499625436769978761783993438253121783994176838254758526271292370207900354900455140108157911531089836615614398661431900083184950868951532233561912395883971413361803619348584893737553494352912549205000956174717763329446728553219091288171904090167475483986162410141776026391417625141950680851184676247409953401648576264108491196223686580058217079240633131567620357753467039062392987836504219442119005770301288924437702446101818472158878907405996656358322889606701988544110163198412147272893173593222662125279772672\n", + "494226619745640998413556609959490835078847670656443457229566427539585150273487781689073962243653265774823561175791157107241992014386762652226214808650039753557332275548775393520264265415487026721200080282454673478652211320415365583453581636097435291002341900637025970681046957896848738615795784433914326754909339792322708579675113472654473178640340592606847096025329002533606731165521222115344054622413448560749763472787845616472120500825021419027543366999250873539957523567986876506243567988353676509517052542584740415800709800910280216315823062179673231228797322863800166369901737903064467123824791767942826723607238697169787475106988705825098410001912349435526658893457106438182576343808180334950967972324820283552052782835250283901361702369352494819906803297152528216982392447373160116434158481266263135240715506934078124785975673008438884238011540602577848875404892203636944317757814811993312716645779213403977088220326396824294545786347186445324250559545344\n", + "988453239491281996827113219918981670157695341312886914459132855079170300546975563378147924487306531549647122351582314214483984028773525304452429617300079507114664551097550787040528530830974053442400160564909346957304422640830731166907163272194870582004683801274051941362093915793697477231591568867828653509818679584645417159350226945308946357280681185213694192050658005067213462331042444230688109244826897121499526945575691232944241001650042838055086733998501747079915047135973753012487135976707353019034105085169480831601419601820560432631646124359346462457594645727600332739803475806128934247649583535885653447214477394339574950213977411650196820003824698871053317786914212876365152687616360669901935944649640567104105565670500567802723404738704989639813606594305056433964784894746320232868316962532526270481431013868156249571951346016877768476023081205155697750809784407273888635515629623986625433291558426807954176440652793648589091572694372890648501119090688\n", + "1976906478982563993654226439837963340315390682625773828918265710158340601093951126756295848974613063099294244703164628428967968057547050608904859234600159014229329102195101574081057061661948106884800321129818693914608845281661462333814326544389741164009367602548103882724187831587394954463183137735657307019637359169290834318700453890617892714561362370427388384101316010134426924662084888461376218489653794242999053891151382465888482003300085676110173467997003494159830094271947506024974271953414706038068210170338961663202839203641120865263292248718692924915189291455200665479606951612257868495299167071771306894428954788679149900427954823300393640007649397742106635573828425752730305375232721339803871889299281134208211131341001135605446809477409979279627213188610112867929569789492640465736633925065052540962862027736312499143902692033755536952046162410311395501619568814547777271031259247973250866583116853615908352881305587297178183145388745781297002238181376\n", + "3953812957965127987308452879675926680630781365251547657836531420316681202187902253512591697949226126198588489406329256857935936115094101217809718469200318028458658204390203148162114123323896213769600642259637387829217690563322924667628653088779482328018735205096207765448375663174789908926366275471314614039274718338581668637400907781235785429122724740854776768202632020268853849324169776922752436979307588485998107782302764931776964006600171352220346935994006988319660188543895012049948543906829412076136420340677923326405678407282241730526584497437385849830378582910401330959213903224515736990598334143542613788857909577358299800855909646600787280015298795484213271147656851505460610750465442679607743778598562268416422262682002271210893618954819958559254426377220225735859139578985280931473267850130105081925724055472624998287805384067511073904092324820622791003239137629095554542062518495946501733166233707231816705762611174594356366290777491562594004476362752\n", + "7907625915930255974616905759351853361261562730503095315673062840633362404375804507025183395898452252397176978812658513715871872230188202435619436938400636056917316408780406296324228246647792427539201284519274775658435381126645849335257306177558964656037470410192415530896751326349579817852732550942629228078549436677163337274801815562471570858245449481709553536405264040537707698648339553845504873958615176971996215564605529863553928013200342704440693871988013976639320377087790024099897087813658824152272840681355846652811356814564483461053168994874771699660757165820802661918427806449031473981196668287085227577715819154716599601711819293201574560030597590968426542295313703010921221500930885359215487557197124536832844525364004542421787237909639917118508852754440451471718279157970561862946535700260210163851448110945249996575610768135022147808184649641245582006478275258191109084125036991893003466332467414463633411525222349188712732581554983125188008952725504\n", + "15815251831860511949233811518703706722523125461006190631346125681266724808751609014050366791796904504794353957625317027431743744460376404871238873876801272113834632817560812592648456493295584855078402569038549551316870762253291698670514612355117929312074940820384831061793502652699159635705465101885258456157098873354326674549603631124943141716490898963419107072810528081075415397296679107691009747917230353943992431129211059727107856026400685408881387743976027953278640754175580048199794175627317648304545681362711693305622713629128966922106337989749543399321514331641605323836855612898062947962393336574170455155431638309433199203423638586403149120061195181936853084590627406021842443001861770718430975114394249073665689050728009084843574475819279834237017705508880902943436558315941123725893071400520420327702896221890499993151221536270044295616369299282491164012956550516382218168250073983786006932664934828927266823050444698377425465163109966250376017905451008\n", + "31630503663721023898467623037407413445046250922012381262692251362533449617503218028100733583593809009588707915250634054863487488920752809742477747753602544227669265635121625185296912986591169710156805138077099102633741524506583397341029224710235858624149881640769662123587005305398319271410930203770516912314197746708653349099207262249886283432981797926838214145621056162150830794593358215382019495834460707887984862258422119454215712052801370817762775487952055906557281508351160096399588351254635296609091362725423386611245427258257933844212675979499086798643028663283210647673711225796125895924786673148340910310863276618866398406847277172806298240122390363873706169181254812043684886003723541436861950228788498147331378101456018169687148951638559668474035411017761805886873116631882247451786142801040840655405792443780999986302443072540088591232738598564982328025913101032764436336500147967572013865329869657854533646100889396754850930326219932500752035810902016\n", + "63261007327442047796935246074814826890092501844024762525384502725066899235006436056201467167187618019177415830501268109726974977841505619484955495507205088455338531270243250370593825973182339420313610276154198205267483049013166794682058449420471717248299763281539324247174010610796638542821860407541033824628395493417306698198414524499772566865963595853676428291242112324301661589186716430764038991668921415775969724516844238908431424105602741635525550975904111813114563016702320192799176702509270593218182725450846773222490854516515867688425351958998173597286057326566421295347422451592251791849573346296681820621726553237732796813694554345612596480244780727747412338362509624087369772007447082873723900457576996294662756202912036339374297903277119336948070822035523611773746233263764494903572285602081681310811584887561999972604886145080177182465477197129964656051826202065528872673000295935144027730659739315709067292201778793509701860652439865001504071621804032\n", + "126522014654884095593870492149629653780185003688049525050769005450133798470012872112402934334375236038354831661002536219453949955683011238969910991014410176910677062540486500741187651946364678840627220552308396410534966098026333589364116898840943434496599526563078648494348021221593277085643720815082067649256790986834613396396829048999545133731927191707352856582484224648603323178373432861528077983337842831551939449033688477816862848211205483271051101951808223626229126033404640385598353405018541186436365450901693546444981709033031735376850703917996347194572114653132842590694844903184503583699146692593363641243453106475465593627389108691225192960489561455494824676725019248174739544014894165747447800915153992589325512405824072678748595806554238673896141644071047223547492466527528989807144571204163362621623169775123999945209772290160354364930954394259929312103652404131057745346000591870288055461319478631418134584403557587019403721304879730003008143243608064\n", + "253044029309768191187740984299259307560370007376099050101538010900267596940025744224805868668750472076709663322005072438907899911366022477939821982028820353821354125080973001482375303892729357681254441104616792821069932196052667178728233797681886868993199053126157296988696042443186554171287441630164135298513581973669226792793658097999090267463854383414705713164968449297206646356746865723056155966675685663103878898067376955633725696422410966542102203903616447252458252066809280771196706810037082372872730901803387092889963418066063470753701407835992694389144229306265685181389689806369007167398293385186727282486906212950931187254778217382450385920979122910989649353450038496349479088029788331494895601830307985178651024811648145357497191613108477347792283288142094447094984933055057979614289142408326725243246339550247999890419544580320708729861908788519858624207304808262115490692001183740576110922638957262836269168807115174038807442609759460006016286487216128\n", + "506088058619536382375481968598518615120740014752198100203076021800535193880051488449611737337500944153419326644010144877815799822732044955879643964057640707642708250161946002964750607785458715362508882209233585642139864392105334357456467595363773737986398106252314593977392084886373108342574883260328270597027163947338453585587316195998180534927708766829411426329936898594413292713493731446112311933351371326207757796134753911267451392844821933084204407807232894504916504133618561542393413620074164745745461803606774185779926836132126941507402815671985388778288458612531370362779379612738014334796586770373454564973812425901862374509556434764900771841958245821979298706900076992698958176059576662989791203660615970357302049623296290714994383226216954695584566576284188894189969866110115959228578284816653450486492679100495999780839089160641417459723817577039717248414609616524230981384002367481152221845277914525672538337614230348077614885219518920012032572974432256\n", + "1012176117239072764750963937197037230241480029504396200406152043601070387760102976899223474675001888306838653288020289755631599645464089911759287928115281415285416500323892005929501215570917430725017764418467171284279728784210668714912935190727547475972796212504629187954784169772746216685149766520656541194054327894676907171174632391996361069855417533658822852659873797188826585426987462892224623866702742652415515592269507822534902785689643866168408815614465789009833008267237123084786827240148329491490923607213548371559853672264253883014805631343970777556576917225062740725558759225476028669593173540746909129947624851803724749019112869529801543683916491643958597413800153985397916352119153325979582407321231940714604099246592581429988766452433909391169133152568377788379939732220231918457156569633306900972985358200991999561678178321282834919447635154079434496829219233048461962768004734962304443690555829051345076675228460696155229770439037840024065145948864512\n", + "2024352234478145529501927874394074460482960059008792400812304087202140775520205953798446949350003776613677306576040579511263199290928179823518575856230562830570833000647784011859002431141834861450035528836934342568559457568421337429825870381455094951945592425009258375909568339545492433370299533041313082388108655789353814342349264783992722139710835067317645705319747594377653170853974925784449247733405485304831031184539015645069805571379287732336817631228931578019666016534474246169573654480296658982981847214427096743119707344528507766029611262687941555113153834450125481451117518450952057339186347081493818259895249703607449498038225739059603087367832983287917194827600307970795832704238306651959164814642463881429208198493185162859977532904867818782338266305136755576759879464440463836914313139266613801945970716401983999123356356642565669838895270308158868993658438466096923925536009469924608887381111658102690153350456921392310459540878075680048130291897729024\n", + "4048704468956291059003855748788148920965920118017584801624608174404281551040411907596893898700007553227354613152081159022526398581856359647037151712461125661141666001295568023718004862283669722900071057673868685137118915136842674859651740762910189903891184850018516751819136679090984866740599066082626164776217311578707628684698529567985444279421670134635291410639495188755306341707949851568898495466810970609662062369078031290139611142758575464673635262457863156039332033068948492339147308960593317965963694428854193486239414689057015532059222525375883110226307668900250962902235036901904114678372694162987636519790499407214898996076451478119206174735665966575834389655200615941591665408476613303918329629284927762858416396986370325719955065809735637564676532610273511153519758928880927673828626278533227603891941432803967998246712713285131339677790540616317737987316876932193847851072018939849217774762223316205380306700913842784620919081756151360096260583795458048\n", + "8097408937912582118007711497576297841931840236035169603249216348808563102080823815193787797400015106454709226304162318045052797163712719294074303424922251322283332002591136047436009724567339445800142115347737370274237830273685349719303481525820379807782369700037033503638273358181969733481198132165252329552434623157415257369397059135970888558843340269270582821278990377510612683415899703137796990933621941219324124738156062580279222285517150929347270524915726312078664066137896984678294617921186635931927388857708386972478829378114031064118445050751766220452615337800501925804470073803808229356745388325975273039580998814429797992152902956238412349471331933151668779310401231883183330816953226607836659258569855525716832793972740651439910131619471275129353065220547022307039517857761855347657252557066455207783882865607935996493425426570262679355581081232635475974633753864387695702144037879698435549524446632410760613401827685569241838163512302720192521167590916096\n", + "16194817875825164236015422995152595683863680472070339206498432697617126204161647630387575594800030212909418452608324636090105594327425438588148606849844502644566664005182272094872019449134678891600284230695474740548475660547370699438606963051640759615564739400074067007276546716363939466962396264330504659104869246314830514738794118271941777117686680538541165642557980755021225366831799406275593981867243882438648249476312125160558444571034301858694541049831452624157328132275793969356589235842373271863854777715416773944957658756228062128236890101503532440905230675601003851608940147607616458713490776651950546079161997628859595984305805912476824698942663866303337558620802463766366661633906453215673318517139711051433665587945481302879820263238942550258706130441094044614079035715523710695314505114132910415567765731215871992986850853140525358711162162465270951949267507728775391404288075759396871099048893264821521226803655371138483676327024605440385042335181832192\n", + "32389635751650328472030845990305191367727360944140678412996865395234252408323295260775151189600060425818836905216649272180211188654850877176297213699689005289133328010364544189744038898269357783200568461390949481096951321094741398877213926103281519231129478800148134014553093432727878933924792528661009318209738492629661029477588236543883554235373361077082331285115961510042450733663598812551187963734487764877296498952624250321116889142068603717389082099662905248314656264551587938713178471684746543727709555430833547889915317512456124256473780203007064881810461351202007703217880295215232917426981553303901092158323995257719191968611611824953649397885327732606675117241604927532733323267812906431346637034279422102867331175890962605759640526477885100517412260882188089228158071431047421390629010228265820831135531462431743985973701706281050717422324324930541903898535015457550782808576151518793742198097786529643042453607310742276967352654049210880770084670363664384\n", + "64779271503300656944061691980610382735454721888281356825993730790468504816646590521550302379200120851637673810433298544360422377309701754352594427399378010578266656020729088379488077796538715566401136922781898962193902642189482797754427852206563038462258957600296268029106186865455757867849585057322018636419476985259322058955176473087767108470746722154164662570231923020084901467327197625102375927468975529754592997905248500642233778284137207434778164199325810496629312529103175877426356943369493087455419110861667095779830635024912248512947560406014129763620922702404015406435760590430465834853963106607802184316647990515438383937223223649907298795770655465213350234483209855065466646535625812862693274068558844205734662351781925211519281052955770201034824521764376178456316142862094842781258020456531641662271062924863487971947403412562101434844648649861083807797070030915101565617152303037587484396195573059286084907214621484553934705308098421761540169340727328768\n", + "129558543006601313888123383961220765470909443776562713651987461580937009633293181043100604758400241703275347620866597088720844754619403508705188854798756021156533312041458176758976155593077431132802273845563797924387805284378965595508855704413126076924517915200592536058212373730911515735699170114644037272838953970518644117910352946175534216941493444308329325140463846040169802934654395250204751854937951059509185995810497001284467556568274414869556328398651620993258625058206351754852713886738986174910838221723334191559661270049824497025895120812028259527241845404808030812871521180860931669707926213215604368633295981030876767874446447299814597591541310930426700468966419710130933293071251625725386548137117688411469324703563850423038562105911540402069649043528752356912632285724189685562516040913063283324542125849726975943894806825124202869689297299722167615594140061830203131234304606075174968792391146118572169814429242969107869410616196843523080338681454657536\n", + "259117086013202627776246767922441530941818887553125427303974923161874019266586362086201209516800483406550695241733194177441689509238807017410377709597512042313066624082916353517952311186154862265604547691127595848775610568757931191017711408826252153849035830401185072116424747461823031471398340229288074545677907941037288235820705892351068433882986888616658650280927692080339605869308790500409503709875902119018371991620994002568935113136548829739112656797303241986517250116412703509705427773477972349821676443446668383119322540099648994051790241624056519054483690809616061625743042361721863339415852426431208737266591962061753535748892894599629195183082621860853400937932839420261866586142503251450773096274235376822938649407127700846077124211823080804139298087057504713825264571448379371125032081826126566649084251699453951887789613650248405739378594599444335231188280123660406262468609212150349937584782292237144339628858485938215738821232393687046160677362909315072\n", + "518234172026405255552493535844883061883637775106250854607949846323748038533172724172402419033600966813101390483466388354883379018477614034820755419195024084626133248165832707035904622372309724531209095382255191697551221137515862382035422817652504307698071660802370144232849494923646062942796680458576149091355815882074576471641411784702136867765973777233317300561855384160679211738617581000819007419751804238036743983241988005137870226273097659478225313594606483973034500232825407019410855546955944699643352886893336766238645080199297988103580483248113038108967381619232123251486084723443726678831704852862417474533183924123507071497785789199258390366165243721706801875865678840523733172285006502901546192548470753645877298814255401692154248423646161608278596174115009427650529142896758742250064163652253133298168503398907903775579227300496811478757189198888670462376560247320812524937218424300699875169564584474288679257716971876431477642464787374092321354725818630144\n", + "1036468344052810511104987071689766123767275550212501709215899692647496077066345448344804838067201933626202780966932776709766758036955228069641510838390048169252266496331665414071809244744619449062418190764510383395102442275031724764070845635305008615396143321604740288465698989847292125885593360917152298182711631764149152943282823569404273735531947554466634601123710768321358423477235162001638014839503608476073487966483976010275740452546195318956450627189212967946069000465650814038821711093911889399286705773786673532477290160398595976207160966496226076217934763238464246502972169446887453357663409705724834949066367848247014142995571578398516780732330487443413603751731357681047466344570013005803092385096941507291754597628510803384308496847292323216557192348230018855301058285793517484500128327304506266596337006797815807551158454600993622957514378397777340924753120494641625049874436848601399750339129168948577358515433943752862955284929574748184642709451637260288\n", + "2072936688105621022209974143379532247534551100425003418431799385294992154132690896689609676134403867252405561933865553419533516073910456139283021676780096338504532992663330828143618489489238898124836381529020766790204884550063449528141691270610017230792286643209480576931397979694584251771186721834304596365423263528298305886565647138808547471063895108933269202247421536642716846954470324003276029679007216952146975932967952020551480905092390637912901254378425935892138000931301628077643422187823778798573411547573347064954580320797191952414321932992452152435869526476928493005944338893774906715326819411449669898132735696494028285991143156797033561464660974886827207503462715362094932689140026011606184770193883014583509195257021606768616993694584646433114384696460037710602116571587034969000256654609012533192674013595631615102316909201987245915028756795554681849506240989283250099748873697202799500678258337897154717030867887505725910569859149496369285418903274520576\n", + "4145873376211242044419948286759064495069102200850006836863598770589984308265381793379219352268807734504811123867731106839067032147820912278566043353560192677009065985326661656287236978978477796249672763058041533580409769100126899056283382541220034461584573286418961153862795959389168503542373443668609192730846527056596611773131294277617094942127790217866538404494843073285433693908940648006552059358014433904293951865935904041102961810184781275825802508756851871784276001862603256155286844375647557597146823095146694129909160641594383904828643865984904304871739052953856986011888677787549813430653638822899339796265471392988056571982286313594067122929321949773654415006925430724189865378280052023212369540387766029167018390514043213537233987389169292866228769392920075421204233143174069938000513309218025066385348027191263230204633818403974491830057513591109363699012481978566500199497747394405599001356516675794309434061735775011451821139718298992738570837806549041152\n", + "8291746752422484088839896573518128990138204401700013673727197541179968616530763586758438704537615469009622247735462213678134064295641824557132086707120385354018131970653323312574473957956955592499345526116083067160819538200253798112566765082440068923169146572837922307725591918778337007084746887337218385461693054113193223546262588555234189884255580435733076808989686146570867387817881296013104118716028867808587903731871808082205923620369562551651605017513703743568552003725206512310573688751295115194293646190293388259818321283188767809657287731969808609743478105907713972023777355575099626861307277645798679592530942785976113143964572627188134245858643899547308830013850861448379730756560104046424739080775532058334036781028086427074467974778338585732457538785840150842408466286348139876001026618436050132770696054382526460409267636807948983660115027182218727398024963957133000398995494788811198002713033351588618868123471550022903642279436597985477141675613098082304\n", + "16583493504844968177679793147036257980276408803400027347454395082359937233061527173516877409075230938019244495470924427356268128591283649114264173414240770708036263941306646625148947915913911184998691052232166134321639076400507596225133530164880137846338293145675844615451183837556674014169493774674436770923386108226386447092525177110468379768511160871466153617979372293141734775635762592026208237432057735617175807463743616164411847240739125103303210035027407487137104007450413024621147377502590230388587292380586776519636642566377535619314575463939617219486956211815427944047554711150199253722614555291597359185061885571952226287929145254376268491717287799094617660027701722896759461513120208092849478161551064116668073562056172854148935949556677171464915077571680301684816932572696279752002053236872100265541392108765052920818535273615897967320230054364437454796049927914266000797990989577622396005426066703177237736246943100045807284558873195970954283351226196164608\n", + "33166987009689936355359586294072515960552817606800054694908790164719874466123054347033754818150461876038488990941848854712536257182567298228528346828481541416072527882613293250297895831827822369997382104464332268643278152801015192450267060329760275692676586291351689230902367675113348028338987549348873541846772216452772894185050354220936759537022321742932307235958744586283469551271525184052416474864115471234351614927487232328823694481478250206606420070054814974274208014900826049242294755005180460777174584761173553039273285132755071238629150927879234438973912423630855888095109422300398507445229110583194718370123771143904452575858290508752536983434575598189235320055403445793518923026240416185698956323102128233336147124112345708297871899113354342929830155143360603369633865145392559504004106473744200531082784217530105841637070547231795934640460108728874909592099855828532001595981979155244792010852133406354475472493886200091614569117746391941908566702452392329216\n", + "66333974019379872710719172588145031921105635213600109389817580329439748932246108694067509636300923752076977981883697709425072514365134596457056693656963082832145055765226586500595791663655644739994764208928664537286556305602030384900534120659520551385353172582703378461804735350226696056677975098697747083693544432905545788370100708441873519074044643485864614471917489172566939102543050368104832949728230942468703229854974464657647388962956500413212840140109629948548416029801652098484589510010360921554349169522347106078546570265510142477258301855758468877947824847261711776190218844600797014890458221166389436740247542287808905151716581017505073966869151196378470640110806891587037846052480832371397912646204256466672294248224691416595743798226708685859660310286721206739267730290785119008008212947488401062165568435060211683274141094463591869280920217457749819184199711657064003191963958310489584021704266812708950944987772400183229138235492783883817133404904784658432\n", + "132667948038759745421438345176290063842211270427200218779635160658879497864492217388135019272601847504153955963767395418850145028730269192914113387313926165664290111530453173001191583327311289479989528417857329074573112611204060769801068241319041102770706345165406756923609470700453392113355950197395494167387088865811091576740201416883747038148089286971729228943834978345133878205086100736209665899456461884937406459709948929315294777925913000826425680280219259897096832059603304196969179020020721843108698339044694212157093140531020284954516603711516937755895649694523423552380437689201594029780916442332778873480495084575617810303433162035010147933738302392756941280221613783174075692104961664742795825292408512933344588496449382833191487596453417371719320620573442413478535460581570238016016425894976802124331136870120423366548282188927183738561840434915499638368399423314128006383927916620979168043408533625417901889975544800366458276470985567767634266809809569316864\n", + "265335896077519490842876690352580127684422540854400437559270321317758995728984434776270038545203695008307911927534790837700290057460538385828226774627852331328580223060906346002383166654622578959979056835714658149146225222408121539602136482638082205541412690330813513847218941400906784226711900394790988334774177731622183153480402833767494076296178573943458457887669956690267756410172201472419331798912923769874812919419897858630589555851826001652851360560438519794193664119206608393938358040041443686217396678089388424314186281062040569909033207423033875511791299389046847104760875378403188059561832884665557746960990169151235620606866324070020295867476604785513882560443227566348151384209923329485591650584817025866689176992898765666382975192906834743438641241146884826957070921163140476032032851789953604248662273740240846733096564377854367477123680869830999276736798846628256012767855833241958336086817067250835803779951089600732916552941971135535268533619619138633728\n", + "530671792155038981685753380705160255368845081708800875118540642635517991457968869552540077090407390016615823855069581675400580114921076771656453549255704662657160446121812692004766333309245157919958113671429316298292450444816243079204272965276164411082825380661627027694437882801813568453423800789581976669548355463244366306960805667534988152592357147886916915775339913380535512820344402944838663597825847539749625838839795717261179111703652003305702721120877039588387328238413216787876716080082887372434793356178776848628372562124081139818066414846067751023582598778093694209521750756806376119123665769331115493921980338302471241213732648140040591734953209571027765120886455132696302768419846658971183301169634051733378353985797531332765950385813669486877282482293769653914141842326280952064065703579907208497324547480481693466193128755708734954247361739661998553473597693256512025535711666483916672173634134501671607559902179201465833105883942271070537067239238277267456\n", + "1061343584310077963371506761410320510737690163417601750237081285271035982915937739105080154180814780033231647710139163350801160229842153543312907098511409325314320892243625384009532666618490315839916227342858632596584900889632486158408545930552328822165650761323254055388875765603627136906847601579163953339096710926488732613921611335069976305184714295773833831550679826761071025640688805889677327195651695079499251677679591434522358223407304006611405442241754079176774656476826433575753432160165774744869586712357553697256745124248162279636132829692135502047165197556187388419043501513612752238247331538662230987843960676604942482427465296280081183469906419142055530241772910265392605536839693317942366602339268103466756707971595062665531900771627338973754564964587539307828283684652561904128131407159814416994649094960963386932386257511417469908494723479323997106947195386513024051071423332967833344347268269003343215119804358402931666211767884542141074134478476554534912\n", + "2122687168620155926743013522820641021475380326835203500474162570542071965831875478210160308361629560066463295420278326701602320459684307086625814197022818650628641784487250768019065333236980631679832454685717265193169801779264972316817091861104657644331301522646508110777751531207254273813695203158327906678193421852977465227843222670139952610369428591547667663101359653522142051281377611779354654391303390158998503355359182869044716446814608013222810884483508158353549312953652867151506864320331549489739173424715107394513490248496324559272265659384271004094330395112374776838087003027225504476494663077324461975687921353209884964854930592560162366939812838284111060483545820530785211073679386635884733204678536206933513415943190125331063801543254677947509129929175078615656567369305123808256262814319628833989298189921926773864772515022834939816989446958647994213894390773026048102142846665935666688694536538006686430239608716805863332423535769084282148268956953109069824\n", + "4245374337240311853486027045641282042950760653670407000948325141084143931663750956420320616723259120132926590840556653403204640919368614173251628394045637301257283568974501536038130666473961263359664909371434530386339603558529944633634183722209315288662603045293016221555503062414508547627390406316655813356386843705954930455686445340279905220738857183095335326202719307044284102562755223558709308782606780317997006710718365738089432893629216026445621768967016316707098625907305734303013728640663098979478346849430214789026980496992649118544531318768542008188660790224749553676174006054451008952989326154648923951375842706419769929709861185120324733879625676568222120967091641061570422147358773271769466409357072413867026831886380250662127603086509355895018259858350157231313134738610247616512525628639257667978596379843853547729545030045669879633978893917295988427788781546052096204285693331871333377389073076013372860479217433611726664847071538168564296537913906218139648\n", + "8490748674480623706972054091282564085901521307340814001896650282168287863327501912840641233446518240265853181681113306806409281838737228346503256788091274602514567137949003072076261332947922526719329818742869060772679207117059889267268367444418630577325206090586032443111006124829017095254780812633311626712773687411909860911372890680559810441477714366190670652405438614088568205125510447117418617565213560635994013421436731476178865787258432052891243537934032633414197251814611468606027457281326197958956693698860429578053960993985298237089062637537084016377321580449499107352348012108902017905978652309297847902751685412839539859419722370240649467759251353136444241934183282123140844294717546543538932818714144827734053663772760501324255206173018711790036519716700314462626269477220495233025051257278515335957192759687707095459090060091339759267957787834591976855577563092104192408571386663742666754778146152026745720958434867223453329694143076337128593075827812436279296\n", + "16981497348961247413944108182565128171803042614681628003793300564336575726655003825681282466893036480531706363362226613612818563677474456693006513576182549205029134275898006144152522665895845053438659637485738121545358414234119778534536734888837261154650412181172064886222012249658034190509561625266623253425547374823819721822745781361119620882955428732381341304810877228177136410251020894234837235130427121271988026842873462952357731574516864105782487075868065266828394503629222937212054914562652395917913387397720859156107921987970596474178125275074168032754643160898998214704696024217804035811957304618595695805503370825679079718839444740481298935518502706272888483868366564246281688589435093087077865637428289655468107327545521002648510412346037423580073039433400628925252538954440990466050102514557030671914385519375414190918180120182679518535915575669183953711155126184208384817142773327485333509556292304053491441916869734446906659388286152674257186151655624872558592\n", + "33962994697922494827888216365130256343606085229363256007586601128673151453310007651362564933786072961063412726724453227225637127354948913386013027152365098410058268551796012288305045331791690106877319274971476243090716828468239557069073469777674522309300824362344129772444024499316068381019123250533246506851094749647639443645491562722239241765910857464762682609621754456354272820502041788469674470260854242543976053685746925904715463149033728211564974151736130533656789007258445874424109829125304791835826774795441718312215843975941192948356250550148336065509286321797996429409392048435608071623914609237191391611006741651358159437678889480962597871037005412545776967736733128492563377178870186174155731274856579310936214655091042005297020824692074847160146078866801257850505077908881980932100205029114061343828771038750828381836360240365359037071831151338367907422310252368416769634285546654970667019112584608106982883833739468893813318776572305348514372303311249745117184\n", + "67925989395844989655776432730260512687212170458726512015173202257346302906620015302725129867572145922126825453448906454451274254709897826772026054304730196820116537103592024576610090663583380213754638549942952486181433656936479114138146939555349044618601648724688259544888048998632136762038246501066493013702189499295278887290983125444478483531821714929525365219243508912708545641004083576939348940521708485087952107371493851809430926298067456423129948303472261067313578014516891748848219658250609583671653549590883436624431687951882385896712501100296672131018572643595992858818784096871216143247829218474382783222013483302716318875357778961925195742074010825091553935473466256985126754357740372348311462549713158621872429310182084010594041649384149694320292157733602515701010155817763961864200410058228122687657542077501656763672720480730718074143662302676735814844620504736833539268571093309941334038225169216213965767667478937787626637553144610697028744606622499490234368\n", + "135851978791689979311552865460521025374424340917453024030346404514692605813240030605450259735144291844253650906897812908902548509419795653544052108609460393640233074207184049153220181327166760427509277099885904972362867313872958228276293879110698089237203297449376519089776097997264273524076493002132986027404378998590557774581966250888956967063643429859050730438487017825417091282008167153878697881043416970175904214742987703618861852596134912846259896606944522134627156029033783497696439316501219167343307099181766873248863375903764771793425002200593344262037145287191985717637568193742432286495658436948765566444026966605432637750715557923850391484148021650183107870946932513970253508715480744696622925099426317243744858620364168021188083298768299388640584315467205031402020311635527923728400820116456245375315084155003313527345440961461436148287324605353471629689241009473667078537142186619882668076450338432427931535334957875575253275106289221394057489213244998980468736\n", + "271703957583379958623105730921042050748848681834906048060692809029385211626480061210900519470288583688507301813795625817805097018839591307088104217218920787280466148414368098306440362654333520855018554199771809944725734627745916456552587758221396178474406594898753038179552195994528547048152986004265972054808757997181115549163932501777913934127286859718101460876974035650834182564016334307757395762086833940351808429485975407237723705192269825692519793213889044269254312058067566995392878633002438334686614198363533746497726751807529543586850004401186688524074290574383971435275136387484864572991316873897531132888053933210865275501431115847700782968296043300366215741893865027940507017430961489393245850198852634487489717240728336042376166597536598777281168630934410062804040623271055847456801640232912490750630168310006627054690881922922872296574649210706943259378482018947334157074284373239765336152900676864855863070669915751150506550212578442788114978426489997960937472\n", + "543407915166759917246211461842084101497697363669812096121385618058770423252960122421801038940577167377014603627591251635610194037679182614176208434437841574560932296828736196612880725308667041710037108399543619889451469255491832913105175516442792356948813189797506076359104391989057094096305972008531944109617515994362231098327865003555827868254573719436202921753948071301668365128032668615514791524173667880703616858971950814475447410384539651385039586427778088538508624116135133990785757266004876669373228396727067492995453503615059087173700008802373377048148581148767942870550272774969729145982633747795062265776107866421730551002862231695401565936592086600732431483787730055881014034861922978786491700397705268974979434481456672084752333195073197554562337261868820125608081246542111694913603280465824981501260336620013254109381763845845744593149298421413886518756964037894668314148568746479530672305801353729711726141339831502301013100425156885576229956852979995921874944\n", + "1086815830333519834492422923684168202995394727339624192242771236117540846505920244843602077881154334754029207255182503271220388075358365228352416868875683149121864593657472393225761450617334083420074216799087239778902938510983665826210351032885584713897626379595012152718208783978114188192611944017063888219235031988724462196655730007111655736509147438872405843507896142603336730256065337231029583048347335761407233717943901628950894820769079302770079172855556177077017248232270267981571514532009753338746456793454134985990907007230118174347400017604746754096297162297535885741100545549939458291965267495590124531552215732843461102005724463390803131873184173201464862967575460111762028069723845957572983400795410537949958868962913344169504666390146395109124674523737640251216162493084223389827206560931649963002520673240026508218763527691691489186298596842827773037513928075789336628297137492959061344611602707459423452282679663004602026200850313771152459913705959991843749888\n", + "2173631660667039668984845847368336405990789454679248384485542472235081693011840489687204155762308669508058414510365006542440776150716730456704833737751366298243729187314944786451522901234668166840148433598174479557805877021967331652420702065771169427795252759190024305436417567956228376385223888034127776438470063977448924393311460014223311473018294877744811687015792285206673460512130674462059166096694671522814467435887803257901789641538158605540158345711112354154034496464540535963143029064019506677492913586908269971981814014460236348694800035209493508192594324595071771482201091099878916583930534991180249063104431465686922204011448926781606263746368346402929725935150920223524056139447691915145966801590821075899917737925826688339009332780292790218249349047475280502432324986168446779654413121863299926005041346480053016437527055383382978372597193685655546075027856151578673256594274985918122689223205414918846904565359326009204052401700627542304919827411919983687499776\n", + "4347263321334079337969691694736672811981578909358496768971084944470163386023680979374408311524617339016116829020730013084881552301433460913409667475502732596487458374629889572903045802469336333680296867196348959115611754043934663304841404131542338855590505518380048610872835135912456752770447776068255552876940127954897848786622920028446622946036589755489623374031584570413346921024261348924118332193389343045628934871775606515803579283076317211080316691422224708308068992929081071926286058128039013354985827173816539943963628028920472697389600070418987016385188649190143542964402182199757833167861069982360498126208862931373844408022897853563212527492736692805859451870301840447048112278895383830291933603181642151799835475851653376678018665560585580436498698094950561004864649972336893559308826243726599852010082692960106032875054110766765956745194387371311092150055712303157346513188549971836245378446410829837693809130718652018408104803401255084609839654823839967374999552\n", + "8694526642668158675939383389473345623963157818716993537942169888940326772047361958748816623049234678032233658041460026169763104602866921826819334951005465192974916749259779145806091604938672667360593734392697918231223508087869326609682808263084677711181011036760097221745670271824913505540895552136511105753880255909795697573245840056893245892073179510979246748063169140826693842048522697848236664386778686091257869743551213031607158566152634422160633382844449416616137985858162143852572116256078026709971654347633079887927256057840945394779200140837974032770377298380287085928804364399515666335722139964720996252417725862747688816045795707126425054985473385611718903740603680894096224557790767660583867206363284303599670951703306753356037331121171160872997396189901122009729299944673787118617652487453199704020165385920212065750108221533531913490388774742622184300111424606314693026377099943672490756892821659675387618261437304036816209606802510169219679309647679934749999104\n", + "17389053285336317351878766778946691247926315637433987075884339777880653544094723917497633246098469356064467316082920052339526209205733843653638669902010930385949833498519558291612183209877345334721187468785395836462447016175738653219365616526169355422362022073520194443491340543649827011081791104273022211507760511819591395146491680113786491784146359021958493496126338281653387684097045395696473328773557372182515739487102426063214317132305268844321266765688898833232275971716324287705144232512156053419943308695266159775854512115681890789558400281675948065540754596760574171857608728799031332671444279929441992504835451725495377632091591414252850109970946771223437807481207361788192449115581535321167734412726568607199341903406613506712074662242342321745994792379802244019458599889347574237235304974906399408040330771840424131500216443067063826980777549485244368600222849212629386052754199887344981513785643319350775236522874608073632419213605020338439358619295359869499998208\n", + "34778106570672634703757533557893382495852631274867974151768679555761307088189447834995266492196938712128934632165840104679052418411467687307277339804021860771899666997039116583224366419754690669442374937570791672924894032351477306438731233052338710844724044147040388886982681087299654022163582208546044423015521023639182790292983360227572983568292718043916986992252676563306775368194090791392946657547114744365031478974204852126428634264610537688642533531377797666464551943432648575410288465024312106839886617390532319551709024231363781579116800563351896131081509193521148343715217457598062665342888559858883985009670903450990755264183182828505700219941893542446875614962414723576384898231163070642335468825453137214398683806813227013424149324484684643491989584759604488038917199778695148474470609949812798816080661543680848263000432886134127653961555098970488737200445698425258772105508399774689963027571286638701550473045749216147264838427210040676878717238590719738999996416\n", + "69556213141345269407515067115786764991705262549735948303537359111522614176378895669990532984393877424257869264331680209358104836822935374614554679608043721543799333994078233166448732839509381338884749875141583345849788064702954612877462466104677421689448088294080777773965362174599308044327164417092088846031042047278365580585966720455145967136585436087833973984505353126613550736388181582785893315094229488730062957948409704252857268529221075377285067062755595332929103886865297150820576930048624213679773234781064639103418048462727563158233601126703792262163018387042296687430434915196125330685777119717767970019341806901981510528366365657011400439883787084893751229924829447152769796462326141284670937650906274428797367613626454026848298648969369286983979169519208976077834399557390296948941219899625597632161323087361696526000865772268255307923110197940977474400891396850517544211016799549379926055142573277403100946091498432294529676854420081353757434477181439477999992832\n", + "139112426282690538815030134231573529983410525099471896607074718223045228352757791339981065968787754848515738528663360418716209673645870749229109359216087443087598667988156466332897465679018762677769499750283166691699576129405909225754924932209354843378896176588161555547930724349198616088654328834184177692062084094556731161171933440910291934273170872175667947969010706253227101472776363165571786630188458977460125915896819408505714537058442150754570134125511190665858207773730594301641153860097248427359546469562129278206836096925455126316467202253407584524326036774084593374860869830392250661371554239435535940038683613803963021056732731314022800879767574169787502459849658894305539592924652282569341875301812548857594735227252908053696597297938738573967958339038417952155668799114780593897882439799251195264322646174723393052001731544536510615846220395881954948801782793701035088422033599098759852110285146554806201892182996864589059353708840162707514868954362878955999985664\n", + "278224852565381077630060268463147059966821050198943793214149436446090456705515582679962131937575509697031477057326720837432419347291741498458218718432174886175197335976312932665794931358037525355538999500566333383399152258811818451509849864418709686757792353176323111095861448698397232177308657668368355384124168189113462322343866881820583868546341744351335895938021412506454202945552726331143573260376917954920251831793638817011429074116884301509140268251022381331716415547461188603282307720194496854719092939124258556413672193850910252632934404506815169048652073548169186749721739660784501322743108478871071880077367227607926042113465462628045601759535148339575004919699317788611079185849304565138683750603625097715189470454505816107393194595877477147935916678076835904311337598229561187795764879598502390528645292349446786104003463089073021231692440791763909897603565587402070176844067198197519704220570293109612403784365993729178118707417680325415029737908725757911999971328\n", + "556449705130762155260120536926294119933642100397887586428298872892180913411031165359924263875151019394062954114653441674864838694583482996916437436864349772350394671952625865331589862716075050711077999001132666766798304517623636903019699728837419373515584706352646222191722897396794464354617315336736710768248336378226924644687733763641167737092683488702671791876042825012908405891105452662287146520753835909840503663587277634022858148233768603018280536502044762663432831094922377206564615440388993709438185878248517112827344387701820505265868809013630338097304147096338373499443479321569002645486216957742143760154734455215852084226930925256091203519070296679150009839398635577222158371698609130277367501207250195430378940909011632214786389191754954295871833356153671808622675196459122375591529759197004781057290584698893572208006926178146042463384881583527819795207131174804140353688134396395039408441140586219224807568731987458356237414835360650830059475817451515823999942656\n", + "1112899410261524310520241073852588239867284200795775172856597745784361826822062330719848527750302038788125908229306883349729677389166965993832874873728699544700789343905251730663179725432150101422155998002265333533596609035247273806039399457674838747031169412705292444383445794793588928709234630673473421536496672756453849289375467527282335474185366977405343583752085650025816811782210905324574293041507671819681007327174555268045716296467537206036561073004089525326865662189844754413129230880777987418876371756497034225654688775403641010531737618027260676194608294192676746998886958643138005290972433915484287520309468910431704168453861850512182407038140593358300019678797271154444316743397218260554735002414500390860757881818023264429572778383509908591743666712307343617245350392918244751183059518394009562114581169397787144416013852356292084926769763167055639590414262349608280707376268792790078816882281172438449615137463974916712474829670721301660118951634903031647999885312\n", + "2225798820523048621040482147705176479734568401591550345713195491568723653644124661439697055500604077576251816458613766699459354778333931987665749747457399089401578687810503461326359450864300202844311996004530667067193218070494547612078798915349677494062338825410584888766891589587177857418469261346946843072993345512907698578750935054564670948370733954810687167504171300051633623564421810649148586083015343639362014654349110536091432592935074412073122146008179050653731324379689508826258461761555974837752743512994068451309377550807282021063475236054521352389216588385353493997773917286276010581944867830968575040618937820863408336907723701024364814076281186716600039357594542308888633486794436521109470004829000781721515763636046528859145556767019817183487333424614687234490700785836489502366119036788019124229162338795574288832027704712584169853539526334111279180828524699216561414752537585580157633764562344876899230274927949833424949659341442603320237903269806063295999770624\n", + "4451597641046097242080964295410352959469136803183100691426390983137447307288249322879394111001208155152503632917227533398918709556667863975331499494914798178803157375621006922652718901728600405688623992009061334134386436140989095224157597830699354988124677650821169777533783179174355714836938522693893686145986691025815397157501870109129341896741467909621374335008342600103267247128843621298297172166030687278724029308698221072182865185870148824146244292016358101307462648759379017652516923523111949675505487025988136902618755101614564042126950472109042704778433176770706987995547834572552021163889735661937150081237875641726816673815447402048729628152562373433200078715189084617777266973588873042218940009658001563443031527272093057718291113534039634366974666849229374468981401571672979004732238073576038248458324677591148577664055409425168339707079052668222558361657049398433122829505075171160315267529124689753798460549855899666849899318682885206640475806539612126591999541248\n", + "8903195282092194484161928590820705918938273606366201382852781966274894614576498645758788222002416310305007265834455066797837419113335727950662998989829596357606314751242013845305437803457200811377247984018122668268772872281978190448315195661398709976249355301642339555067566358348711429673877045387787372291973382051630794315003740218258683793482935819242748670016685200206534494257687242596594344332061374557448058617396442144365730371740297648292488584032716202614925297518758035305033847046223899351010974051976273805237510203229128084253900944218085409556866353541413975991095669145104042327779471323874300162475751283453633347630894804097459256305124746866400157430378169235554533947177746084437880019316003126886063054544186115436582227068079268733949333698458748937962803143345958009464476147152076496916649355182297155328110818850336679414158105336445116723314098796866245659010150342320630535058249379507596921099711799333699798637365770413280951613079224253183999082496\n", + "17806390564184388968323857181641411837876547212732402765705563932549789229152997291517576444004832620610014531668910133595674838226671455901325997979659192715212629502484027690610875606914401622754495968036245336537545744563956380896630391322797419952498710603284679110135132716697422859347754090775574744583946764103261588630007480436517367586965871638485497340033370400413068988515374485193188688664122749114896117234792884288731460743480595296584977168065432405229850595037516070610067694092447798702021948103952547610475020406458256168507801888436170819113732707082827951982191338290208084655558942647748600324951502566907266695261789608194918512610249493732800314860756338471109067894355492168875760038632006253772126109088372230873164454136158537467898667396917497875925606286691916018928952294304152993833298710364594310656221637700673358828316210672890233446628197593732491318020300684641261070116498759015193842199423598667399597274731540826561903226158448506367998164992\n", + "35612781128368777936647714363282823675753094425464805531411127865099578458305994583035152888009665241220029063337820267191349676453342911802651995959318385430425259004968055381221751213828803245508991936072490673075091489127912761793260782645594839904997421206569358220270265433394845718695508181551149489167893528206523177260014960873034735173931743276970994680066740800826137977030748970386377377328245498229792234469585768577462921486961190593169954336130864810459701190075032141220135388184895597404043896207905095220950040812916512337015603776872341638227465414165655903964382676580416169311117885295497200649903005133814533390523579216389837025220498987465600629721512676942218135788710984337751520077264012507544252218176744461746328908272317074935797334793834995751851212573383832037857904588608305987666597420729188621312443275401346717656632421345780466893256395187464982636040601369282522140232997518030387684398847197334799194549463081653123806452316897012735996329984\n", + "71225562256737555873295428726565647351506188850929611062822255730199156916611989166070305776019330482440058126675640534382699352906685823605303991918636770860850518009936110762443502427657606491017983872144981346150182978255825523586521565291189679809994842413138716440540530866789691437391016363102298978335787056413046354520029921746069470347863486553941989360133481601652275954061497940772754754656490996459584468939171537154925842973922381186339908672261729620919402380150064282440270776369791194808087792415810190441900081625833024674031207553744683276454930828331311807928765353160832338622235770590994401299806010267629066781047158432779674050440997974931201259443025353884436271577421968675503040154528025015088504436353488923492657816544634149871594669587669991503702425146767664075715809177216611975333194841458377242624886550802693435313264842691560933786512790374929965272081202738565044280465995036060775368797694394669598389098926163306247612904633794025471992659968\n", + "142451124513475111746590857453131294703012377701859222125644511460398313833223978332140611552038660964880116253351281068765398705813371647210607983837273541721701036019872221524887004855315212982035967744289962692300365956511651047173043130582379359619989684826277432881081061733579382874782032726204597956671574112826092709040059843492138940695726973107883978720266963203304551908122995881545509509312981992919168937878343074309851685947844762372679817344523459241838804760300128564880541552739582389616175584831620380883800163251666049348062415107489366552909861656662623615857530706321664677244471541181988802599612020535258133562094316865559348100881995949862402518886050707768872543154843937351006080309056050030177008872706977846985315633089268299743189339175339983007404850293535328151431618354433223950666389682916754485249773101605386870626529685383121867573025580749859930544162405477130088560931990072121550737595388789339196778197852326612495225809267588050943985319936\n", + "284902249026950223493181714906262589406024755403718444251289022920796627666447956664281223104077321929760232506702562137530797411626743294421215967674547083443402072039744443049774009710630425964071935488579925384600731913023302094346086261164758719239979369652554865762162123467158765749564065452409195913343148225652185418080119686984277881391453946215767957440533926406609103816245991763091019018625963985838337875756686148619703371895689524745359634689046918483677609520600257129761083105479164779232351169663240761767600326503332098696124830214978733105819723313325247231715061412643329354488943082363977605199224041070516267124188633731118696201763991899724805037772101415537745086309687874702012160618112100060354017745413955693970631266178536599486378678350679966014809700587070656302863236708866447901332779365833508970499546203210773741253059370766243735146051161499719861088324810954260177121863980144243101475190777578678393556395704653224990451618535176101887970639872\n", + "569804498053900446986363429812525178812049510807436888502578045841593255332895913328562446208154643859520465013405124275061594823253486588842431935349094166886804144079488886099548019421260851928143870977159850769201463826046604188692172522329517438479958739305109731524324246934317531499128130904818391826686296451304370836160239373968555762782907892431535914881067852813218207632491983526182038037251927971676675751513372297239406743791379049490719269378093836967355219041200514259522166210958329558464702339326481523535200653006664197392249660429957466211639446626650494463430122825286658708977886164727955210398448082141032534248377267462237392403527983799449610075544202831075490172619375749404024321236224200120708035490827911387941262532357073198972757356701359932029619401174141312605726473417732895802665558731667017940999092406421547482506118741532487470292102322999439722176649621908520354243727960288486202950381555157356787112791409306449980903237070352203775941279744\n", + "1139608996107800893972726859625050357624099021614873777005156091683186510665791826657124892416309287719040930026810248550123189646506973177684863870698188333773608288158977772199096038842521703856287741954319701538402927652093208377384345044659034876959917478610219463048648493868635062998256261809636783653372592902608741672320478747937111525565815784863071829762135705626436415264983967052364076074503855943353351503026744594478813487582758098981438538756187673934710438082401028519044332421916659116929404678652963047070401306013328394784499320859914932423278893253300988926860245650573317417955772329455910420796896164282065068496754534924474784807055967598899220151088405662150980345238751498808048642472448400241416070981655822775882525064714146397945514713402719864059238802348282625211452946835465791605331117463334035881998184812843094965012237483064974940584204645998879444353299243817040708487455920576972405900763110314713574225582818612899961806474140704407551882559488\n", + "2279217992215601787945453719250100715248198043229747554010312183366373021331583653314249784832618575438081860053620497100246379293013946355369727741396376667547216576317955544398192077685043407712575483908639403076805855304186416754768690089318069753919834957220438926097296987737270125996512523619273567306745185805217483344640957495874223051131631569726143659524271411252872830529967934104728152149007711886706703006053489188957626975165516197962877077512375347869420876164802057038088664843833318233858809357305926094140802612026656789568998641719829864846557786506601977853720491301146634835911544658911820841593792328564130136993509069848949569614111935197798440302176811324301960690477502997616097284944896800482832141963311645551765050129428292795891029426805439728118477604696565250422905893670931583210662234926668071763996369625686189930024474966129949881168409291997758888706598487634081416974911841153944811801526220629427148451165637225799923612948281408815103765118976\n", + "4558435984431203575890907438500201430496396086459495108020624366732746042663167306628499569665237150876163720107240994200492758586027892710739455482792753335094433152635911088796384155370086815425150967817278806153611710608372833509537380178636139507839669914440877852194593975474540251993025047238547134613490371610434966689281914991748446102263263139452287319048542822505745661059935868209456304298015423773413406012106978377915253950331032395925754155024750695738841752329604114076177329687666636467717618714611852188281605224053313579137997283439659729693115573013203955707440982602293269671823089317823641683187584657128260273987018139697899139228223870395596880604353622648603921380955005995232194569889793600965664283926623291103530100258856585591782058853610879456236955209393130500845811787341863166421324469853336143527992739251372379860048949932259899762336818583995517777413196975268162833949823682307889623603052441258854296902331274451599847225896562817630207530237952\n", + "9116871968862407151781814877000402860992792172918990216041248733465492085326334613256999139330474301752327440214481988400985517172055785421478910965585506670188866305271822177592768310740173630850301935634557612307223421216745667019074760357272279015679339828881755704389187950949080503986050094477094269226980743220869933378563829983496892204526526278904574638097085645011491322119871736418912608596030847546826812024213956755830507900662064791851508310049501391477683504659208228152354659375333272935435237429223704376563210448106627158275994566879319459386231146026407911414881965204586539343646178635647283366375169314256520547974036279395798278456447740791193761208707245297207842761910011990464389139779587201931328567853246582207060200517713171183564117707221758912473910418786261001691623574683726332842648939706672287055985478502744759720097899864519799524673637167991035554826393950536325667899647364615779247206104882517708593804662548903199694451793125635260415060475904\n", + "18233743937724814303563629754000805721985584345837980432082497466930984170652669226513998278660948603504654880428963976801971034344111570842957821931171013340377732610543644355185536621480347261700603871269115224614446842433491334038149520714544558031358679657763511408778375901898161007972100188954188538453961486441739866757127659966993784409053052557809149276194171290022982644239743472837825217192061695093653624048427913511661015801324129583703016620099002782955367009318416456304709318750666545870870474858447408753126420896213254316551989133758638918772462292052815822829763930409173078687292357271294566732750338628513041095948072558791596556912895481582387522417414490594415685523820023980928778279559174403862657135706493164414120401035426342367128235414443517824947820837572522003383247149367452665685297879413344574111970957005489519440195799729039599049347274335982071109652787901072651335799294729231558494412209765035417187609325097806399388903586251270520830120951808\n", + "36467487875449628607127259508001611443971168691675960864164994933861968341305338453027996557321897207009309760857927953603942068688223141685915643862342026680755465221087288710371073242960694523401207742538230449228893684866982668076299041429089116062717359315527022817556751803796322015944200377908377076907922972883479733514255319933987568818106105115618298552388342580045965288479486945675650434384123390187307248096855827023322031602648259167406033240198005565910734018636832912609418637501333091741740949716894817506252841792426508633103978267517277837544924584105631645659527860818346157374584714542589133465500677257026082191896145117583193113825790963164775044834828981188831371047640047961857556559118348807725314271412986328828240802070852684734256470828887035649895641675145044006766494298734905331370595758826689148223941914010979038880391599458079198098694548671964142219305575802145302671598589458463116988824419530070834375218650195612798777807172502541041660241903616\n", + "72934975750899257214254519016003222887942337383351921728329989867723936682610676906055993114643794414018619521715855907207884137376446283371831287724684053361510930442174577420742146485921389046802415485076460898457787369733965336152598082858178232125434718631054045635113503607592644031888400755816754153815845945766959467028510639867975137636212210231236597104776685160091930576958973891351300868768246780374614496193711654046644063205296518334812066480396011131821468037273665825218837275002666183483481899433789635012505683584853017266207956535034555675089849168211263291319055721636692314749169429085178266931001354514052164383792290235166386227651581926329550089669657962377662742095280095923715113118236697615450628542825972657656481604141705369468512941657774071299791283350290088013532988597469810662741191517653378296447883828021958077760783198916158396197389097343928284438611151604290605343197178916926233977648839060141668750437300391225597555614345005082083320483807232\n", + "145869951501798514428509038032006445775884674766703843456659979735447873365221353812111986229287588828037239043431711814415768274752892566743662575449368106723021860884349154841484292971842778093604830970152921796915574739467930672305196165716356464250869437262108091270227007215185288063776801511633508307631691891533918934057021279735950275272424420462473194209553370320183861153917947782702601737536493560749228992387423308093288126410593036669624132960792022263642936074547331650437674550005332366966963798867579270025011367169706034532415913070069111350179698336422526582638111443273384629498338858170356533862002709028104328767584580470332772455303163852659100179339315924755325484190560191847430226236473395230901257085651945315312963208283410738937025883315548142599582566700580176027065977194939621325482383035306756592895767656043916155521566397832316792394778194687856568877222303208581210686394357833852467955297678120283337500874600782451195111228690010164166640967614464\n", + "291739903003597028857018076064012891551769349533407686913319959470895746730442707624223972458575177656074478086863423628831536549505785133487325150898736213446043721768698309682968585943685556187209661940305843593831149478935861344610392331432712928501738874524216182540454014430370576127553603023267016615263383783067837868114042559471900550544848840924946388419106740640367722307835895565405203475072987121498457984774846616186576252821186073339248265921584044527285872149094663300875349100010664733933927597735158540050022734339412069064831826140138222700359396672845053165276222886546769258996677716340713067724005418056208657535169160940665544910606327705318200358678631849510650968381120383694860452472946790461802514171303890630625926416566821477874051766631096285199165133401160352054131954389879242650964766070613513185791535312087832311043132795664633584789556389375713137754444606417162421372788715667704935910595356240566675001749201564902390222457380020328333281935228928\n", + "583479806007194057714036152128025783103538699066815373826639918941791493460885415248447944917150355312148956173726847257663073099011570266974650301797472426892087443537396619365937171887371112374419323880611687187662298957871722689220784662865425857003477749048432365080908028860741152255107206046534033230526767566135675736228085118943801101089697681849892776838213481280735444615671791130810406950145974242996915969549693232373152505642372146678496531843168089054571744298189326601750698200021329467867855195470317080100045468678824138129663652280276445400718793345690106330552445773093538517993355432681426135448010836112417315070338321881331089821212655410636400717357263699021301936762240767389720904945893580923605028342607781261251852833133642955748103533262192570398330266802320704108263908779758485301929532141227026371583070624175664622086265591329267169579112778751426275508889212834324842745577431335409871821190712481133350003498403129804780444914760040656666563870457856\n", + "1166959612014388115428072304256051566207077398133630747653279837883582986921770830496895889834300710624297912347453694515326146198023140533949300603594944853784174887074793238731874343774742224748838647761223374375324597915743445378441569325730851714006955498096864730161816057721482304510214412093068066461053535132271351472456170237887602202179395363699785553676426962561470889231343582261620813900291948485993831939099386464746305011284744293356993063686336178109143488596378653203501396400042658935735710390940634160200090937357648276259327304560552890801437586691380212661104891546187077035986710865362852270896021672224834630140676643762662179642425310821272801434714527398042603873524481534779441809891787161847210056685215562522503705666267285911496207066524385140796660533604641408216527817559516970603859064282454052743166141248351329244172531182658534339158225557502852551017778425668649685491154862670819743642381424962266700006996806259609560889829520081313333127740915712\n", + "2333919224028776230856144608512103132414154796267261495306559675767165973843541660993791779668601421248595824694907389030652292396046281067898601207189889707568349774149586477463748687549484449497677295522446748750649195831486890756883138651461703428013910996193729460323632115442964609020428824186136132922107070264542702944912340475775204404358790727399571107352853925122941778462687164523241627800583896971987663878198772929492610022569488586713986127372672356218286977192757306407002792800085317871471420781881268320400181874715296552518654609121105781602875173382760425322209783092374154071973421730725704541792043344449669260281353287525324359284850621642545602869429054796085207747048963069558883619783574323694420113370431125045007411332534571822992414133048770281593321067209282816433055635119033941207718128564908105486332282496702658488345062365317068678316451115005705102035556851337299370982309725341639487284762849924533400013993612519219121779659040162626666255481831424\n", + "4667838448057552461712289217024206264828309592534522990613119351534331947687083321987583559337202842497191649389814778061304584792092562135797202414379779415136699548299172954927497375098968898995354591044893497501298391662973781513766277302923406856027821992387458920647264230885929218040857648372272265844214140529085405889824680951550408808717581454799142214705707850245883556925374329046483255601167793943975327756397545858985220045138977173427972254745344712436573954385514612814005585600170635742942841563762536640800363749430593105037309218242211563205750346765520850644419566184748308143946843461451409083584086688899338520562706575050648718569701243285091205738858109592170415494097926139117767239567148647388840226740862250090014822665069143645984828266097540563186642134418565632866111270238067882415436257129816210972664564993405316976690124730634137356632902230011410204071113702674598741964619450683278974569525699849066800027987225038438243559318080325253332510963662848\n", + "9335676896115104923424578434048412529656619185069045981226238703068663895374166643975167118674405684994383298779629556122609169584185124271594404828759558830273399096598345909854994750197937797990709182089786995002596783325947563027532554605846813712055643984774917841294528461771858436081715296744544531688428281058170811779649361903100817617435162909598284429411415700491767113850748658092966511202335587887950655512795091717970440090277954346855944509490689424873147908771029225628011171200341271485885683127525073281600727498861186210074618436484423126411500693531041701288839132369496616287893686922902818167168173377798677041125413150101297437139402486570182411477716219184340830988195852278235534479134297294777680453481724500180029645330138287291969656532195081126373284268837131265732222540476135764830872514259632421945329129986810633953380249461268274713265804460022820408142227405349197483929238901366557949139051399698133600055974450076876487118636160650506665021927325696\n", + "18671353792230209846849156868096825059313238370138091962452477406137327790748333287950334237348811369988766597559259112245218339168370248543188809657519117660546798193196691819709989500395875595981418364179573990005193566651895126055065109211693627424111287969549835682589056923543716872163430593489089063376856562116341623559298723806201635234870325819196568858822831400983534227701497316185933022404671175775901311025590183435940880180555908693711889018981378849746295817542058451256022342400682542971771366255050146563201454997722372420149236872968846252823001387062083402577678264738993232575787373845805636334336346755597354082250826300202594874278804973140364822955432438368681661976391704556471068958268594589555360906963449000360059290660276574583939313064390162252746568537674262531464445080952271529661745028519264843890658259973621267906760498922536549426531608920045640816284454810698394967858477802733115898278102799396267200111948900153752974237272321301013330043854651392\n", + "37342707584460419693698313736193650118626476740276183924904954812274655581496666575900668474697622739977533195118518224490436678336740497086377619315038235321093596386393383639419979000791751191962836728359147980010387133303790252110130218423387254848222575939099671365178113847087433744326861186978178126753713124232683247118597447612403270469740651638393137717645662801967068455402994632371866044809342351551802622051180366871881760361111817387423778037962757699492591635084116902512044684801365085943542732510100293126402909995444744840298473745937692505646002774124166805155356529477986465151574747691611272668672693511194708164501652600405189748557609946280729645910864876737363323952783409112942137916537189179110721813926898000720118581320553149167878626128780324505493137075348525062928890161904543059323490057038529687781316519947242535813520997845073098853063217840091281632568909621396789935716955605466231796556205598792534400223897800307505948474544642602026660087709302784\n", + "74685415168920839387396627472387300237252953480552367849809909624549311162993333151801336949395245479955066390237036448980873356673480994172755238630076470642187192772786767278839958001583502383925673456718295960020774266607580504220260436846774509696445151878199342730356227694174867488653722373956356253507426248465366494237194895224806540939481303276786275435291325603934136910805989264743732089618684703103605244102360733743763520722223634774847556075925515398985183270168233805024089369602730171887085465020200586252805819990889489680596947491875385011292005548248333610310713058955972930303149495383222545337345387022389416329003305200810379497115219892561459291821729753474726647905566818225884275833074378358221443627853796001440237162641106298335757252257560649010986274150697050125857780323809086118646980114077059375562633039894485071627041995690146197706126435680182563265137819242793579871433911210932463593112411197585068800447795600615011896949089285204053320175418605568\n", + "149370830337841678774793254944774600474505906961104735699619819249098622325986666303602673898790490959910132780474072897961746713346961988345510477260152941284374385545573534557679916003167004767851346913436591920041548533215161008440520873693549019392890303756398685460712455388349734977307444747912712507014852496930732988474389790449613081878962606553572550870582651207868273821611978529487464179237369406207210488204721467487527041444447269549695112151851030797970366540336467610048178739205460343774170930040401172505611639981778979361193894983750770022584011096496667220621426117911945860606298990766445090674690774044778832658006610401620758994230439785122918583643459506949453295811133636451768551666148756716442887255707592002880474325282212596671514504515121298021972548301394100251715560647618172237293960228154118751125266079788970143254083991380292395412252871360365126530275638485587159742867822421864927186224822395170137600895591201230023793898178570408106640350837211136\n", + "298741660675683357549586509889549200949011813922209471399239638498197244651973332607205347797580981919820265560948145795923493426693923976691020954520305882568748771091147069115359832006334009535702693826873183840083097066430322016881041747387098038785780607512797370921424910776699469954614889495825425014029704993861465976948779580899226163757925213107145101741165302415736547643223957058974928358474738812414420976409442934975054082888894539099390224303702061595940733080672935220096357478410920687548341860080802345011223279963557958722387789967501540045168022192993334441242852235823891721212597981532890181349381548089557665316013220803241517988460879570245837167286919013898906591622267272903537103332297513432885774511415184005760948650564425193343029009030242596043945096602788200503431121295236344474587920456308237502250532159577940286508167982760584790824505742720730253060551276971174319485735644843729854372449644790340275201791182402460047587796357140816213280701674422272\n", + "597483321351366715099173019779098401898023627844418942798479276996394489303946665214410695595161963839640531121896291591846986853387847953382041909040611765137497542182294138230719664012668019071405387653746367680166194132860644033762083494774196077571561215025594741842849821553398939909229778991650850028059409987722931953897559161798452327515850426214290203482330604831473095286447914117949856716949477624828841952818885869950108165777789078198780448607404123191881466161345870440192714956821841375096683720161604690022446559927115917444775579935003080090336044385986668882485704471647783442425195963065780362698763096179115330632026441606483035976921759140491674334573838027797813183244534545807074206664595026865771549022830368011521897301128850386686058018060485192087890193205576401006862242590472688949175840912616475004501064319155880573016335965521169581649011485441460506121102553942348638971471289687459708744899289580680550403582364804920095175592714281632426561403348844544\n", + "1194966642702733430198346039558196803796047255688837885596958553992788978607893330428821391190323927679281062243792583183693973706775695906764083818081223530274995084364588276461439328025336038142810775307492735360332388265721288067524166989548392155143122430051189483685699643106797879818459557983301700056118819975445863907795118323596904655031700852428580406964661209662946190572895828235899713433898955249657683905637771739900216331555578156397560897214808246383762932322691740880385429913643682750193367440323209380044893119854231834889551159870006160180672088771973337764971408943295566884850391926131560725397526192358230661264052883212966071953843518280983348669147676055595626366489069091614148413329190053731543098045660736023043794602257700773372116036120970384175780386411152802013724485180945377898351681825232950009002128638311761146032671931042339163298022970882921012242205107884697277942942579374919417489798579161361100807164729609840190351185428563264853122806697689088\n", + "2389933285405466860396692079116393607592094511377675771193917107985577957215786660857642782380647855358562124487585166367387947413551391813528167636162447060549990168729176552922878656050672076285621550614985470720664776531442576135048333979096784310286244860102378967371399286213595759636919115966603400112237639950891727815590236647193809310063401704857160813929322419325892381145791656471799426867797910499315367811275543479800432663111156312795121794429616492767525864645383481760770859827287365500386734880646418760089786239708463669779102319740012320361344177543946675529942817886591133769700783852263121450795052384716461322528105766425932143907687036561966697338295352111191252732978138183228296826658380107463086196091321472046087589204515401546744232072241940768351560772822305604027448970361890755796703363650465900018004257276623522292065343862084678326596045941765842024484410215769394555885885158749838834979597158322722201614329459219680380702370857126529706245613395378176\n", + "4779866570810933720793384158232787215184189022755351542387834215971155914431573321715285564761295710717124248975170332734775894827102783627056335272324894121099980337458353105845757312101344152571243101229970941441329553062885152270096667958193568620572489720204757934742798572427191519273838231933206800224475279901783455631180473294387618620126803409714321627858644838651784762291583312943598853735595820998630735622551086959600865326222312625590243588859232985535051729290766963521541719654574731000773469761292837520179572479416927339558204639480024640722688355087893351059885635773182267539401567704526242901590104769432922645056211532851864287815374073123933394676590704222382505465956276366456593653316760214926172392182642944092175178409030803093488464144483881536703121545644611208054897940723781511593406727300931800036008514553247044584130687724169356653192091883531684048968820431538789111771770317499677669959194316645444403228658918439360761404741714253059412491226790756352\n", + "9559733141621867441586768316465574430368378045510703084775668431942311828863146643430571129522591421434248497950340665469551789654205567254112670544649788242199960674916706211691514624202688305142486202459941882882659106125770304540193335916387137241144979440409515869485597144854383038547676463866413600448950559803566911262360946588775237240253606819428643255717289677303569524583166625887197707471191641997261471245102173919201730652444625251180487177718465971070103458581533927043083439309149462001546939522585675040359144958833854679116409278960049281445376710175786702119771271546364535078803135409052485803180209538865845290112423065703728575630748146247866789353181408444765010931912552732913187306633520429852344784365285888184350356818061606186976928288967763073406243091289222416109795881447563023186813454601863600072017029106494089168261375448338713306384183767063368097937640863077578223543540634999355339918388633290888806457317836878721522809483428506118824982453581512704\n", + "19119466283243734883173536632931148860736756091021406169551336863884623657726293286861142259045182842868496995900681330939103579308411134508225341089299576484399921349833412423383029248405376610284972404919883765765318212251540609080386671832774274482289958880819031738971194289708766077095352927732827200897901119607133822524721893177550474480507213638857286511434579354607139049166333251774395414942383283994522942490204347838403461304889250502360974355436931942140206917163067854086166878618298924003093879045171350080718289917667709358232818557920098562890753420351573404239542543092729070157606270818104971606360419077731690580224846131407457151261496292495733578706362816889530021863825105465826374613267040859704689568730571776368700713636123212373953856577935526146812486182578444832219591762895126046373626909203727200144034058212988178336522750896677426612768367534126736195875281726155156447087081269998710679836777266581777612914635673757443045618966857012237649964907163025408\n", + "38238932566487469766347073265862297721473512182042812339102673727769247315452586573722284518090365685736993991801362661878207158616822269016450682178599152968799842699666824846766058496810753220569944809839767531530636424503081218160773343665548548964579917761638063477942388579417532154190705855465654401795802239214267645049443786355100948961014427277714573022869158709214278098332666503548790829884766567989045884980408695676806922609778501004721948710873863884280413834326135708172333757236597848006187758090342700161436579835335418716465637115840197125781506840703146808479085086185458140315212541636209943212720838155463381160449692262814914302522992584991467157412725633779060043727650210931652749226534081719409379137461143552737401427272246424747907713155871052293624972365156889664439183525790252092747253818407454400288068116425976356673045501793354853225536735068253472391750563452310312894174162539997421359673554533163555225829271347514886091237933714024475299929814326050816\n", + "76477865132974939532694146531724595442947024364085624678205347455538494630905173147444569036180731371473987983602725323756414317233644538032901364357198305937599685399333649693532116993621506441139889619679535063061272849006162436321546687331097097929159835523276126955884777158835064308381411710931308803591604478428535290098887572710201897922028854555429146045738317418428556196665333007097581659769533135978091769960817391353613845219557002009443897421747727768560827668652271416344667514473195696012375516180685400322873159670670837432931274231680394251563013681406293616958170172370916280630425083272419886425441676310926762320899384525629828605045985169982934314825451267558120087455300421863305498453068163438818758274922287105474802854544492849495815426311742104587249944730313779328878367051580504185494507636814908800576136232851952713346091003586709706451073470136506944783501126904620625788348325079994842719347109066327110451658542695029772182475867428048950599859628652101632\n", + "152955730265949879065388293063449190885894048728171249356410694911076989261810346294889138072361462742947975967205450647512828634467289076065802728714396611875199370798667299387064233987243012882279779239359070126122545698012324872643093374662194195858319671046552253911769554317670128616762823421862617607183208956857070580197775145420403795844057709110858292091476634836857112393330666014195163319539066271956183539921634782707227690439114004018887794843495455537121655337304542832689335028946391392024751032361370800645746319341341674865862548463360788503126027362812587233916340344741832561260850166544839772850883352621853524641798769051259657210091970339965868629650902535116240174910600843726610996906136326877637516549844574210949605709088985698991630852623484209174499889460627558657756734103161008370989015273629817601152272465703905426692182007173419412902146940273013889567002253809241251576696650159989685438694218132654220903317085390059544364951734856097901199719257304203264\n", + "305911460531899758130776586126898381771788097456342498712821389822153978523620692589778276144722925485895951934410901295025657268934578152131605457428793223750398741597334598774128467974486025764559558478718140252245091396024649745286186749324388391716639342093104507823539108635340257233525646843725235214366417913714141160395550290840807591688115418221716584182953269673714224786661332028390326639078132543912367079843269565414455380878228008037775589686990911074243310674609085665378670057892782784049502064722741601291492638682683349731725096926721577006252054725625174467832680689483665122521700333089679545701766705243707049283597538102519314420183940679931737259301805070232480349821201687453221993812272653755275033099689148421899211418177971397983261705246968418348999778921255117315513468206322016741978030547259635202304544931407810853384364014346838825804293880546027779134004507618482503153393300319979370877388436265308441806634170780119088729903469712195802399438514608406528\n", + "611822921063799516261553172253796763543576194912684997425642779644307957047241385179556552289445850971791903868821802590051314537869156304263210914857586447500797483194669197548256935948972051529119116957436280504490182792049299490572373498648776783433278684186209015647078217270680514467051293687450470428732835827428282320791100581681615183376230836443433168365906539347428449573322664056780653278156265087824734159686539130828910761756456016075551179373981822148486621349218171330757340115785565568099004129445483202582985277365366699463450193853443154012504109451250348935665361378967330245043400666179359091403533410487414098567195076205038628840367881359863474518603610140464960699642403374906443987624545307510550066199378296843798422836355942795966523410493936836697999557842510234631026936412644033483956061094519270404609089862815621706768728028693677651608587761092055558268009015236965006306786600639958741754776872530616883613268341560238177459806939424391604798877029216813056\n", + "1223645842127599032523106344507593527087152389825369994851285559288615914094482770359113104578891701943583807737643605180102629075738312608526421829715172895001594966389338395096513871897944103058238233914872561008980365584098598981144746997297553566866557368372418031294156434541361028934102587374900940857465671654856564641582201163363230366752461672886866336731813078694856899146645328113561306556312530175649468319373078261657821523512912032151102358747963644296973242698436342661514680231571131136198008258890966405165970554730733398926900387706886308025008218902500697871330722757934660490086801332358718182807066820974828197134390152410077257680735762719726949037207220280929921399284806749812887975249090615021100132398756593687596845672711885591933046820987873673395999115685020469262053872825288066967912122189038540809218179725631243413537456057387355303217175522184111116536018030473930012613573201279917483509553745061233767226536683120476354919613878848783209597754058433626112\n", + "2447291684255198065046212689015187054174304779650739989702571118577231828188965540718226209157783403887167615475287210360205258151476625217052843659430345790003189932778676790193027743795888206116476467829745122017960731168197197962289493994595107133733114736744836062588312869082722057868205174749801881714931343309713129283164402326726460733504923345773732673463626157389713798293290656227122613112625060351298936638746156523315643047025824064302204717495927288593946485396872685323029360463142262272396016517781932810331941109461466797853800775413772616050016437805001395742661445515869320980173602664717436365614133641949656394268780304820154515361471525439453898074414440561859842798569613499625775950498181230042200264797513187375193691345423771183866093641975747346791998231370040938524107745650576133935824244378077081618436359451262486827074912114774710606434351044368222233072036060947860025227146402559834967019107490122467534453073366240952709839227757697566419195508116867252224\n", + "4894583368510396130092425378030374108348609559301479979405142237154463656377931081436452418315566807774335230950574420720410516302953250434105687318860691580006379865557353580386055487591776412232952935659490244035921462336394395924578987989190214267466229473489672125176625738165444115736410349499603763429862686619426258566328804653452921467009846691547465346927252314779427596586581312454245226225250120702597873277492313046631286094051648128604409434991854577187892970793745370646058720926284524544792033035563865620663882218922933595707601550827545232100032875610002791485322891031738641960347205329434872731228267283899312788537560609640309030722943050878907796148828881123719685597139226999251551900996362460084400529595026374750387382690847542367732187283951494693583996462740081877048215491301152267871648488756154163236872718902524973654149824229549421212868702088736444466144072121895720050454292805119669934038214980244935068906146732481905419678455515395132838391016233734504448\n", + "9789166737020792260184850756060748216697219118602959958810284474308927312755862162872904836631133615548670461901148841440821032605906500868211374637721383160012759731114707160772110975183552824465905871318980488071842924672788791849157975978380428534932458946979344250353251476330888231472820698999207526859725373238852517132657609306905842934019693383094930693854504629558855193173162624908490452450500241405195746554984626093262572188103296257208818869983709154375785941587490741292117441852569049089584066071127731241327764437845867191415203101655090464200065751220005582970645782063477283920694410658869745462456534567798625577075121219280618061445886101757815592297657762247439371194278453998503103801992724920168801059190052749500774765381695084735464374567902989387167992925480163754096430982602304535743296977512308326473745437805049947308299648459098842425737404177472888932288144243791440100908585610239339868076429960489870137812293464963810839356911030790265676782032467469008896\n", + "19578333474041584520369701512121496433394438237205919917620568948617854625511724325745809673262267231097340923802297682881642065211813001736422749275442766320025519462229414321544221950367105648931811742637960976143685849345577583698315951956760857069864917893958688500706502952661776462945641397998415053719450746477705034265315218613811685868039386766189861387709009259117710386346325249816980904901000482810391493109969252186525144376206592514417637739967418308751571883174981482584234883705138098179168132142255462482655528875691734382830406203310180928400131502440011165941291564126954567841388821317739490924913069135597251154150242438561236122891772203515631184595315524494878742388556907997006207603985449840337602118380105499001549530763390169470928749135805978774335985850960327508192861965204609071486593955024616652947490875610099894616599296918197684851474808354945777864576288487582880201817171220478679736152859920979740275624586929927621678713822061580531353564064934938017792\n", + "39156666948083169040739403024242992866788876474411839835241137897235709251023448651491619346524534462194681847604595365763284130423626003472845498550885532640051038924458828643088443900734211297863623485275921952287371698691155167396631903913521714139729835787917377001413005905323552925891282795996830107438901492955410068530630437227623371736078773532379722775418018518235420772692650499633961809802000965620782986219938504373050288752413185028835275479934836617503143766349962965168469767410276196358336264284510924965311057751383468765660812406620361856800263004880022331882583128253909135682777642635478981849826138271194502308300484877122472245783544407031262369190631048989757484777113815994012415207970899680675204236760210998003099061526780338941857498271611957548671971701920655016385723930409218142973187910049233305894981751220199789233198593836395369702949616709891555729152576975165760403634342440957359472305719841959480551249173859855243357427644123161062707128129869876035584\n", + "78313333896166338081478806048485985733577752948823679670482275794471418502046897302983238693049068924389363695209190731526568260847252006945690997101771065280102077848917657286176887801468422595727246970551843904574743397382310334793263807827043428279459671575834754002826011810647105851782565591993660214877802985910820137061260874455246743472157547064759445550836037036470841545385300999267923619604001931241565972439877008746100577504826370057670550959869673235006287532699925930336939534820552392716672528569021849930622115502766937531321624813240723713600526009760044663765166256507818271365555285270957963699652276542389004616600969754244944491567088814062524738381262097979514969554227631988024830415941799361350408473520421996006198123053560677883714996543223915097343943403841310032771447860818436285946375820098466611789963502440399578466397187672790739405899233419783111458305153950331520807268684881914718944611439683918961102498347719710486714855288246322125414256259739752071168\n", + "156626667792332676162957612096971971467155505897647359340964551588942837004093794605966477386098137848778727390418381463053136521694504013891381994203542130560204155697835314572353775602936845191454493941103687809149486794764620669586527615654086856558919343151669508005652023621294211703565131183987320429755605971821640274122521748910493486944315094129518891101672074072941683090770601998535847239208003862483131944879754017492201155009652740115341101919739346470012575065399851860673879069641104785433345057138043699861244231005533875062643249626481447427201052019520089327530332513015636542731110570541915927399304553084778009233201939508489888983134177628125049476762524195959029939108455263976049660831883598722700816947040843992012396246107121355767429993086447830194687886807682620065542895721636872571892751640196933223579927004880799156932794375345581478811798466839566222916610307900663041614537369763829437889222879367837922204996695439420973429710576492644250828512519479504142336\n", + "313253335584665352325915224193943942934311011795294718681929103177885674008187589211932954772196275697557454780836762926106273043389008027782763988407084261120408311395670629144707551205873690382908987882207375618298973589529241339173055231308173713117838686303339016011304047242588423407130262367974640859511211943643280548245043497820986973888630188259037782203344148145883366181541203997071694478416007724966263889759508034984402310019305480230682203839478692940025150130799703721347758139282209570866690114276087399722488462011067750125286499252962894854402104039040178655060665026031273085462221141083831854798609106169556018466403879016979777966268355256250098953525048391918059878216910527952099321663767197445401633894081687984024792492214242711534859986172895660389375773615365240131085791443273745143785503280393866447159854009761598313865588750691162957623596933679132445833220615801326083229074739527658875778445758735675844409993390878841946859421152985288501657025038959008284672\n", + "626506671169330704651830448387887885868622023590589437363858206355771348016375178423865909544392551395114909561673525852212546086778016055565527976814168522240816622791341258289415102411747380765817975764414751236597947179058482678346110462616347426235677372606678032022608094485176846814260524735949281719022423887286561096490086995641973947777260376518075564406688296291766732363082407994143388956832015449932527779519016069968804620038610960461364407678957385880050300261599407442695516278564419141733380228552174799444976924022135500250572998505925789708804208078080357310121330052062546170924442282167663709597218212339112036932807758033959555932536710512500197907050096783836119756433821055904198643327534394890803267788163375968049584984428485423069719972345791320778751547230730480262171582886547490287571006560787732894319708019523196627731177501382325915247193867358264891666441231602652166458149479055317751556891517471351688819986781757683893718842305970577003314050077918016569344\n", + "1253013342338661409303660896775775771737244047181178874727716412711542696032750356847731819088785102790229819123347051704425092173556032111131055953628337044481633245582682516578830204823494761531635951528829502473195894358116965356692220925232694852471354745213356064045216188970353693628521049471898563438044847774573122192980173991283947895554520753036151128813376592583533464726164815988286777913664030899865055559038032139937609240077221920922728815357914771760100600523198814885391032557128838283466760457104349598889953848044271000501145997011851579417608416156160714620242660104125092341848884564335327419194436424678224073865615516067919111865073421025000395814100193567672239512867642111808397286655068789781606535576326751936099169968856970846139439944691582641557503094461460960524343165773094980575142013121575465788639416039046393255462355002764651830494387734716529783332882463205304332916298958110635503113783034942703377639973563515367787437684611941154006628100155836033138688\n", + "2506026684677322818607321793551551543474488094362357749455432825423085392065500713695463638177570205580459638246694103408850184347112064222262111907256674088963266491165365033157660409646989523063271903057659004946391788716233930713384441850465389704942709490426712128090432377940707387257042098943797126876089695549146244385960347982567895791109041506072302257626753185167066929452329631976573555827328061799730111118076064279875218480154443841845457630715829543520201201046397629770782065114257676566933520914208699197779907696088542001002291994023703158835216832312321429240485320208250184683697769128670654838388872849356448147731231032135838223730146842050000791628200387135344479025735284223616794573310137579563213071152653503872198339937713941692278879889383165283115006188922921921048686331546189961150284026243150931577278832078092786510924710005529303660988775469433059566665764926410608665832597916221271006227566069885406755279947127030735574875369223882308013256200311672066277376\n", + "5012053369354645637214643587103103086948976188724715498910865650846170784131001427390927276355140411160919276493388206817700368694224128444524223814513348177926532982330730066315320819293979046126543806115318009892783577432467861426768883700930779409885418980853424256180864755881414774514084197887594253752179391098292488771920695965135791582218083012144604515253506370334133858904659263953147111654656123599460222236152128559750436960308887683690915261431659087040402402092795259541564130228515353133867041828417398395559815392177084002004583988047406317670433664624642858480970640416500369367395538257341309676777745698712896295462462064271676447460293684100001583256400774270688958051470568447233589146620275159126426142305307007744396679875427883384557759778766330566230012377845843842097372663092379922300568052486301863154557664156185573021849420011058607321977550938866119133331529852821217331665195832442542012455132139770813510559894254061471149750738447764616026512400623344132554752\n", + "10024106738709291274429287174206206173897952377449430997821731301692341568262002854781854552710280822321838552986776413635400737388448256889048447629026696355853065964661460132630641638587958092253087612230636019785567154864935722853537767401861558819770837961706848512361729511762829549028168395775188507504358782196584977543841391930271583164436166024289209030507012740668267717809318527906294223309312247198920444472304257119500873920617775367381830522863318174080804804185590519083128260457030706267734083656834796791119630784354168004009167976094812635340867329249285716961941280833000738734791076514682619353555491397425792590924924128543352894920587368200003166512801548541377916102941136894467178293240550318252852284610614015488793359750855766769115519557532661132460024755691687684194745326184759844601136104972603726309115328312371146043698840022117214643955101877732238266663059705642434663330391664885084024910264279541627021119788508122942299501476895529232053024801246688265109504\n", + "20048213477418582548858574348412412347795904754898861995643462603384683136524005709563709105420561644643677105973552827270801474776896513778096895258053392711706131929322920265261283277175916184506175224461272039571134309729871445707075534803723117639541675923413697024723459023525659098056336791550377015008717564393169955087682783860543166328872332048578418061014025481336535435618637055812588446618624494397840888944608514239001747841235550734763661045726636348161609608371181038166256520914061412535468167313669593582239261568708336008018335952189625270681734658498571433923882561666001477469582153029365238707110982794851585181849848257086705789841174736400006333025603097082755832205882273788934356586481100636505704569221228030977586719501711533538231039115065322264920049511383375368389490652369519689202272209945207452618230656624742292087397680044234429287910203755464476533326119411284869326660783329770168049820528559083254042239577016245884599002953791058464106049602493376530219008\n", + "40096426954837165097717148696824824695591809509797723991286925206769366273048011419127418210841123289287354211947105654541602949553793027556193790516106785423412263858645840530522566554351832369012350448922544079142268619459742891414151069607446235279083351846827394049446918047051318196112673583100754030017435128786339910175365567721086332657744664097156836122028050962673070871237274111625176893237248988795681777889217028478003495682471101469527322091453272696323219216742362076332513041828122825070936334627339187164478523137416672016036671904379250541363469316997142867847765123332002954939164306058730477414221965589703170363699696514173411579682349472800012666051206194165511664411764547577868713172962201273011409138442456061955173439003423067076462078230130644529840099022766750736778981304739039378404544419890414905236461313249484584174795360088468858575820407510928953066652238822569738653321566659540336099641057118166508084479154032491769198005907582116928212099204986753060438016\n", + "80192853909674330195434297393649649391183619019595447982573850413538732546096022838254836421682246578574708423894211309083205899107586055112387581032213570846824527717291681061045133108703664738024700897845088158284537238919485782828302139214892470558166703693654788098893836094102636392225347166201508060034870257572679820350731135442172665315489328194313672244056101925346141742474548223250353786474497977591363555778434056956006991364942202939054644182906545392646438433484724152665026083656245650141872669254678374328957046274833344032073343808758501082726938633994285735695530246664005909878328612117460954828443931179406340727399393028346823159364698945600025332102412388331023328823529095155737426345924402546022818276884912123910346878006846134152924156460261289059680198045533501473557962609478078756809088839780829810472922626498969168349590720176937717151640815021857906133304477645139477306643133319080672199282114236333016168958308064983538396011815164233856424198409973506120876032\n", + "160385707819348660390868594787299298782367238039190895965147700827077465092192045676509672843364493157149416847788422618166411798215172110224775162064427141693649055434583362122090266217407329476049401795690176316569074477838971565656604278429784941116333407387309576197787672188205272784450694332403016120069740515145359640701462270884345330630978656388627344488112203850692283484949096446500707572948995955182727111556868113912013982729884405878109288365813090785292876866969448305330052167312491300283745338509356748657914092549666688064146687617517002165453877267988571471391060493328011819756657224234921909656887862358812681454798786056693646318729397891200050664204824776662046657647058190311474852691848805092045636553769824247820693756013692268305848312920522578119360396091067002947115925218956157513618177679561659620945845252997938336699181440353875434303281630043715812266608955290278954613286266638161344398564228472666032337916616129967076792023630328467712848396819947012241752064\n", + "320771415638697320781737189574598597564734476078381791930295401654154930184384091353019345686728986314298833695576845236332823596430344220449550324128854283387298110869166724244180532434814658952098803591380352633138148955677943131313208556859569882232666814774619152395575344376410545568901388664806032240139481030290719281402924541768690661261957312777254688976224407701384566969898192893001415145897991910365454223113736227824027965459768811756218576731626181570585753733938896610660104334624982600567490677018713497315828185099333376128293375235034004330907754535977142942782120986656023639513314448469843819313775724717625362909597572113387292637458795782400101328409649553324093315294116380622949705383697610184091273107539648495641387512027384536611696625841045156238720792182134005894231850437912315027236355359123319241891690505995876673398362880707750868606563260087431624533217910580557909226572533276322688797128456945332064675833232259934153584047260656935425696793639894024483504128\n", + "641542831277394641563474379149197195129468952156763583860590803308309860368768182706038691373457972628597667391153690472665647192860688440899100648257708566774596221738333448488361064869629317904197607182760705266276297911355886262626417113719139764465333629549238304791150688752821091137802777329612064480278962060581438562805849083537381322523914625554509377952448815402769133939796385786002830291795983820730908446227472455648055930919537623512437153463252363141171507467877793221320208669249965201134981354037426994631656370198666752256586750470068008661815509071954285885564241973312047279026628896939687638627551449435250725819195144226774585274917591564800202656819299106648186630588232761245899410767395220368182546215079296991282775024054769073223393251682090312477441584364268011788463700875824630054472710718246638483783381011991753346796725761415501737213126520174863249066435821161115818453145066552645377594256913890664129351666464519868307168094521313870851393587279788048967008256\n", + "1283085662554789283126948758298394390258937904313527167721181606616619720737536365412077382746915945257195334782307380945331294385721376881798201296515417133549192443476666896976722129739258635808395214365521410532552595822711772525252834227438279528930667259098476609582301377505642182275605554659224128960557924121162877125611698167074762645047829251109018755904897630805538267879592771572005660583591967641461816892454944911296111861839075247024874306926504726282343014935755586442640417338499930402269962708074853989263312740397333504513173500940136017323631018143908571771128483946624094558053257793879375277255102898870501451638390288453549170549835183129600405313638598213296373261176465522491798821534790440736365092430158593982565550048109538146446786503364180624954883168728536023576927401751649260108945421436493276967566762023983506693593451522831003474426253040349726498132871642322231636906290133105290755188513827781328258703332929039736614336189042627741702787174559576097934016512\n", + "2566171325109578566253897516596788780517875808627054335442363213233239441475072730824154765493831890514390669564614761890662588771442753763596402593030834267098384886953333793953444259478517271616790428731042821065105191645423545050505668454876559057861334518196953219164602755011284364551211109318448257921115848242325754251223396334149525290095658502218037511809795261611076535759185543144011321167183935282923633784909889822592223723678150494049748613853009452564686029871511172885280834676999860804539925416149707978526625480794667009026347001880272034647262036287817143542256967893248189116106515587758750554510205797741002903276780576907098341099670366259200810627277196426592746522352931044983597643069580881472730184860317187965131100096219076292893573006728361249909766337457072047153854803503298520217890842872986553935133524047967013387186903045662006948852506080699452996265743284644463273812580266210581510377027655562656517406665858079473228672378085255483405574349119152195868033024\n", + "5132342650219157132507795033193577561035751617254108670884726426466478882950145461648309530987663781028781339129229523781325177542885507527192805186061668534196769773906667587906888518957034543233580857462085642130210383290847090101011336909753118115722669036393906438329205510022568729102422218636896515842231696484651508502446792668299050580191317004436075023619590523222153071518371086288022642334367870565847267569819779645184447447356300988099497227706018905129372059743022345770561669353999721609079850832299415957053250961589334018052694003760544069294524072575634287084513935786496378232213031175517501109020411595482005806553561153814196682199340732518401621254554392853185493044705862089967195286139161762945460369720634375930262200192438152585787146013456722499819532674914144094307709607006597040435781685745973107870267048095934026774373806091324013897705012161398905992531486569288926547625160532421163020754055311125313034813331716158946457344756170510966811148698238304391736066048\n", + "10264685300438314265015590066387155122071503234508217341769452852932957765900290923296619061975327562057562678258459047562650355085771015054385610372123337068393539547813335175813777037914069086467161714924171284260420766581694180202022673819506236231445338072787812876658411020045137458204844437273793031684463392969303017004893585336598101160382634008872150047239181046444306143036742172576045284668735741131694535139639559290368894894712601976198994455412037810258744119486044691541123338707999443218159701664598831914106501923178668036105388007521088138589048145151268574169027871572992756464426062351035002218040823190964011613107122307628393364398681465036803242509108785706370986089411724179934390572278323525890920739441268751860524400384876305171574292026913444999639065349828288188615419214013194080871563371491946215740534096191868053548747612182648027795410024322797811985062973138577853095250321064842326041508110622250626069626663432317892914689512341021933622297396476608783472132096\n", + "20529370600876628530031180132774310244143006469016434683538905705865915531800581846593238123950655124115125356516918095125300710171542030108771220744246674136787079095626670351627554075828138172934323429848342568520841533163388360404045347639012472462890676145575625753316822040090274916409688874547586063368926785938606034009787170673196202320765268017744300094478362092888612286073484345152090569337471482263389070279279118580737789789425203952397988910824075620517488238972089383082246677415998886436319403329197663828213003846357336072210776015042176277178096290302537148338055743145985512928852124702070004436081646381928023226214244615256786728797362930073606485018217571412741972178823448359868781144556647051781841478882537503721048800769752610343148584053826889999278130699656576377230838428026388161743126742983892431481068192383736107097495224365296055590820048645595623970125946277155706190500642129684652083016221244501252139253326864635785829379024682043867244594792953217566944264192\n", + "41058741201753257060062360265548620488286012938032869367077811411731831063601163693186476247901310248230250713033836190250601420343084060217542441488493348273574158191253340703255108151656276345868646859696685137041683066326776720808090695278024944925781352291151251506633644080180549832819377749095172126737853571877212068019574341346392404641530536035488600188956724185777224572146968690304181138674942964526778140558558237161475579578850407904795977821648151241034976477944178766164493354831997772872638806658395327656426007692714672144421552030084352554356192580605074296676111486291971025857704249404140008872163292763856046452428489230513573457594725860147212970036435142825483944357646896719737562289113294103563682957765075007442097601539505220686297168107653779998556261399313152754461676856052776323486253485967784862962136384767472214194990448730592111181640097291191247940251892554311412381001284259369304166032442489002504278506653729271571658758049364087734489189585906435133888528384\n", + "82117482403506514120124720531097240976572025876065738734155622823463662127202327386372952495802620496460501426067672380501202840686168120435084882976986696547148316382506681406510216303312552691737293719393370274083366132653553441616181390556049889851562704582302503013267288160361099665638755498190344253475707143754424136039148682692784809283061072070977200377913448371554449144293937380608362277349885929053556281117116474322951159157700815809591955643296302482069952955888357532328986709663995545745277613316790655312852015385429344288843104060168705108712385161210148593352222972583942051715408498808280017744326585527712092904856978461027146915189451720294425940072870285650967888715293793439475124578226588207127365915530150014884195203079010441372594336215307559997112522798626305508923353712105552646972506971935569725924272769534944428389980897461184222363280194582382495880503785108622824762002568518738608332064884978005008557013307458543143317516098728175468978379171812870267777056768\n", + "164234964807013028240249441062194481953144051752131477468311245646927324254404654772745904991605240992921002852135344761002405681372336240870169765953973393094296632765013362813020432606625105383474587438786740548166732265307106883232362781112099779703125409164605006026534576320722199331277510996380688506951414287508848272078297365385569618566122144141954400755826896743108898288587874761216724554699771858107112562234232948645902318315401631619183911286592604964139905911776715064657973419327991091490555226633581310625704030770858688577686208120337410217424770322420297186704445945167884103430816997616560035488653171055424185809713956922054293830378903440588851880145740571301935777430587586878950249156453176414254731831060300029768390406158020882745188672430615119994225045597252611017846707424211105293945013943871139451848545539069888856779961794922368444726560389164764991761007570217245649524005137037477216664129769956010017114026614917086286635032197456350937956758343625740535554113536\n", + "328469929614026056480498882124388963906288103504262954936622491293854648508809309545491809983210481985842005704270689522004811362744672481740339531907946786188593265530026725626040865213250210766949174877573481096333464530614213766464725562224199559406250818329210012053069152641444398662555021992761377013902828575017696544156594730771139237132244288283908801511653793486217796577175749522433449109399543716214225124468465897291804636630803263238367822573185209928279811823553430129315946838655982182981110453267162621251408061541717377155372416240674820434849540644840594373408891890335768206861633995233120070977306342110848371619427913844108587660757806881177703760291481142603871554861175173757900498312906352828509463662120600059536780812316041765490377344861230239988450091194505222035693414848422210587890027887742278903697091078139777713559923589844736889453120778329529983522015140434491299048010274074954433328259539912020034228053229834172573270064394912701875913516687251481071108227072\n", + "656939859228052112960997764248777927812576207008525909873244982587709297017618619090983619966420963971684011408541379044009622725489344963480679063815893572377186531060053451252081730426500421533898349755146962192666929061228427532929451124448399118812501636658420024106138305282888797325110043985522754027805657150035393088313189461542278474264488576567817603023307586972435593154351499044866898218799087432428450248936931794583609273261606526476735645146370419856559623647106860258631893677311964365962220906534325242502816123083434754310744832481349640869699081289681188746817783780671536413723267990466240141954612684221696743238855827688217175321515613762355407520582962285207743109722350347515800996625812705657018927324241200119073561624632083530980754689722460479976900182389010444071386829696844421175780055775484557807394182156279555427119847179689473778906241556659059967044030280868982598096020548149908866656519079824040068456106459668345146540128789825403751827033374502962142216454144\n", + "1313879718456104225921995528497555855625152414017051819746489965175418594035237238181967239932841927943368022817082758088019245450978689926961358127631787144754373062120106902504163460853000843067796699510293924385333858122456855065858902248896798237625003273316840048212276610565777594650220087971045508055611314300070786176626378923084556948528977153135635206046615173944871186308702998089733796437598174864856900497873863589167218546523213052953471290292740839713119247294213720517263787354623928731924441813068650485005632246166869508621489664962699281739398162579362377493635567561343072827446535980932480283909225368443393486477711655376434350643031227524710815041165924570415486219444700695031601993251625411314037854648482400238147123249264167061961509379444920959953800364778020888142773659393688842351560111550969115614788364312559110854239694359378947557812483113318119934088060561737965196192041096299817733313038159648080136912212919336690293080257579650807503654066749005924284432908288\n", + "2627759436912208451843991056995111711250304828034103639492979930350837188070474476363934479865683855886736045634165516176038490901957379853922716255263574289508746124240213805008326921706001686135593399020587848770667716244913710131717804497793596475250006546633680096424553221131555189300440175942091016111222628600141572353252757846169113897057954306271270412093230347889742372617405996179467592875196349729713800995747727178334437093046426105906942580585481679426238494588427441034527574709247857463848883626137300970011264492333739017242979329925398563478796325158724754987271135122686145654893071961864960567818450736886786972955423310752868701286062455049421630082331849140830972438889401390063203986503250822628075709296964800476294246498528334123923018758889841919907600729556041776285547318787377684703120223101938231229576728625118221708479388718757895115624966226636239868176121123475930392384082192599635466626076319296160273824425838673380586160515159301615007308133498011848568865816576\n", + "5255518873824416903687982113990223422500609656068207278985959860701674376140948952727868959731367711773472091268331032352076981803914759707845432510527148579017492248480427610016653843412003372271186798041175697541335432489827420263435608995587192950500013093267360192849106442263110378600880351884182032222445257200283144706505515692338227794115908612542540824186460695779484745234811992358935185750392699459427601991495454356668874186092852211813885161170963358852476989176854882069055149418495714927697767252274601940022528984667478034485958659850797126957592650317449509974542270245372291309786143923729921135636901473773573945910846621505737402572124910098843260164663698281661944877778802780126407973006501645256151418593929600952588492997056668247846037517779683839815201459112083552571094637574755369406240446203876462459153457250236443416958777437515790231249932453272479736352242246951860784768164385199270933252152638592320547648851677346761172321030318603230014616266996023697137731633152\n", + "10511037747648833807375964227980446845001219312136414557971919721403348752281897905455737919462735423546944182536662064704153963607829519415690865021054297158034984496960855220033307686824006744542373596082351395082670864979654840526871217991174385901000026186534720385698212884526220757201760703768364064444890514400566289413011031384676455588231817225085081648372921391558969490469623984717870371500785398918855203982990908713337748372185704423627770322341926717704953978353709764138110298836991429855395534504549203880045057969334956068971917319701594253915185300634899019949084540490744582619572287847459842271273802947547147891821693243011474805144249820197686520329327396563323889755557605560252815946013003290512302837187859201905176985994113336495692075035559367679630402918224167105142189275149510738812480892407752924918306914500472886833917554875031580462499864906544959472704484493903721569536328770398541866504305277184641095297703354693522344642060637206460029232533992047394275463266304\n", + "21022075495297667614751928455960893690002438624272829115943839442806697504563795810911475838925470847093888365073324129408307927215659038831381730042108594316069968993921710440066615373648013489084747192164702790165341729959309681053742435982348771802000052373069440771396425769052441514403521407536728128889781028801132578826022062769352911176463634450170163296745842783117938980939247969435740743001570797837710407965981817426675496744371408847255540644683853435409907956707419528276220597673982859710791069009098407760090115938669912137943834639403188507830370601269798039898169080981489165239144575694919684542547605895094295783643386486022949610288499640395373040658654793126647779511115211120505631892026006581024605674375718403810353971988226672991384150071118735359260805836448334210284378550299021477624961784815505849836613829000945773667835109750063160924999729813089918945408968987807443139072657540797083733008610554369282190595406709387044689284121274412920058465067984094788550926532608\n", + "42044150990595335229503856911921787380004877248545658231887678885613395009127591621822951677850941694187776730146648258816615854431318077662763460084217188632139937987843420880133230747296026978169494384329405580330683459918619362107484871964697543604000104746138881542792851538104883028807042815073456257779562057602265157652044125538705822352927268900340326593491685566235877961878495938871481486003141595675420815931963634853350993488742817694511081289367706870819815913414839056552441195347965719421582138018196815520180231877339824275887669278806377015660741202539596079796338161962978330478289151389839369085095211790188591567286772972045899220576999280790746081317309586253295559022230422241011263784052013162049211348751436807620707943976453345982768300142237470718521611672896668420568757100598042955249923569631011699673227658001891547335670219500126321849999459626179837890817937975614886278145315081594167466017221108738564381190813418774089378568242548825840116930135968189577101853065216\n", + "84088301981190670459007713823843574760009754497091316463775357771226790018255183243645903355701883388375553460293296517633231708862636155325526920168434377264279875975686841760266461494592053956338988768658811160661366919837238724214969743929395087208000209492277763085585703076209766057614085630146912515559124115204530315304088251077411644705854537800680653186983371132471755923756991877742962972006283191350841631863927269706701986977485635389022162578735413741639631826829678113104882390695931438843164276036393631040360463754679648551775338557612754031321482405079192159592676323925956660956578302779678738170190423580377183134573545944091798441153998561581492162634619172506591118044460844482022527568104026324098422697502873615241415887952906691965536600284474941437043223345793336841137514201196085910499847139262023399346455316003783094671340439000252643699998919252359675781635875951229772556290630163188334932034442217477128762381626837548178757136485097651680233860271936379154203706130432\n", + "168176603962381340918015427647687149520019508994182632927550715542453580036510366487291806711403766776751106920586593035266463417725272310651053840336868754528559751951373683520532922989184107912677977537317622321322733839674477448429939487858790174416000418984555526171171406152419532115228171260293825031118248230409060630608176502154823289411709075601361306373966742264943511847513983755485925944012566382701683263727854539413403973954971270778044325157470827483279263653659356226209764781391862877686328552072787262080720927509359297103550677115225508062642964810158384319185352647851913321913156605559357476340380847160754366269147091888183596882307997123162984325269238345013182236088921688964045055136208052648196845395005747230482831775905813383931073200568949882874086446691586673682275028402392171820999694278524046798692910632007566189342680878000505287399997838504719351563271751902459545112581260326376669864068884434954257524763253675096357514272970195303360467720543872758308407412260864\n", + "336353207924762681836030855295374299040039017988365265855101431084907160073020732974583613422807533553502213841173186070532926835450544621302107680673737509057119503902747367041065845978368215825355955074635244642645467679348954896859878975717580348832000837969111052342342812304839064230456342520587650062236496460818121261216353004309646578823418151202722612747933484529887023695027967510971851888025132765403366527455709078826807947909942541556088650314941654966558527307318712452419529562783725755372657104145574524161441855018718594207101354230451016125285929620316768638370705295703826643826313211118714952680761694321508732538294183776367193764615994246325968650538476690026364472177843377928090110272416105296393690790011494460965663551811626767862146401137899765748172893383173347364550056804784343641999388557048093597385821264015132378685361756001010574799995677009438703126543503804919090225162520652753339728137768869908515049526507350192715028545940390606720935441087745516616814824521728\n", + "672706415849525363672061710590748598080078035976730531710202862169814320146041465949167226845615067107004427682346372141065853670901089242604215361347475018114239007805494734082131691956736431650711910149270489285290935358697909793719757951435160697664001675938222104684685624609678128460912685041175300124472992921636242522432706008619293157646836302405445225495866969059774047390055935021943703776050265530806733054911418157653615895819885083112177300629883309933117054614637424904839059125567451510745314208291149048322883710037437188414202708460902032250571859240633537276741410591407653287652626422237429905361523388643017465076588367552734387529231988492651937301076953380052728944355686755856180220544832210592787381580022988921931327103623253535724292802275799531496345786766346694729100113609568687283998777114096187194771642528030264757370723512002021149599991354018877406253087007609838180450325041305506679456275537739817030099053014700385430057091880781213441870882175491033233629649043456\n", + "1345412831699050727344123421181497196160156071953461063420405724339628640292082931898334453691230134214008855364692744282131707341802178485208430722694950036228478015610989468164263383913472863301423820298540978570581870717395819587439515902870321395328003351876444209369371249219356256921825370082350600248945985843272485044865412017238586315293672604810890450991733938119548094780111870043887407552100531061613466109822836315307231791639770166224354601259766619866234109229274849809678118251134903021490628416582298096645767420074874376828405416921804064501143718481267074553482821182815306575305252844474859810723046777286034930153176735105468775058463976985303874602153906760105457888711373511712360441089664421185574763160045977843862654207246507071448585604551599062992691573532693389458200227219137374567997554228192374389543285056060529514741447024004042299199982708037754812506174015219676360900650082611013358912551075479634060198106029400770860114183761562426883741764350982066467259298086912\n", + "2690825663398101454688246842362994392320312143906922126840811448679257280584165863796668907382460268428017710729385488564263414683604356970416861445389900072456956031221978936328526767826945726602847640597081957141163741434791639174879031805740642790656006703752888418738742498438712513843650740164701200497891971686544970089730824034477172630587345209621780901983467876239096189560223740087774815104201062123226932219645672630614463583279540332448709202519533239732468218458549699619356236502269806042981256833164596193291534840149748753656810833843608129002287436962534149106965642365630613150610505688949719621446093554572069860306353470210937550116927953970607749204307813520210915777422747023424720882179328842371149526320091955687725308414493014142897171209103198125985383147065386778916400454438274749135995108456384748779086570112121059029482894048008084598399965416075509625012348030439352721801300165222026717825102150959268120396212058801541720228367523124853767483528701964132934518596173824\n", + "5381651326796202909376493684725988784640624287813844253681622897358514561168331727593337814764920536856035421458770977128526829367208713940833722890779800144913912062443957872657053535653891453205695281194163914282327482869583278349758063611481285581312013407505776837477484996877425027687301480329402400995783943373089940179461648068954345261174690419243561803966935752478192379120447480175549630208402124246453864439291345261228927166559080664897418405039066479464936436917099399238712473004539612085962513666329192386583069680299497507313621667687216258004574873925068298213931284731261226301221011377899439242892187109144139720612706940421875100233855907941215498408615627040421831554845494046849441764358657684742299052640183911375450616828986028285794342418206396251970766294130773557832800908876549498271990216912769497558173140224242118058965788096016169196799930832151019250024696060878705443602600330444053435650204301918536240792424117603083440456735046249707534967057403928265869037192347648\n", + "10763302653592405818752987369451977569281248575627688507363245794717029122336663455186675629529841073712070842917541954257053658734417427881667445781559600289827824124887915745314107071307782906411390562388327828564654965739166556699516127222962571162624026815011553674954969993754850055374602960658804801991567886746179880358923296137908690522349380838487123607933871504956384758240894960351099260416804248492907728878582690522457854333118161329794836810078132958929872873834198798477424946009079224171925027332658384773166139360598995014627243335374432516009149747850136596427862569462522452602442022755798878485784374218288279441225413880843750200467711815882430996817231254080843663109690988093698883528717315369484598105280367822750901233657972056571588684836412792503941532588261547115665601817753098996543980433825538995116346280448484236117931576192032338393599861664302038500049392121757410887205200660888106871300408603837072481584848235206166880913470092499415069934114807856531738074384695296\n", + "21526605307184811637505974738903955138562497151255377014726491589434058244673326910373351259059682147424141685835083908514107317468834855763334891563119200579655648249775831490628214142615565812822781124776655657129309931478333113399032254445925142325248053630023107349909939987509700110749205921317609603983135773492359760717846592275817381044698761676974247215867743009912769516481789920702198520833608496985815457757165381044915708666236322659589673620156265917859745747668397596954849892018158448343850054665316769546332278721197990029254486670748865032018299495700273192855725138925044905204884045511597756971568748436576558882450827761687500400935423631764861993634462508161687326219381976187397767057434630738969196210560735645501802467315944113143177369672825585007883065176523094231331203635506197993087960867651077990232692560896968472235863152384064676787199723328604077000098784243514821774410401321776213742600817207674144963169696470412333761826940184998830139868229615713063476148769390592\n", + "43053210614369623275011949477807910277124994302510754029452983178868116489346653820746702518119364294848283371670167817028214634937669711526669783126238401159311296499551662981256428285231131625645562249553311314258619862956666226798064508891850284650496107260046214699819879975019400221498411842635219207966271546984719521435693184551634762089397523353948494431735486019825539032963579841404397041667216993971630915514330762089831417332472645319179347240312531835719491495336795193909699784036316896687700109330633539092664557442395980058508973341497730064036598991400546385711450277850089810409768091023195513943137496873153117764901655523375000801870847263529723987268925016323374652438763952374795534114869261477938392421121471291003604934631888226286354739345651170015766130353046188462662407271012395986175921735302155980465385121793936944471726304768129353574399446657208154000197568487029643548820802643552427485201634415348289926339392940824667523653880369997660279736459231426126952297538781184\n", + "86106421228739246550023898955615820554249988605021508058905966357736232978693307641493405036238728589696566743340335634056429269875339423053339566252476802318622592999103325962512856570462263251291124499106622628517239725913332453596129017783700569300992214520092429399639759950038800442996823685270438415932543093969439042871386369103269524178795046707896988863470972039651078065927159682808794083334433987943261831028661524179662834664945290638358694480625063671438982990673590387819399568072633793375400218661267078185329114884791960117017946682995460128073197982801092771422900555700179620819536182046391027886274993746306235529803311046750001603741694527059447974537850032646749304877527904749591068229738522955876784842242942582007209869263776452572709478691302340031532260706092376925324814542024791972351843470604311960930770243587873888943452609536258707148798893314416308000395136974059287097641605287104854970403268830696579852678785881649335047307760739995320559472918462852253904595077562368\n", + "172212842457478493100047797911231641108499977210043016117811932715472465957386615282986810072477457179393133486680671268112858539750678846106679132504953604637245185998206651925025713140924526502582248998213245257034479451826664907192258035567401138601984429040184858799279519900077600885993647370540876831865086187938878085742772738206539048357590093415793977726941944079302156131854319365617588166668867975886523662057323048359325669329890581276717388961250127342877965981347180775638799136145267586750800437322534156370658229769583920234035893365990920256146395965602185542845801111400359241639072364092782055772549987492612471059606622093500003207483389054118895949075700065293498609755055809499182136459477045911753569684485885164014419738527552905145418957382604680063064521412184753850649629084049583944703686941208623921861540487175747777886905219072517414297597786628832616000790273948118574195283210574209709940806537661393159705357571763298670094615521479990641118945836925704507809190155124736\n", + "344425684914956986200095595822463282216999954420086032235623865430944931914773230565973620144954914358786266973361342536225717079501357692213358265009907209274490371996413303850051426281849053005164497996426490514068958903653329814384516071134802277203968858080369717598559039800155201771987294741081753663730172375877756171485545476413078096715180186831587955453883888158604312263708638731235176333337735951773047324114646096718651338659781162553434777922500254685755931962694361551277598272290535173501600874645068312741316459539167840468071786731981840512292791931204371085691602222800718483278144728185564111545099974985224942119213244187000006414966778108237791898151400130586997219510111618998364272918954091823507139368971770328028839477055105810290837914765209360126129042824369507701299258168099167889407373882417247843723080974351495555773810438145034828595195573257665232001580547896237148390566421148419419881613075322786319410715143526597340189231042959981282237891673851409015618380310249472\n", + "688851369829913972400191191644926564433999908840172064471247730861889863829546461131947240289909828717572533946722685072451434159002715384426716530019814418548980743992826607700102852563698106010328995992852981028137917807306659628769032142269604554407937716160739435197118079600310403543974589482163507327460344751755512342971090952826156193430360373663175910907767776317208624527417277462470352666675471903546094648229292193437302677319562325106869555845000509371511863925388723102555196544581070347003201749290136625482632919078335680936143573463963681024585583862408742171383204445601436966556289456371128223090199949970449884238426488374000012829933556216475583796302800261173994439020223237996728545837908183647014278737943540656057678954110211620581675829530418720252258085648739015402598516336198335778814747764834495687446161948702991111547620876290069657190391146515330464003161095792474296781132842296838839763226150645572638821430287053194680378462085919962564475783347702818031236760620498944\n", + "1377702739659827944800382383289853128867999817680344128942495461723779727659092922263894480579819657435145067893445370144902868318005430768853433060039628837097961487985653215400205705127396212020657991985705962056275835614613319257538064284539209108815875432321478870394236159200620807087949178964327014654920689503511024685942181905652312386860720747326351821815535552634417249054834554924940705333350943807092189296458584386874605354639124650213739111690001018743023727850777446205110393089162140694006403498580273250965265838156671361872287146927927362049171167724817484342766408891202873933112578912742256446180399899940899768476852976748000025659867112432951167592605600522347988878040446475993457091675816367294028557475887081312115357908220423241163351659060837440504516171297478030805197032672396671557629495529668991374892323897405982223095241752580139314380782293030660928006322191584948593562265684593677679526452301291145277642860574106389360756924171839925128951566695405636062473521240997888\n", + "2755405479319655889600764766579706257735999635360688257884990923447559455318185844527788961159639314870290135786890740289805736636010861537706866120079257674195922975971306430800411410254792424041315983971411924112551671229226638515076128569078418217631750864642957740788472318401241614175898357928654029309841379007022049371884363811304624773721441494652703643631071105268834498109669109849881410666701887614184378592917168773749210709278249300427478223380002037486047455701554892410220786178324281388012806997160546501930531676313342723744574293855854724098342335449634968685532817782405747866225157825484512892360799799881799536953705953496000051319734224865902335185211201044695977756080892951986914183351632734588057114951774162624230715816440846482326703318121674881009032342594956061610394065344793343115258991059337982749784647794811964446190483505160278628761564586061321856012644383169897187124531369187355359052904602582290555285721148212778721513848343679850257903133390811272124947042481995776\n", + "5510810958639311779201529533159412515471999270721376515769981846895118910636371689055577922319278629740580271573781480579611473272021723075413732240158515348391845951942612861600822820509584848082631967942823848225103342458453277030152257138156836435263501729285915481576944636802483228351796715857308058619682758014044098743768727622609249547442882989305407287262142210537668996219338219699762821333403775228368757185834337547498421418556498600854956446760004074972094911403109784820441572356648562776025613994321093003861063352626685447489148587711709448196684670899269937371065635564811495732450315650969025784721599599763599073907411906992000102639468449731804670370422402089391955512161785903973828366703265469176114229903548325248461431632881692964653406636243349762018064685189912123220788130689586686230517982118675965499569295589623928892380967010320557257523129172122643712025288766339794374249062738374710718105809205164581110571442296425557443027696687359700515806266781622544249894084963991552\n", + "11021621917278623558403059066318825030943998541442753031539963693790237821272743378111155844638557259481160543147562961159222946544043446150827464480317030696783691903885225723201645641019169696165263935885647696450206684916906554060304514276313672870527003458571830963153889273604966456703593431714616117239365516028088197487537455245218499094885765978610814574524284421075337992438676439399525642666807550456737514371668675094996842837112997201709912893520008149944189822806219569640883144713297125552051227988642186007722126705253370894978297175423418896393369341798539874742131271129622991464900631301938051569443199199527198147814823813984000205278936899463609340740844804178783911024323571807947656733406530938352228459807096650496922863265763385929306813272486699524036129370379824246441576261379173372461035964237351930999138591179247857784761934020641114515046258344245287424050577532679588748498125476749421436211618410329162221142884592851114886055393374719401031612533563245088499788169927983104\n", + "22043243834557247116806118132637650061887997082885506063079927387580475642545486756222311689277114518962321086295125922318445893088086892301654928960634061393567383807770451446403291282038339392330527871771295392900413369833813108120609028552627345741054006917143661926307778547209932913407186863429232234478731032056176394975074910490436998189771531957221629149048568842150675984877352878799051285333615100913475028743337350189993685674225994403419825787040016299888379645612439139281766289426594251104102455977284372015444253410506741789956594350846837792786738683597079749484262542259245982929801262603876103138886398399054396295629647627968000410557873798927218681481689608357567822048647143615895313466813061876704456919614193300993845726531526771858613626544973399048072258740759648492883152522758346744922071928474703861998277182358495715569523868041282229030092516688490574848101155065359177496996250953498842872423236820658324442285769185702229772110786749438802063225067126490176999576339855966208\n", + "44086487669114494233612236265275300123775994165771012126159854775160951285090973512444623378554229037924642172590251844636891786176173784603309857921268122787134767615540902892806582564076678784661055743542590785800826739667626216241218057105254691482108013834287323852615557094419865826814373726858464468957462064112352789950149820980873996379543063914443258298097137684301351969754705757598102570667230201826950057486674700379987371348451988806839651574080032599776759291224878278563532578853188502208204911954568744030888506821013483579913188701693675585573477367194159498968525084518491965859602525207752206277772796798108792591259295255936000821115747597854437362963379216715135644097294287231790626933626123753408913839228386601987691453063053543717227253089946798096144517481519296985766305045516693489844143856949407723996554364716991431139047736082564458060185033376981149696202310130718354993992501906997685744846473641316648884571538371404459544221573498877604126450134252980353999152679711932416\n", + "88172975338228988467224472530550600247551988331542024252319709550321902570181947024889246757108458075849284345180503689273783572352347569206619715842536245574269535231081805785613165128153357569322111487085181571601653479335252432482436114210509382964216027668574647705231114188839731653628747453716928937914924128224705579900299641961747992759086127828886516596194275368602703939509411515196205141334460403653900114973349400759974742696903977613679303148160065199553518582449756557127065157706377004416409823909137488061777013642026967159826377403387351171146954734388318997937050169036983931719205050415504412555545593596217585182518590511872001642231495195708874725926758433430271288194588574463581253867252247506817827678456773203975382906126107087434454506179893596192289034963038593971532610091033386979688287713898815447993108729433982862278095472165128916120370066753962299392404620261436709987985003813995371489692947282633297769143076742808919088443146997755208252900268505960707998305359423864832\n", + "176345950676457976934448945061101200495103976663084048504639419100643805140363894049778493514216916151698568690361007378547567144704695138413239431685072491148539070462163611571226330256306715138644222974170363143203306958670504864964872228421018765928432055337149295410462228377679463307257494907433857875829848256449411159800599283923495985518172255657773033192388550737205407879018823030392410282668920807307800229946698801519949485393807955227358606296320130399107037164899513114254130315412754008832819647818274976123554027284053934319652754806774702342293909468776637995874100338073967863438410100831008825111091187192435170365037181023744003284462990391417749451853516866860542576389177148927162507734504495013635655356913546407950765812252214174868909012359787192384578069926077187943065220182066773959376575427797630895986217458867965724556190944330257832240740133507924598784809240522873419975970007627990742979385894565266595538286153485617838176886293995510416505800537011921415996610718847729664\n", + "352691901352915953868897890122202400990207953326168097009278838201287610280727788099556987028433832303397137380722014757095134289409390276826478863370144982297078140924327223142452660512613430277288445948340726286406613917341009729929744456842037531856864110674298590820924456755358926614514989814867715751659696512898822319601198567846991971036344511315546066384777101474410815758037646060784820565337841614615600459893397603039898970787615910454717212592640260798214074329799026228508260630825508017665639295636549952247108054568107868639305509613549404684587818937553275991748200676147935726876820201662017650222182374384870340730074362047488006568925980782835498903707033733721085152778354297854325015469008990027271310713827092815901531624504428349737818024719574384769156139852154375886130440364133547918753150855595261791972434917735931449112381888660515664481480267015849197569618481045746839951940015255981485958771789130533191076572306971235676353772587991020833011601074023842831993221437695459328\n", + "705383802705831907737795780244404801980415906652336194018557676402575220561455576199113974056867664606794274761444029514190268578818780553652957726740289964594156281848654446284905321025226860554576891896681452572813227834682019459859488913684075063713728221348597181641848913510717853229029979629735431503319393025797644639202397135693983942072689022631092132769554202948821631516075292121569641130675683229231200919786795206079797941575231820909434425185280521596428148659598052457016521261651016035331278591273099904494216109136215737278611019227098809369175637875106551983496401352295871453753640403324035300444364748769740681460148724094976013137851961565670997807414067467442170305556708595708650030938017980054542621427654185631803063249008856699475636049439148769538312279704308751772260880728267095837506301711190523583944869835471862898224763777321031328962960534031698395139236962091493679903880030511962971917543578261066382153144613942471352707545175982041666023202148047685663986442875390918656\n", + "1410767605411663815475591560488809603960831813304672388037115352805150441122911152398227948113735329213588549522888059028380537157637561107305915453480579929188312563697308892569810642050453721109153783793362905145626455669364038919718977827368150127427456442697194363283697827021435706458059959259470863006638786051595289278404794271387967884145378045262184265539108405897643263032150584243139282261351366458462401839573590412159595883150463641818868850370561043192856297319196104914033042523302032070662557182546199808988432218272431474557222038454197618738351275750213103966992802704591742907507280806648070600888729497539481362920297448189952026275703923131341995614828134934884340611113417191417300061876035960109085242855308371263606126498017713398951272098878297539076624559408617503544521761456534191675012603422381047167889739670943725796449527554642062657925921068063396790278473924182987359807760061023925943835087156522132764306289227884942705415090351964083332046404296095371327972885750781837312\n", + "2821535210823327630951183120977619207921663626609344776074230705610300882245822304796455896227470658427177099045776118056761074315275122214611830906961159858376625127394617785139621284100907442218307567586725810291252911338728077839437955654736300254854912885394388726567395654042871412916119918518941726013277572103190578556809588542775935768290756090524368531078216811795286526064301168486278564522702732916924803679147180824319191766300927283637737700741122086385712594638392209828066085046604064141325114365092399617976864436544862949114444076908395237476702551500426207933985605409183485815014561613296141201777458995078962725840594896379904052551407846262683991229656269869768681222226834382834600123752071920218170485710616742527212252996035426797902544197756595078153249118817235007089043522913068383350025206844762094335779479341887451592899055109284125315851842136126793580556947848365974719615520122047851887670174313044265528612578455769885410830180703928166664092808592190742655945771501563674624\n", + "5643070421646655261902366241955238415843327253218689552148461411220601764491644609592911792454941316854354198091552236113522148630550244429223661813922319716753250254789235570279242568201814884436615135173451620582505822677456155678875911309472600509709825770788777453134791308085742825832239837037883452026555144206381157113619177085551871536581512181048737062156433623590573052128602336972557129045405465833849607358294361648638383532601854567275475401482244172771425189276784419656132170093208128282650228730184799235953728873089725898228888153816790474953405103000852415867971210818366971630029123226592282403554917990157925451681189792759808105102815692525367982459312539739537362444453668765669200247504143840436340971421233485054424505992070853595805088395513190156306498237634470014178087045826136766700050413689524188671558958683774903185798110218568250631703684272253587161113895696731949439231040244095703775340348626088531057225156911539770821660361407856333328185617184381485311891543003127349248\n", + "11286140843293310523804732483910476831686654506437379104296922822441203528983289219185823584909882633708708396183104472227044297261100488858447323627844639433506500509578471140558485136403629768873230270346903241165011645354912311357751822618945201019419651541577554906269582616171485651664479674075766904053110288412762314227238354171103743073163024362097474124312867247181146104257204673945114258090810931667699214716588723297276767065203709134550950802964488345542850378553568839312264340186416256565300457460369598471907457746179451796457776307633580949906810206001704831735942421636733943260058246453184564807109835980315850903362379585519616210205631385050735964918625079479074724888907337531338400495008287680872681942842466970108849011984141707191610176791026380312612996475268940028356174091652273533400100827379048377343117917367549806371596220437136501263407368544507174322227791393463898878462080488191407550680697252177062114450313823079541643320722815712666656371234368762970623783086006254698496\n", + "22572281686586621047609464967820953663373309012874758208593845644882407057966578438371647169819765267417416792366208944454088594522200977716894647255689278867013001019156942281116970272807259537746460540693806482330023290709824622715503645237890402038839303083155109812539165232342971303328959348151533808106220576825524628454476708342207486146326048724194948248625734494362292208514409347890228516181621863335398429433177446594553534130407418269101901605928976691085700757107137678624528680372832513130600914920739196943814915492358903592915552615267161899813620412003409663471884843273467886520116492906369129614219671960631701806724759171039232420411262770101471929837250158958149449777814675062676800990016575361745363885684933940217698023968283414383220353582052760625225992950537880056712348183304547066800201654758096754686235834735099612743192440874273002526814737089014348644455582786927797756924160976382815101361394504354124228900627646159083286641445631425333312742468737525941247566172012509396992\n", + "45144563373173242095218929935641907326746618025749516417187691289764814115933156876743294339639530534834833584732417888908177189044401955433789294511378557734026002038313884562233940545614519075492921081387612964660046581419649245431007290475780804077678606166310219625078330464685942606657918696303067616212441153651049256908953416684414972292652097448389896497251468988724584417028818695780457032363243726670796858866354893189107068260814836538203803211857953382171401514214275357249057360745665026261201829841478393887629830984717807185831105230534323799627240824006819326943769686546935773040232985812738259228439343921263403613449518342078464840822525540202943859674500317916298899555629350125353601980033150723490727771369867880435396047936566828766440707164105521250451985901075760113424696366609094133600403309516193509372471669470199225486384881748546005053629474178028697288911165573855595513848321952765630202722789008708248457801255292318166573282891262850666625484937475051882495132344025018793984\n", + "90289126746346484190437859871283814653493236051499032834375382579529628231866313753486588679279061069669667169464835777816354378088803910867578589022757115468052004076627769124467881091229038150985842162775225929320093162839298490862014580951561608155357212332620439250156660929371885213315837392606135232424882307302098513817906833368829944585304194896779792994502937977449168834057637391560914064726487453341593717732709786378214136521629673076407606423715906764342803028428550714498114721491330052522403659682956787775259661969435614371662210461068647599254481648013638653887539373093871546080465971625476518456878687842526807226899036684156929681645051080405887719349000635832597799111258700250707203960066301446981455542739735760870792095873133657532881414328211042500903971802151520226849392733218188267200806619032387018744943338940398450972769763497092010107258948356057394577822331147711191027696643905531260405445578017416496915602510584636333146565782525701333250969874950103764990264688050037587968\n", + "180578253492692968380875719742567629306986472102998065668750765159059256463732627506973177358558122139339334338929671555632708756177607821735157178045514230936104008153255538248935762182458076301971684325550451858640186325678596981724029161903123216310714424665240878500313321858743770426631674785212270464849764614604197027635813666737659889170608389793559585989005875954898337668115274783121828129452974906683187435465419572756428273043259346152815212847431813528685606056857101428996229442982660105044807319365913575550519323938871228743324420922137295198508963296027277307775078746187743092160931943250953036913757375685053614453798073368313859363290102160811775438698001271665195598222517400501414407920132602893962911085479471521741584191746267315065762828656422085001807943604303040453698785466436376534401613238064774037489886677880796901945539526994184020214517896712114789155644662295422382055393287811062520810891156034832993831205021169272666293131565051402666501939749900207529980529376100075175936\n", + "361156506985385936761751439485135258613972944205996131337501530318118512927465255013946354717116244278678668677859343111265417512355215643470314356091028461872208016306511076497871524364916152603943368651100903717280372651357193963448058323806246432621428849330481757000626643717487540853263349570424540929699529229208394055271627333475319778341216779587119171978011751909796675336230549566243656258905949813366374870930839145512856546086518692305630425694863627057371212113714202857992458885965320210089614638731827151101038647877742457486648841844274590397017926592054554615550157492375486184321863886501906073827514751370107228907596146736627718726580204321623550877396002543330391196445034801002828815840265205787925822170958943043483168383492534630131525657312844170003615887208606080907397570932872753068803226476129548074979773355761593803891079053988368040429035793424229578311289324590844764110786575622125041621782312069665987662410042338545332586263130102805333003879499800415059961058752200150351872\n", + "722313013970771873523502878970270517227945888411992262675003060636237025854930510027892709434232488557357337355718686222530835024710431286940628712182056923744416032613022152995743048729832305207886737302201807434560745302714387926896116647612492865242857698660963514001253287434975081706526699140849081859399058458416788110543254666950639556682433559174238343956023503819593350672461099132487312517811899626732749741861678291025713092173037384611260851389727254114742424227428405715984917771930640420179229277463654302202077295755484914973297683688549180794035853184109109231100314984750972368643727773003812147655029502740214457815192293473255437453160408643247101754792005086660782392890069602005657631680530411575851644341917886086966336766985069260263051314625688340007231774417212161814795141865745506137606452952259096149959546711523187607782158107976736080858071586848459156622578649181689528221573151244250083243564624139331975324820084677090665172526260205610666007758999600830119922117504400300703744\n", + "1444626027941543747047005757940541034455891776823984525350006121272474051709861020055785418868464977114714674711437372445061670049420862573881257424364113847488832065226044305991486097459664610415773474604403614869121490605428775853792233295224985730485715397321927028002506574869950163413053398281698163718798116916833576221086509333901279113364867118348476687912047007639186701344922198264974625035623799253465499483723356582051426184346074769222521702779454508229484848454856811431969835543861280840358458554927308604404154591510969829946595367377098361588071706368218218462200629969501944737287455546007624295310059005480428915630384586946510874906320817286494203509584010173321564785780139204011315263361060823151703288683835772173932673533970138520526102629251376680014463548834424323629590283731491012275212905904518192299919093423046375215564316215953472161716143173696918313245157298363379056443146302488500166487129248278663950649640169354181330345052520411221332015517999201660239844235008800601407488\n", + "2889252055883087494094011515881082068911783553647969050700012242544948103419722040111570837736929954229429349422874744890123340098841725147762514848728227694977664130452088611982972194919329220831546949208807229738242981210857551707584466590449971460971430794643854056005013149739900326826106796563396327437596233833667152442173018667802558226729734236696953375824094015278373402689844396529949250071247598506930998967446713164102852368692149538445043405558909016458969696909713622863939671087722561680716917109854617208808309183021939659893190734754196723176143412736436436924401259939003889474574911092015248590620118010960857831260769173893021749812641634572988407019168020346643129571560278408022630526722121646303406577367671544347865347067940277041052205258502753360028927097668848647259180567462982024550425811809036384599838186846092750431128632431906944323432286347393836626490314596726758112886292604977000332974258496557327901299280338708362660690105040822442664031035998403320479688470017601202814976\n", + "5778504111766174988188023031762164137823567107295938101400024485089896206839444080223141675473859908458858698845749489780246680197683450295525029697456455389955328260904177223965944389838658441663093898417614459476485962421715103415168933180899942921942861589287708112010026299479800653652213593126792654875192467667334304884346037335605116453459468473393906751648188030556746805379688793059898500142495197013861997934893426328205704737384299076890086811117818032917939393819427245727879342175445123361433834219709234417616618366043879319786381469508393446352286825472872873848802519878007778949149822184030497181240236021921715662521538347786043499625283269145976814038336040693286259143120556816045261053444243292606813154735343088695730694135880554082104410517005506720057854195337697294518361134925964049100851623618072769199676373692185500862257264863813888646864572694787673252980629193453516225772585209954000665948516993114655802598560677416725321380210081644885328062071996806640959376940035202405629952\n", + "11557008223532349976376046063524328275647134214591876202800048970179792413678888160446283350947719816917717397691498979560493360395366900591050059394912910779910656521808354447931888779677316883326187796835228918952971924843430206830337866361799885843885723178575416224020052598959601307304427186253585309750384935334668609768692074671210232906918936946787813503296376061113493610759377586119797000284990394027723995869786852656411409474768598153780173622235636065835878787638854491455758684350890246722867668439418468835233236732087758639572762939016786892704573650945745747697605039756015557898299644368060994362480472043843431325043076695572086999250566538291953628076672081386572518286241113632090522106888486585213626309470686177391461388271761108164208821034011013440115708390675394589036722269851928098201703247236145538399352747384371001724514529727627777293729145389575346505961258386907032451545170419908001331897033986229311605197121354833450642760420163289770656124143993613281918753880070404811259904\n", + "23114016447064699952752092127048656551294268429183752405600097940359584827357776320892566701895439633835434795382997959120986720790733801182100118789825821559821313043616708895863777559354633766652375593670457837905943849686860413660675732723599771687771446357150832448040105197919202614608854372507170619500769870669337219537384149342420465813837873893575627006592752122226987221518755172239594000569980788055447991739573705312822818949537196307560347244471272131671757575277708982911517368701780493445735336878836937670466473464175517279145525878033573785409147301891491495395210079512031115796599288736121988724960944087686862650086153391144173998501133076583907256153344162773145036572482227264181044213776973170427252618941372354782922776543522216328417642068022026880231416781350789178073444539703856196403406494472291076798705494768742003449029059455255554587458290779150693011922516773814064903090340839816002663794067972458623210394242709666901285520840326579541312248287987226563837507760140809622519808\n", + "46228032894129399905504184254097313102588536858367504811200195880719169654715552641785133403790879267670869590765995918241973441581467602364200237579651643119642626087233417791727555118709267533304751187340915675811887699373720827321351465447199543375542892714301664896080210395838405229217708745014341239001539741338674439074768298684840931627675747787151254013185504244453974443037510344479188001139961576110895983479147410625645637899074392615120694488942544263343515150555417965823034737403560986891470673757673875340932946928351034558291051756067147570818294603782982990790420159024062231593198577472243977449921888175373725300172306782288347997002266153167814512306688325546290073144964454528362088427553946340854505237882744709565845553087044432656835284136044053760462833562701578356146889079407712392806812988944582153597410989537484006898058118910511109174916581558301386023845033547628129806180681679632005327588135944917246420788485419333802571041680653159082624496575974453127675015520281619245039616\n", + "92456065788258799811008368508194626205177073716735009622400391761438339309431105283570266807581758535341739181531991836483946883162935204728400475159303286239285252174466835583455110237418535066609502374681831351623775398747441654642702930894399086751085785428603329792160420791676810458435417490028682478003079482677348878149536597369681863255351495574302508026371008488907948886075020688958376002279923152221791966958294821251291275798148785230241388977885088526687030301110835931646069474807121973782941347515347750681865893856702069116582103512134295141636589207565965981580840318048124463186397154944487954899843776350747450600344613564576695994004532306335629024613376651092580146289928909056724176855107892681709010475765489419131691106174088865313670568272088107520925667125403156712293778158815424785613625977889164307194821979074968013796116237821022218349833163116602772047690067095256259612361363359264010655176271889834492841576970838667605142083361306318165248993151948906255350031040563238490079232\n", + "184912131576517599622016737016389252410354147433470019244800783522876678618862210567140533615163517070683478363063983672967893766325870409456800950318606572478570504348933671166910220474837070133219004749363662703247550797494883309285405861788798173502171570857206659584320841583353620916870834980057364956006158965354697756299073194739363726510702991148605016052742016977815897772150041377916752004559846304443583933916589642502582551596297570460482777955770177053374060602221671863292138949614243947565882695030695501363731787713404138233164207024268590283273178415131931963161680636096248926372794309888975909799687552701494901200689227129153391988009064612671258049226753302185160292579857818113448353710215785363418020951530978838263382212348177730627341136544176215041851334250806313424587556317630849571227251955778328614389643958149936027592232475642044436699666326233205544095380134190512519224722726718528021310352543779668985683153941677335210284166722612636330497986303897812510700062081126476980158464\n", + "369824263153035199244033474032778504820708294866940038489601567045753357237724421134281067230327034141366956726127967345935787532651740818913601900637213144957141008697867342333820440949674140266438009498727325406495101594989766618570811723577596347004343141714413319168641683166707241833741669960114729912012317930709395512598146389478727453021405982297210032105484033955631795544300082755833504009119692608887167867833179285005165103192595140920965555911540354106748121204443343726584277899228487895131765390061391002727463575426808276466328414048537180566546356830263863926323361272192497852745588619777951819599375105402989802401378454258306783976018129225342516098453506604370320585159715636226896707420431570726836041903061957676526764424696355461254682273088352430083702668501612626849175112635261699142454503911556657228779287916299872055184464951284088873399332652466411088190760268381025038449445453437056042620705087559337971366307883354670420568333445225272660995972607795625021400124162252953960316928\n", + "739648526306070398488066948065557009641416589733880076979203134091506714475448842268562134460654068282733913452255934691871575065303481637827203801274426289914282017395734684667640881899348280532876018997454650812990203189979533237141623447155192694008686283428826638337283366333414483667483339920229459824024635861418791025196292778957454906042811964594420064210968067911263591088600165511667008018239385217774335735666358570010330206385190281841931111823080708213496242408886687453168555798456975790263530780122782005454927150853616552932656828097074361133092713660527727852646722544384995705491177239555903639198750210805979604802756908516613567952036258450685032196907013208740641170319431272453793414840863141453672083806123915353053528849392710922509364546176704860167405337003225253698350225270523398284909007823113314457558575832599744110368929902568177746798665304932822176381520536762050076898890906874112085241410175118675942732615766709340841136666890450545321991945215591250042800248324505907920633856\n", + "1479297052612140796976133896131114019282833179467760153958406268183013428950897684537124268921308136565467826904511869383743150130606963275654407602548852579828564034791469369335281763798696561065752037994909301625980406379959066474283246894310385388017372566857653276674566732666828967334966679840458919648049271722837582050392585557914909812085623929188840128421936135822527182177200331023334016036478770435548671471332717140020660412770380563683862223646161416426992484817773374906337111596913951580527061560245564010909854301707233105865313656194148722266185427321055455705293445088769991410982354479111807278397500421611959209605513817033227135904072516901370064393814026417481282340638862544907586829681726282907344167612247830706107057698785421845018729092353409720334810674006450507396700450541046796569818015646226628915117151665199488220737859805136355493597330609865644352763041073524100153797781813748224170482820350237351885465231533418681682273333780901090643983890431182500085600496649011815841267712\n", + "2958594105224281593952267792262228038565666358935520307916812536366026857901795369074248537842616273130935653809023738767486300261213926551308815205097705159657128069582938738670563527597393122131504075989818603251960812759918132948566493788620770776034745133715306553349133465333657934669933359680917839296098543445675164100785171115829819624171247858377680256843872271645054364354400662046668032072957540871097342942665434280041320825540761127367724447292322832853984969635546749812674223193827903161054123120491128021819708603414466211730627312388297444532370854642110911410586890177539982821964708958223614556795000843223918419211027634066454271808145033802740128787628052834962564681277725089815173659363452565814688335224495661412214115397570843690037458184706819440669621348012901014793400901082093593139636031292453257830234303330398976441475719610272710987194661219731288705526082147048200307595563627496448340965640700474703770930463066837363364546667561802181287967780862365000171200993298023631682535424\n", + "5917188210448563187904535584524456077131332717871040615833625072732053715803590738148497075685232546261871307618047477534972600522427853102617630410195410319314256139165877477341127055194786244263008151979637206503921625519836265897132987577241541552069490267430613106698266930667315869339866719361835678592197086891350328201570342231659639248342495716755360513687744543290108728708801324093336064145915081742194685885330868560082641651081522254735448894584645665707969939271093499625348446387655806322108246240982256043639417206828932423461254624776594889064741709284221822821173780355079965643929417916447229113590001686447836838422055268132908543616290067605480257575256105669925129362555450179630347318726905131629376670448991322824428230795141687380074916369413638881339242696025802029586801802164187186279272062584906515660468606660797952882951439220545421974389322439462577411052164294096400615191127254992896681931281400949407541860926133674726729093335123604362575935561724730000342401986596047263365070848\n", + "11834376420897126375809071169048912154262665435742081231667250145464107431607181476296994151370465092523742615236094955069945201044855706205235260820390820638628512278331754954682254110389572488526016303959274413007843251039672531794265975154483083104138980534861226213396533861334631738679733438723671357184394173782700656403140684463319278496684991433510721027375489086580217457417602648186672128291830163484389371770661737120165283302163044509470897789169291331415939878542186999250696892775311612644216492481964512087278834413657864846922509249553189778129483418568443645642347560710159931287858835832894458227180003372895673676844110536265817087232580135210960515150512211339850258725110900359260694637453810263258753340897982645648856461590283374760149832738827277762678485392051604059173603604328374372558544125169813031320937213321595905765902878441090843948778644878925154822104328588192801230382254509985793363862562801898815083721852267349453458186670247208725151871123449460000684803973192094526730141696\n", + "23668752841794252751618142338097824308525330871484162463334500290928214863214362952593988302740930185047485230472189910139890402089711412410470521640781641277257024556663509909364508220779144977052032607918548826015686502079345063588531950308966166208277961069722452426793067722669263477359466877447342714368788347565401312806281368926638556993369982867021442054750978173160434914835205296373344256583660326968778743541323474240330566604326089018941795578338582662831879757084373998501393785550623225288432984963929024174557668827315729693845018499106379556258966837136887291284695121420319862575717671665788916454360006745791347353688221072531634174465160270421921030301024422679700517450221800718521389274907620526517506681795965291297712923180566749520299665477654555525356970784103208118347207208656748745117088250339626062641874426643191811531805756882181687897557289757850309644208657176385602460764509019971586727725125603797630167443704534698906916373340494417450303742246898920001369607946384189053460283392\n", + "47337505683588505503236284676195648617050661742968324926669000581856429726428725905187976605481860370094970460944379820279780804179422824820941043281563282554514049113327019818729016441558289954104065215837097652031373004158690127177063900617932332416555922139444904853586135445338526954718933754894685428737576695130802625612562737853277113986739965734042884109501956346320869829670410592746688513167320653937557487082646948480661133208652178037883591156677165325663759514168747997002787571101246450576865969927858048349115337654631459387690036998212759112517933674273774582569390242840639725151435343331577832908720013491582694707376442145063268348930320540843842060602048845359401034900443601437042778549815241053035013363591930582595425846361133499040599330955309111050713941568206416236694414417313497490234176500679252125283748853286383623063611513764363375795114579515700619288417314352771204921529018039943173455450251207595260334887409069397813832746680988834900607484493797840002739215892768378106920566784\n", + "94675011367177011006472569352391297234101323485936649853338001163712859452857451810375953210963720740189940921888759640559561608358845649641882086563126565109028098226654039637458032883116579908208130431674195304062746008317380254354127801235864664833111844278889809707172270890677053909437867509789370857475153390261605251225125475706554227973479931468085768219003912692641739659340821185493377026334641307875114974165293896961322266417304356075767182313354330651327519028337495994005575142202492901153731939855716096698230675309262918775380073996425518225035867348547549165138780485681279450302870686663155665817440026983165389414752884290126536697860641081687684121204097690718802069800887202874085557099630482106070026727183861165190851692722266998081198661910618222101427883136412832473388828834626994980468353001358504250567497706572767246127223027528726751590229159031401238576834628705542409843058036079886346910900502415190520669774818138795627665493361977669801214968987595680005478431785536756213841133568\n", + "189350022734354022012945138704782594468202646971873299706676002327425718905714903620751906421927441480379881843777519281119123216717691299283764173126253130218056196453308079274916065766233159816416260863348390608125492016634760508708255602471729329666223688557779619414344541781354107818875735019578741714950306780523210502450250951413108455946959862936171536438007825385283479318681642370986754052669282615750229948330587793922644532834608712151534364626708661302655038056674991988011150284404985802307463879711432193396461350618525837550760147992851036450071734697095098330277560971362558900605741373326311331634880053966330778829505768580253073395721282163375368242408195381437604139601774405748171114199260964212140053454367722330381703385444533996162397323821236444202855766272825664946777657669253989960936706002717008501134995413145534492254446055057453503180458318062802477153669257411084819686116072159772693821801004830381041339549636277591255330986723955339602429937975191360010956863571073512427682267136\n", + "378700045468708044025890277409565188936405293943746599413352004654851437811429807241503812843854882960759763687555038562238246433435382598567528346252506260436112392906616158549832131532466319632832521726696781216250984033269521017416511204943458659332447377115559238828689083562708215637751470039157483429900613561046421004900501902826216911893919725872343072876015650770566958637363284741973508105338565231500459896661175587845289065669217424303068729253417322605310076113349983976022300568809971604614927759422864386792922701237051675101520295985702072900143469394190196660555121942725117801211482746652622663269760107932661557659011537160506146791442564326750736484816390762875208279203548811496342228398521928424280106908735444660763406770889067992324794647642472888405711532545651329893555315338507979921873412005434017002269990826291068984508892110114907006360916636125604954307338514822169639372232144319545387643602009660762082679099272555182510661973447910679204859875950382720021913727142147024855364534272\n", + "757400090937416088051780554819130377872810587887493198826704009309702875622859614483007625687709765921519527375110077124476492866870765197135056692505012520872224785813232317099664263064932639265665043453393562432501968066539042034833022409886917318664894754231118477657378167125416431275502940078314966859801227122092842009801003805652433823787839451744686145752031301541133917274726569483947016210677130463000919793322351175690578131338434848606137458506834645210620152226699967952044601137619943209229855518845728773585845402474103350203040591971404145800286938788380393321110243885450235602422965493305245326539520215865323115318023074321012293582885128653501472969632781525750416558407097622992684456797043856848560213817470889321526813541778135984649589295284945776811423065091302659787110630677015959843746824010868034004539981652582137969017784220229814012721833272251209908614677029644339278744464288639090775287204019321524165358198545110365021323946895821358409719751900765440043827454284294049710729068544\n", + "1514800181874832176103561109638260755745621175774986397653408018619405751245719228966015251375419531843039054750220154248952985733741530394270113385010025041744449571626464634199328526129865278531330086906787124865003936133078084069666044819773834637329789508462236955314756334250832862551005880156629933719602454244185684019602007611304867647575678903489372291504062603082267834549453138967894032421354260926001839586644702351381156262676869697212274917013669290421240304453399935904089202275239886418459711037691457547171690804948206700406081183942808291600573877576760786642220487770900471204845930986610490653079040431730646230636046148642024587165770257307002945939265563051500833116814195245985368913594087713697120427634941778643053627083556271969299178590569891553622846130182605319574221261354031919687493648021736068009079963305164275938035568440459628025443666544502419817229354059288678557488928577278181550574408038643048330716397090220730042647893791642716819439503801530880087654908568588099421458137088\n", + "3029600363749664352207122219276521511491242351549972795306816037238811502491438457932030502750839063686078109500440308497905971467483060788540226770020050083488899143252929268398657052259730557062660173813574249730007872266156168139332089639547669274659579016924473910629512668501665725102011760313259867439204908488371368039204015222609735295151357806978744583008125206164535669098906277935788064842708521852003679173289404702762312525353739394424549834027338580842480608906799871808178404550479772836919422075382915094343381609896413400812162367885616583201147755153521573284440975541800942409691861973220981306158080863461292461272092297284049174331540514614005891878531126103001666233628390491970737827188175427394240855269883557286107254167112543938598357181139783107245692260365210639148442522708063839374987296043472136018159926610328551876071136880919256050887333089004839634458708118577357114977857154556363101148816077286096661432794180441460085295787583285433638879007603061760175309817137176198842916274176\n", + "6059200727499328704414244438553043022982484703099945590613632074477623004982876915864061005501678127372156219000880616995811942934966121577080453540040100166977798286505858536797314104519461114125320347627148499460015744532312336278664179279095338549319158033848947821259025337003331450204023520626519734878409816976742736078408030445219470590302715613957489166016250412329071338197812555871576129685417043704007358346578809405524625050707478788849099668054677161684961217813599743616356809100959545673838844150765830188686763219792826801624324735771233166402295510307043146568881951083601884819383723946441962612316161726922584922544184594568098348663081029228011783757062252206003332467256780983941475654376350854788481710539767114572214508334225087877196714362279566214491384520730421278296885045416127678749974592086944272036319853220657103752142273761838512101774666178009679268917416237154714229955714309112726202297632154572193322865588360882920170591575166570867277758015206123520350619634274352397685832548352\n", + "12118401454998657408828488877106086045964969406199891181227264148955246009965753831728122011003356254744312438001761233991623885869932243154160907080080200333955596573011717073594628209038922228250640695254296998920031489064624672557328358558190677098638316067697895642518050674006662900408047041253039469756819633953485472156816060890438941180605431227914978332032500824658142676395625111743152259370834087408014716693157618811049250101414957577698199336109354323369922435627199487232713618201919091347677688301531660377373526439585653603248649471542466332804591020614086293137763902167203769638767447892883925224632323453845169845088369189136196697326162058456023567514124504412006664934513561967882951308752701709576963421079534229144429016668450175754393428724559132428982769041460842556593770090832255357499949184173888544072639706441314207504284547523677024203549332356019358537834832474309428459911428618225452404595264309144386645731176721765840341183150333141734555516030412247040701239268548704795371665096704\n", + "24236802909997314817656977754212172091929938812399782362454528297910492019931507663456244022006712509488624876003522467983247771739864486308321814160160400667911193146023434147189256418077844456501281390508593997840062978129249345114656717116381354197276632135395791285036101348013325800816094082506078939513639267906970944313632121780877882361210862455829956664065001649316285352791250223486304518741668174816029433386315237622098500202829915155396398672218708646739844871254398974465427236403838182695355376603063320754747052879171307206497298943084932665609182041228172586275527804334407539277534895785767850449264646907690339690176738378272393394652324116912047135028249008824013329869027123935765902617505403419153926842159068458288858033336900351508786857449118264857965538082921685113187540181664510714999898368347777088145279412882628415008569095047354048407098664712038717075669664948618856919822857236450904809190528618288773291462353443531680682366300666283469111032060824494081402478537097409590743330193408\n", + "48473605819994629635313955508424344183859877624799564724909056595820984039863015326912488044013425018977249752007044935966495543479728972616643628320320801335822386292046868294378512836155688913002562781017187995680125956258498690229313434232762708394553264270791582570072202696026651601632188165012157879027278535813941888627264243561755764722421724911659913328130003298632570705582500446972609037483336349632058866772630475244197000405659830310792797344437417293479689742508797948930854472807676365390710753206126641509494105758342614412994597886169865331218364082456345172551055608668815078555069791571535700898529293815380679380353476756544786789304648233824094270056498017648026659738054247871531805235010806838307853684318136916577716066673800703017573714898236529715931076165843370226375080363329021429999796736695554176290558825765256830017138190094708096814197329424077434151339329897237713839645714472901809618381057236577546582924706887063361364732601332566938222064121648988162804957074194819181486660386816\n", + "96947211639989259270627911016848688367719755249599129449818113191641968079726030653824976088026850037954499504014089871932991086959457945233287256640641602671644772584093736588757025672311377826005125562034375991360251912516997380458626868465525416789106528541583165140144405392053303203264376330024315758054557071627883777254528487123511529444843449823319826656260006597265141411165000893945218074966672699264117733545260950488394000811319660621585594688874834586959379485017595897861708945615352730781421506412253283018988211516685228825989195772339730662436728164912690345102111217337630157110139583143071401797058587630761358760706953513089573578609296467648188540112996035296053319476108495743063610470021613676615707368636273833155432133347601406035147429796473059431862152331686740452750160726658042859999593473391108352581117651530513660034276380189416193628394658848154868302678659794475427679291428945803619236762114473155093165849413774126722729465202665133876444128243297976325609914148389638362973320773632\n", + "193894423279978518541255822033697376735439510499198258899636226383283936159452061307649952176053700075908999008028179743865982173918915890466574513281283205343289545168187473177514051344622755652010251124068751982720503825033994760917253736931050833578213057083166330280288810784106606406528752660048631516109114143255767554509056974247023058889686899646639653312520013194530282822330001787890436149933345398528235467090521900976788001622639321243171189377749669173918758970035191795723417891230705461562843012824506566037976423033370457651978391544679461324873456329825380690204222434675260314220279166286142803594117175261522717521413907026179147157218592935296377080225992070592106638952216991486127220940043227353231414737272547666310864266695202812070294859592946118863724304663373480905500321453316085719999186946782216705162235303061027320068552760378832387256789317696309736605357319588950855358582857891607238473524228946310186331698827548253445458930405330267752888256486595952651219828296779276725946641547264\n", + "387788846559957037082511644067394753470879020998396517799272452766567872318904122615299904352107400151817998016056359487731964347837831780933149026562566410686579090336374946355028102689245511304020502248137503965441007650067989521834507473862101667156426114166332660560577621568213212813057505320097263032218228286511535109018113948494046117779373799293279306625040026389060565644660003575780872299866690797056470934181043801953576003245278642486342378755499338347837517940070383591446835782461410923125686025649013132075952846066740915303956783089358922649746912659650761380408444869350520628440558332572285607188234350523045435042827814052358294314437185870592754160451984141184213277904433982972254441880086454706462829474545095332621728533390405624140589719185892237727448609326746961811000642906632171439998373893564433410324470606122054640137105520757664774513578635392619473210714639177901710717165715783214476947048457892620372663397655096506890917860810660535505776512973191905302439656593558553451893283094528\n", + "775577693119914074165023288134789506941758041996793035598544905533135744637808245230599808704214800303635996032112718975463928695675663561866298053125132821373158180672749892710056205378491022608041004496275007930882015300135979043669014947724203334312852228332665321121155243136426425626115010640194526064436456573023070218036227896988092235558747598586558613250080052778121131289320007151561744599733381594112941868362087603907152006490557284972684757510998676695675035880140767182893671564922821846251372051298026264151905692133481830607913566178717845299493825319301522760816889738701041256881116665144571214376468701046090870085655628104716588628874371741185508320903968282368426555808867965944508883760172909412925658949090190665243457066780811248281179438371784475454897218653493923622001285813264342879996747787128866820648941212244109280274211041515329549027157270785238946421429278355803421434331431566428953894096915785240745326795310193013781835721621321071011553025946383810604879313187117106903786566189056\n", + "1551155386239828148330046576269579013883516083993586071197089811066271489275616490461199617408429600607271992064225437950927857391351327123732596106250265642746316361345499785420112410756982045216082008992550015861764030600271958087338029895448406668625704456665330642242310486272852851252230021280389052128872913146046140436072455793976184471117495197173117226500160105556242262578640014303123489199466763188225883736724175207814304012981114569945369515021997353391350071760281534365787343129845643692502744102596052528303811384266963661215827132357435690598987650638603045521633779477402082513762233330289142428752937402092181740171311256209433177257748743482371016641807936564736853111617735931889017767520345818825851317898180381330486914133561622496562358876743568950909794437306987847244002571626528685759993495574257733641297882424488218560548422083030659098054314541570477892842858556711606842868662863132857907788193831570481490653590620386027563671443242642142023106051892767621209758626374234213807573132378112\n", + "3102310772479656296660093152539158027767032167987172142394179622132542978551232980922399234816859201214543984128450875901855714782702654247465192212500531285492632722690999570840224821513964090432164017985100031723528061200543916174676059790896813337251408913330661284484620972545705702504460042560778104257745826292092280872144911587952368942234990394346234453000320211112484525157280028606246978398933526376451767473448350415628608025962229139890739030043994706782700143520563068731574686259691287385005488205192105056607622768533927322431654264714871381197975301277206091043267558954804165027524466660578284857505874804184363480342622512418866354515497486964742033283615873129473706223235471863778035535040691637651702635796360762660973828267123244993124717753487137901819588874613975694488005143253057371519986991148515467282595764848976437121096844166061318196108629083140955785685717113423213685737325726265715815576387663140962981307181240772055127342886485284284046212103785535242419517252748468427615146264756224\n", + "6204621544959312593320186305078316055534064335974344284788359244265085957102465961844798469633718402429087968256901751803711429565405308494930384425001062570985265445381999141680449643027928180864328035970200063447056122401087832349352119581793626674502817826661322568969241945091411405008920085121556208515491652584184561744289823175904737884469980788692468906000640422224969050314560057212493956797867052752903534946896700831257216051924458279781478060087989413565400287041126137463149372519382574770010976410384210113215245537067854644863308529429742762395950602554412182086535117909608330055048933321156569715011749608368726960685245024837732709030994973929484066567231746258947412446470943727556071070081383275303405271592721525321947656534246489986249435506974275803639177749227951388976010286506114743039973982297030934565191529697952874242193688332122636392217258166281911571371434226846427371474651452531431631152775326281925962614362481544110254685772970568568092424207571070484839034505496936855230292529512448\n", + "12409243089918625186640372610156632111068128671948688569576718488530171914204931923689596939267436804858175936513803503607422859130810616989860768850002125141970530890763998283360899286055856361728656071940400126894112244802175664698704239163587253349005635653322645137938483890182822810017840170243112417030983305168369123488579646351809475768939961577384937812001280844449938100629120114424987913595734105505807069893793401662514432103848916559562956120175978827130800574082252274926298745038765149540021952820768420226430491074135709289726617058859485524791901205108824364173070235819216660110097866642313139430023499216737453921370490049675465418061989947858968133134463492517894824892941887455112142140162766550606810543185443050643895313068492979972498871013948551607278355498455902777952020573012229486079947964594061869130383059395905748484387376664245272784434516332563823142742868453692854742949302905062863262305550652563851925228724963088220509371545941137136184848415142140969678069010993873710460585059024896\n", + "24818486179837250373280745220313264222136257343897377139153436977060343828409863847379193878534873609716351873027607007214845718261621233979721537700004250283941061781527996566721798572111712723457312143880800253788224489604351329397408478327174506698011271306645290275876967780365645620035680340486224834061966610336738246977159292703618951537879923154769875624002561688899876201258240228849975827191468211011614139787586803325028864207697833119125912240351957654261601148164504549852597490077530299080043905641536840452860982148271418579453234117718971049583802410217648728346140471638433320220195733284626278860046998433474907842740980099350930836123979895717936266268926985035789649785883774910224284280325533101213621086370886101287790626136985959944997742027897103214556710996911805555904041146024458972159895929188123738260766118791811496968774753328490545568869032665127646285485736907385709485898605810125726524611101305127703850457449926176441018743091882274272369696830284281939356138021987747420921170118049792\n", + "49636972359674500746561490440626528444272514687794754278306873954120687656819727694758387757069747219432703746055214014429691436523242467959443075400008500567882123563055993133443597144223425446914624287761600507576448979208702658794816956654349013396022542613290580551753935560731291240071360680972449668123933220673476493954318585407237903075759846309539751248005123377799752402516480457699951654382936422023228279575173606650057728415395666238251824480703915308523202296329009099705194980155060598160087811283073680905721964296542837158906468235437942099167604820435297456692280943276866640440391466569252557720093996866949815685481960198701861672247959791435872532537853970071579299571767549820448568560651066202427242172741772202575581252273971919889995484055794206429113421993823611111808082292048917944319791858376247476521532237583622993937549506656981091137738065330255292570971473814771418971797211620251453049222202610255407700914899852352882037486183764548544739393660568563878712276043975494841842340236099584\n", + "99273944719349001493122980881253056888545029375589508556613747908241375313639455389516775514139494438865407492110428028859382873046484935918886150800017001135764247126111986266887194288446850893829248575523201015152897958417405317589633913308698026792045085226581161103507871121462582480142721361944899336247866441346952987908637170814475806151519692619079502496010246755599504805032960915399903308765872844046456559150347213300115456830791332476503648961407830617046404592658018199410389960310121196320175622566147361811443928593085674317812936470875884198335209640870594913384561886553733280880782933138505115440187993733899631370963920397403723344495919582871745065075707940143158599143535099640897137121302132404854484345483544405151162504547943839779990968111588412858226843987647222223616164584097835888639583716752494953043064475167245987875099013313962182275476130660510585141942947629542837943594423240502906098444405220510815401829799704705764074972367529097089478787321137127757424552087950989683684680472199168\n", + "198547889438698002986245961762506113777090058751179017113227495816482750627278910779033551028278988877730814984220856057718765746092969871837772301600034002271528494252223972533774388576893701787658497151046402030305795916834810635179267826617396053584090170453162322207015742242925164960285442723889798672495732882693905975817274341628951612303039385238159004992020493511199009610065921830799806617531745688092913118300694426600230913661582664953007297922815661234092809185316036398820779920620242392640351245132294723622887857186171348635625872941751768396670419281741189826769123773107466561761565866277010230880375987467799262741927840794807446688991839165743490130151415880286317198287070199281794274242604264809708968690967088810302325009095887679559981936223176825716453687975294444447232329168195671777279167433504989906086128950334491975750198026627924364550952261321021170283885895259085675887188846481005812196888810441021630803659599409411528149944735058194178957574642274255514849104175901979367369360944398336\n", + "397095778877396005972491923525012227554180117502358034226454991632965501254557821558067102056557977755461629968441712115437531492185939743675544603200068004543056988504447945067548777153787403575316994302092804060611591833669621270358535653234792107168180340906324644414031484485850329920570885447779597344991465765387811951634548683257903224606078770476318009984040987022398019220131843661599613235063491376185826236601388853200461827323165329906014595845631322468185618370632072797641559841240484785280702490264589447245775714372342697271251745883503536793340838563482379653538247546214933123523131732554020461760751974935598525483855681589614893377983678331486980260302831760572634396574140398563588548485208529619417937381934177620604650018191775359119963872446353651432907375950588888894464658336391343554558334867009979812172257900668983951500396053255848729101904522642042340567771790518171351774377692962011624393777620882043261607319198818823056299889470116388357915149284548511029698208351803958734738721888796672\n", + "794191557754792011944983847050024455108360235004716068452909983265931002509115643116134204113115955510923259936883424230875062984371879487351089206400136009086113977008895890135097554307574807150633988604185608121223183667339242540717071306469584214336360681812649288828062968971700659841141770895559194689982931530775623903269097366515806449212157540952636019968081974044796038440263687323199226470126982752371652473202777706400923654646330659812029191691262644936371236741264145595283119682480969570561404980529178894491551428744685394542503491767007073586681677126964759307076495092429866247046263465108040923521503949871197050967711363179229786755967356662973960520605663521145268793148280797127177096970417059238835874763868355241209300036383550718239927744892707302865814751901177777788929316672782687109116669734019959624344515801337967903000792106511697458203809045284084681135543581036342703548755385924023248787555241764086523214638397637646112599778940232776715830298569097022059396416703607917469477443777593344\n", + "1588383115509584023889967694100048910216720470009432136905819966531862005018231286232268408226231911021846519873766848461750125968743758974702178412800272018172227954017791780270195108615149614301267977208371216242446367334678485081434142612939168428672721363625298577656125937943401319682283541791118389379965863061551247806538194733031612898424315081905272039936163948089592076880527374646398452940253965504743304946405555412801847309292661319624058383382525289872742473482528291190566239364961939141122809961058357788983102857489370789085006983534014147173363354253929518614152990184859732494092526930216081847043007899742394101935422726358459573511934713325947921041211327042290537586296561594254354193940834118477671749527736710482418600072767101436479855489785414605731629503802355555577858633345565374218233339468039919248689031602675935806001584213023394916407618090568169362271087162072685407097510771848046497575110483528173046429276795275292225199557880465553431660597138194044118792833407215834938954887555186688\n", + "3176766231019168047779935388200097820433440940018864273811639933063724010036462572464536816452463822043693039747533696923500251937487517949404356825600544036344455908035583560540390217230299228602535954416742432484892734669356970162868285225878336857345442727250597155312251875886802639364567083582236778759931726123102495613076389466063225796848630163810544079872327896179184153761054749292796905880507931009486609892811110825603694618585322639248116766765050579745484946965056582381132478729923878282245619922116715577966205714978741578170013967068028294346726708507859037228305980369719464988185053860432163694086015799484788203870845452716919147023869426651895842082422654084581075172593123188508708387881668236955343499055473420964837200145534202872959710979570829211463259007604711111155717266691130748436466678936079838497378063205351871612003168426046789832815236181136338724542174324145370814195021543696092995150220967056346092858553590550584450399115760931106863321194276388088237585666814431669877909775110373376\n", + "6353532462038336095559870776400195640866881880037728547623279866127448020072925144929073632904927644087386079495067393847000503874975035898808713651201088072688911816071167121080780434460598457205071908833484864969785469338713940325736570451756673714690885454501194310624503751773605278729134167164473557519863452246204991226152778932126451593697260327621088159744655792358368307522109498585593811761015862018973219785622221651207389237170645278496233533530101159490969893930113164762264957459847756564491239844233431155932411429957483156340027934136056588693453417015718074456611960739438929976370107720864327388172031598969576407741690905433838294047738853303791684164845308169162150345186246377017416775763336473910686998110946841929674400291068405745919421959141658422926518015209422222311434533382261496872933357872159676994756126410703743224006336852093579665630472362272677449084348648290741628390043087392185990300441934112692185717107181101168900798231521862213726642388552776176475171333628863339755819550220746752\n", + "12707064924076672191119741552800391281733763760075457095246559732254896040145850289858147265809855288174772158990134787694001007749950071797617427302402176145377823632142334242161560868921196914410143817666969729939570938677427880651473140903513347429381770909002388621249007503547210557458268334328947115039726904492409982452305557864252903187394520655242176319489311584716736615044218997171187623522031724037946439571244443302414778474341290556992467067060202318981939787860226329524529914919695513128982479688466862311864822859914966312680055868272113177386906834031436148913223921478877859952740215441728654776344063197939152815483381810867676588095477706607583368329690616338324300690372492754034833551526672947821373996221893683859348800582136811491838843918283316845853036030418844444622869066764522993745866715744319353989512252821407486448012673704187159331260944724545354898168697296581483256780086174784371980600883868225384371434214362202337801596463043724427453284777105552352950342667257726679511639100441493504\n", + "25414129848153344382239483105600782563467527520150914190493119464509792080291700579716294531619710576349544317980269575388002015499900143595234854604804352290755647264284668484323121737842393828820287635333939459879141877354855761302946281807026694858763541818004777242498015007094421114916536668657894230079453808984819964904611115728505806374789041310484352638978623169433473230088437994342375247044063448075892879142488886604829556948682581113984934134120404637963879575720452659049059829839391026257964959376933724623729645719829932625360111736544226354773813668062872297826447842957755719905480430883457309552688126395878305630966763621735353176190955413215166736659381232676648601380744985508069667103053345895642747992443787367718697601164273622983677687836566633691706072060837688889245738133529045987491733431488638707979024505642814972896025347408374318662521889449090709796337394593162966513560172349568743961201767736450768742868428724404675603192926087448854906569554211104705900685334515453359023278200882987008\n", + "50828259696306688764478966211201565126935055040301828380986238929019584160583401159432589063239421152699088635960539150776004030999800287190469709209608704581511294528569336968646243475684787657640575270667878919758283754709711522605892563614053389717527083636009554484996030014188842229833073337315788460158907617969639929809222231457011612749578082620968705277957246338866946460176875988684750494088126896151785758284977773209659113897365162227969868268240809275927759151440905318098119659678782052515929918753867449247459291439659865250720223473088452709547627336125744595652895685915511439810960861766914619105376252791756611261933527243470706352381910826430333473318762465353297202761489971016139334206106691791285495984887574735437395202328547245967355375673133267383412144121675377778491476267058091974983466862977277415958049011285629945792050694816748637325043778898181419592674789186325933027120344699137487922403535472901537485736857448809351206385852174897709813139108422209411801370669030906718046556401765974016\n", + "101656519392613377528957932422403130253870110080603656761972477858039168321166802318865178126478842305398177271921078301552008061999600574380939418419217409163022589057138673937292486951369575315281150541335757839516567509419423045211785127228106779435054167272019108969992060028377684459666146674631576920317815235939279859618444462914023225499156165241937410555914492677733892920353751977369500988176253792303571516569955546419318227794730324455939736536481618551855518302881810636196239319357564105031859837507734898494918582879319730501440446946176905419095254672251489191305791371831022879621921723533829238210752505583513222523867054486941412704763821652860666946637524930706594405522979942032278668412213383582570991969775149470874790404657094491934710751346266534766824288243350755556982952534116183949966933725954554831916098022571259891584101389633497274650087557796362839185349578372651866054240689398274975844807070945803074971473714897618702412771704349795419626278216844418823602741338061813436093112803531948032\n", + "203313038785226755057915864844806260507740220161207313523944955716078336642333604637730356252957684610796354543842156603104016123999201148761878836838434818326045178114277347874584973902739150630562301082671515679033135018838846090423570254456213558870108334544038217939984120056755368919332293349263153840635630471878559719236888925828046450998312330483874821111828985355467785840707503954739001976352507584607143033139911092838636455589460648911879473072963237103711036605763621272392478638715128210063719675015469796989837165758639461002880893892353810838190509344502978382611582743662045759243843447067658476421505011167026445047734108973882825409527643305721333893275049861413188811045959884064557336824426767165141983939550298941749580809314188983869421502692533069533648576486701511113965905068232367899933867451909109663832196045142519783168202779266994549300175115592725678370699156745303732108481378796549951689614141891606149942947429795237404825543408699590839252556433688837647205482676123626872186225607063896064\n", + "406626077570453510115831729689612521015480440322414627047889911432156673284667209275460712505915369221592709087684313206208032247998402297523757673676869636652090356228554695749169947805478301261124602165343031358066270037677692180847140508912427117740216669088076435879968240113510737838664586698526307681271260943757119438473777851656092901996624660967749642223657970710935571681415007909478003952705015169214286066279822185677272911178921297823758946145926474207422073211527242544784957277430256420127439350030939593979674331517278922005761787784707621676381018689005956765223165487324091518487686894135316952843010022334052890095468217947765650819055286611442667786550099722826377622091919768129114673648853534330283967879100597883499161618628377967738843005385066139067297152973403022227931810136464735799867734903818219327664392090285039566336405558533989098600350231185451356741398313490607464216962757593099903379228283783212299885894859590474809651086817399181678505112867377675294410965352247253744372451214127792128\n", + "813252155140907020231663459379225042030960880644829254095779822864313346569334418550921425011830738443185418175368626412416064495996804595047515347353739273304180712457109391498339895610956602522249204330686062716132540075355384361694281017824854235480433338176152871759936480227021475677329173397052615362542521887514238876947555703312185803993249321935499284447315941421871143362830015818956007905410030338428572132559644371354545822357842595647517892291852948414844146423054485089569914554860512840254878700061879187959348663034557844011523575569415243352762037378011913530446330974648183036975373788270633905686020044668105780190936435895531301638110573222885335573100199445652755244183839536258229347297707068660567935758201195766998323237256755935477686010770132278134594305946806044455863620272929471599735469807636438655328784180570079132672811117067978197200700462370902713482796626981214928433925515186199806758456567566424599771789719180949619302173634798363357010225734755350588821930704494507488744902428255584256\n", + "1626504310281814040463326918758450084061921761289658508191559645728626693138668837101842850023661476886370836350737252824832128991993609190095030694707478546608361424914218782996679791221913205044498408661372125432265080150710768723388562035649708470960866676352305743519872960454042951354658346794105230725085043775028477753895111406624371607986498643870998568894631882843742286725660031637912015810820060676857144265119288742709091644715685191295035784583705896829688292846108970179139829109721025680509757400123758375918697326069115688023047151138830486705524074756023827060892661949296366073950747576541267811372040089336211560381872871791062603276221146445770671146200398891305510488367679072516458694595414137321135871516402391533996646474513511870955372021540264556269188611893612088911727240545858943199470939615272877310657568361140158265345622234135956394401400924741805426965593253962429856867851030372399613516913135132849199543579438361899238604347269596726714020451469510701177643861408989014977489804856511168512\n", + "3253008620563628080926653837516900168123843522579317016383119291457253386277337674203685700047322953772741672701474505649664257983987218380190061389414957093216722849828437565993359582443826410088996817322744250864530160301421537446777124071299416941921733352704611487039745920908085902709316693588210461450170087550056955507790222813248743215972997287741997137789263765687484573451320063275824031621640121353714288530238577485418183289431370382590071569167411793659376585692217940358279658219442051361019514800247516751837394652138231376046094302277660973411048149512047654121785323898592732147901495153082535622744080178672423120763745743582125206552442292891541342292400797782611020976735358145032917389190828274642271743032804783067993292949027023741910744043080529112538377223787224177823454481091717886398941879230545754621315136722280316530691244468271912788802801849483610853931186507924859713735702060744799227033826270265698399087158876723798477208694539193453428040902939021402355287722817978029954979609713022337024\n", + "6506017241127256161853307675033800336247687045158634032766238582914506772554675348407371400094645907545483345402949011299328515967974436760380122778829914186433445699656875131986719164887652820177993634645488501729060320602843074893554248142598833883843466705409222974079491841816171805418633387176420922900340175100113911015580445626497486431945994575483994275578527531374969146902640126551648063243280242707428577060477154970836366578862740765180143138334823587318753171384435880716559316438884102722039029600495033503674789304276462752092188604555321946822096299024095308243570647797185464295802990306165071245488160357344846241527491487164250413104884585783082684584801595565222041953470716290065834778381656549284543486065609566135986585898054047483821488086161058225076754447574448355646908962183435772797883758461091509242630273444560633061382488936543825577605603698967221707862373015849719427471404121489598454067652540531396798174317753447596954417389078386906856081805878042804710575445635956059909959219426044674048\n", + "13012034482254512323706615350067600672495374090317268065532477165829013545109350696814742800189291815090966690805898022598657031935948873520760245557659828372866891399313750263973438329775305640355987269290977003458120641205686149787108496285197667767686933410818445948158983683632343610837266774352841845800680350200227822031160891252994972863891989150967988551157055062749938293805280253103296126486560485414857154120954309941672733157725481530360286276669647174637506342768871761433118632877768205444078059200990067007349578608552925504184377209110643893644192598048190616487141295594370928591605980612330142490976320714689692483054982974328500826209769171566165369169603191130444083906941432580131669556763313098569086972131219132271973171796108094967642976172322116450153508895148896711293817924366871545595767516922183018485260546889121266122764977873087651155211207397934443415724746031699438854942808242979196908135305081062793596348635506895193908834778156773813712163611756085609421150891271912119819918438852089348096\n", + "26024068964509024647413230700135201344990748180634536131064954331658027090218701393629485600378583630181933381611796045197314063871897747041520491115319656745733782798627500527946876659550611280711974538581954006916241282411372299574216992570395335535373866821636891896317967367264687221674533548705683691601360700400455644062321782505989945727783978301935977102314110125499876587610560506206592252973120970829714308241908619883345466315450963060720572553339294349275012685537743522866237265755536410888156118401980134014699157217105851008368754418221287787288385196096381232974282591188741857183211961224660284981952641429379384966109965948657001652419538343132330738339206382260888167813882865160263339113526626197138173944262438264543946343592216189935285952344644232900307017790297793422587635848733743091191535033844366036970521093778242532245529955746175302310422414795868886831449492063398877709885616485958393816270610162125587192697271013790387817669556313547627424327223512171218842301782543824239639836877704178696192\n", + "52048137929018049294826461400270402689981496361269072262129908663316054180437402787258971200757167260363866763223592090394628127743795494083040982230639313491467565597255001055893753319101222561423949077163908013832482564822744599148433985140790671070747733643273783792635934734529374443349067097411367383202721400800911288124643565011979891455567956603871954204628220250999753175221121012413184505946241941659428616483817239766690932630901926121441145106678588698550025371075487045732474531511072821776312236803960268029398314434211702016737508836442575574576770392192762465948565182377483714366423922449320569963905282858758769932219931897314003304839076686264661476678412764521776335627765730320526678227053252394276347888524876529087892687184432379870571904689288465800614035580595586845175271697467486182383070067688732073941042187556485064491059911492350604620844829591737773662898984126797755419771232971916787632541220324251174385394542027580775635339112627095254848654447024342437684603565087648479279673755408357392384\n", + "104096275858036098589652922800540805379962992722538144524259817326632108360874805574517942401514334520727733526447184180789256255487590988166081964461278626982935131194510002111787506638202445122847898154327816027664965129645489198296867970281581342141495467286547567585271869469058748886698134194822734766405442801601822576249287130023959782911135913207743908409256440501999506350442242024826369011892483883318857232967634479533381865261803852242882290213357177397100050742150974091464949063022145643552624473607920536058796628868423404033475017672885151149153540784385524931897130364754967428732847844898641139927810565717517539864439863794628006609678153372529322953356825529043552671255531460641053356454106504788552695777049753058175785374368864759741143809378576931601228071161191173690350543394934972364766140135377464147882084375112970128982119822984701209241689659183475547325797968253595510839542465943833575265082440648502348770789084055161551270678225254190509697308894048684875369207130175296958559347510816714784768\n", + "208192551716072197179305845601081610759925985445076289048519634653264216721749611149035884803028669041455467052894368361578512510975181976332163928922557253965870262389020004223575013276404890245695796308655632055329930259290978396593735940563162684282990934573095135170543738938117497773396268389645469532810885603203645152498574260047919565822271826415487816818512881003999012700884484049652738023784967766637714465935268959066763730523607704485764580426714354794200101484301948182929898126044291287105248947215841072117593257736846808066950035345770302298307081568771049863794260729509934857465695689797282279855621131435035079728879727589256013219356306745058645906713651058087105342511062921282106712908213009577105391554099506116351570748737729519482287618757153863202456142322382347380701086789869944729532280270754928295764168750225940257964239645969402418483379318366951094651595936507191021679084931887667150530164881297004697541578168110323102541356450508381019394617788097369750738414260350593917118695021633429569536\n", + "416385103432144394358611691202163221519851970890152578097039269306528433443499222298071769606057338082910934105788736723157025021950363952664327857845114507931740524778040008447150026552809780491391592617311264110659860518581956793187471881126325368565981869146190270341087477876234995546792536779290939065621771206407290304997148520095839131644543652830975633637025762007998025401768968099305476047569935533275428931870537918133527461047215408971529160853428709588400202968603896365859796252088582574210497894431682144235186515473693616133900070691540604596614163137542099727588521459019869714931391379594564559711242262870070159457759455178512026438712613490117291813427302116174210685022125842564213425816426019154210783108199012232703141497475459038964575237514307726404912284644764694761402173579739889459064560541509856591528337500451880515928479291938804836966758636733902189303191873014382043358169863775334301060329762594009395083156336220646205082712901016762038789235576194739501476828520701187834237390043266859139072\n", + "832770206864288788717223382404326443039703941780305156194078538613056866886998444596143539212114676165821868211577473446314050043900727905328655715690229015863481049556080016894300053105619560982783185234622528221319721037163913586374943762252650737131963738292380540682174955752469991093585073558581878131243542412814580609994297040191678263289087305661951267274051524015996050803537936198610952095139871066550857863741075836267054922094430817943058321706857419176800405937207792731719592504177165148420995788863364288470373030947387232267800141383081209193228326275084199455177042918039739429862782759189129119422484525740140318915518910357024052877425226980234583626854604232348421370044251685128426851632852038308421566216398024465406282994950918077929150475028615452809824569289529389522804347159479778918129121083019713183056675000903761031856958583877609673933517273467804378606383746028764086716339727550668602120659525188018790166312672441292410165425802033524077578471152389479002953657041402375668474780086533718278144\n", + "1665540413728577577434446764808652886079407883560610312388157077226113733773996889192287078424229352331643736423154946892628100087801455810657311431380458031726962099112160033788600106211239121965566370469245056442639442074327827172749887524505301474263927476584761081364349911504939982187170147117163756262487084825629161219988594080383356526578174611323902534548103048031992101607075872397221904190279742133101715727482151672534109844188861635886116643413714838353600811874415585463439185008354330296841991577726728576940746061894774464535600282766162418386456652550168398910354085836079478859725565518378258238844969051480280637831037820714048105754850453960469167253709208464696842740088503370256853703265704076616843132432796048930812565989901836155858300950057230905619649138579058779045608694318959557836258242166039426366113350001807522063713917167755219347867034546935608757212767492057528173432679455101337204241319050376037580332625344882584820330851604067048155156942304778958005907314082804751336949560173067436556288\n", + "3331080827457155154868893529617305772158815767121220624776314154452227467547993778384574156848458704663287472846309893785256200175602911621314622862760916063453924198224320067577200212422478243931132740938490112885278884148655654345499775049010602948527854953169522162728699823009879964374340294234327512524974169651258322439977188160766713053156349222647805069096206096063984203214151744794443808380559484266203431454964303345068219688377723271772233286827429676707201623748831170926878370016708660593683983155453457153881492123789548929071200565532324836772913305100336797820708171672158957719451131036756516477689938102960561275662075641428096211509700907920938334507418416929393685480177006740513707406531408153233686264865592097861625131979803672311716601900114461811239298277158117558091217388637919115672516484332078852732226700003615044127427834335510438695734069093871217514425534984115056346865358910202674408482638100752075160665250689765169640661703208134096310313884609557916011814628165609502673899120346134873112576\n", + "6662161654914310309737787059234611544317631534242441249552628308904454935095987556769148313696917409326574945692619787570512400351205823242629245725521832126907848396448640135154400424844956487862265481876980225770557768297311308690999550098021205897055709906339044325457399646019759928748680588468655025049948339302516644879954376321533426106312698445295610138192412192127968406428303489588887616761118968532406862909928606690136439376755446543544466573654859353414403247497662341853756740033417321187367966310906914307762984247579097858142401131064649673545826610200673595641416343344317915438902262073513032955379876205921122551324151282856192423019401815841876669014836833858787370960354013481027414813062816306467372529731184195723250263959607344623433203800228923622478596554316235116182434777275838231345032968664157705464453400007230088254855668671020877391468138187742435028851069968230112693730717820405348816965276201504150321330501379530339281323406416268192620627769219115832023629256331219005347798240692269746225152\n", + "13324323309828620619475574118469223088635263068484882499105256617808909870191975113538296627393834818653149891385239575141024800702411646485258491451043664253815696792897280270308800849689912975724530963753960451541115536594622617381999100196042411794111419812678088650914799292039519857497361176937310050099896678605033289759908752643066852212625396890591220276384824384255936812856606979177775233522237937064813725819857213380272878753510893087088933147309718706828806494995324683707513480066834642374735932621813828615525968495158195716284802262129299347091653220401347191282832686688635830877804524147026065910759752411842245102648302565712384846038803631683753338029673667717574741920708026962054829626125632612934745059462368391446500527919214689246866407600457847244957193108632470232364869554551676462690065937328315410928906800014460176509711337342041754782936276375484870057702139936460225387461435640810697633930552403008300642661002759060678562646812832536385241255538438231664047258512662438010695596481384539492450304\n", + "26648646619657241238951148236938446177270526136969764998210513235617819740383950227076593254787669637306299782770479150282049601404823292970516982902087328507631393585794560540617601699379825951449061927507920903082231073189245234763998200392084823588222839625356177301829598584079039714994722353874620100199793357210066579519817505286133704425250793781182440552769648768511873625713213958355550467044475874129627451639714426760545757507021786174177866294619437413657612989990649367415026960133669284749471865243627657231051936990316391432569604524258598694183306440802694382565665373377271661755609048294052131821519504823684490205296605131424769692077607263367506676059347335435149483841416053924109659252251265225869490118924736782893001055838429378493732815200915694489914386217264940464729739109103352925380131874656630821857813600028920353019422674684083509565872552750969740115404279872920450774922871281621395267861104806016601285322005518121357125293625665072770482511076876463328094517025324876021391192962769078984900608\n", + "53297293239314482477902296473876892354541052273939529996421026471235639480767900454153186509575339274612599565540958300564099202809646585941033965804174657015262787171589121081235203398759651902898123855015841806164462146378490469527996400784169647176445679250712354603659197168158079429989444707749240200399586714420133159039635010572267408850501587562364881105539297537023747251426427916711100934088951748259254903279428853521091515014043572348355732589238874827315225979981298734830053920267338569498943730487255314462103873980632782865139209048517197388366612881605388765131330746754543323511218096588104263643039009647368980410593210262849539384155214526735013352118694670870298967682832107848219318504502530451738980237849473565786002111676858756987465630401831388979828772434529880929459478218206705850760263749313261643715627200057840706038845349368167019131745105501939480230808559745840901549845742563242790535722209612033202570644011036242714250587251330145540965022153752926656189034050649752042782385925538157969801216\n", + "106594586478628964955804592947753784709082104547879059992842052942471278961535800908306373019150678549225199131081916601128198405619293171882067931608349314030525574343178242162470406797519303805796247710031683612328924292756980939055992801568339294352891358501424709207318394336316158859978889415498480400799173428840266318079270021144534817701003175124729762211078595074047494502852855833422201868177903496518509806558857707042183030028087144696711465178477749654630451959962597469660107840534677138997887460974510628924207747961265565730278418097034394776733225763210777530262661493509086647022436193176208527286078019294737960821186420525699078768310429053470026704237389341740597935365664215696438637009005060903477960475698947131572004223353717513974931260803662777959657544869059761858918956436413411701520527498626523287431254400115681412077690698736334038263490211003878960461617119491681803099691485126485581071444419224066405141288022072485428501174502660291081930044307505853312378068101299504085564771851076315939602432\n", + "213189172957257929911609185895507569418164209095758119985684105884942557923071601816612746038301357098450398262163833202256396811238586343764135863216698628061051148686356484324940813595038607611592495420063367224657848585513961878111985603136678588705782717002849418414636788672632317719957778830996960801598346857680532636158540042289069635402006350249459524422157190148094989005705711666844403736355806993037019613117715414084366060056174289393422930356955499309260903919925194939320215681069354277995774921949021257848415495922531131460556836194068789553466451526421555060525322987018173294044872386352417054572156038589475921642372841051398157536620858106940053408474778683481195870731328431392877274018010121806955920951397894263144008446707435027949862521607325555919315089738119523717837912872826823403041054997253046574862508800231362824155381397472668076526980422007757920923234238983363606199382970252971162142888838448132810282576044144970857002349005320582163860088615011706624756136202599008171129543702152631879204864\n", + "426378345914515859823218371791015138836328418191516239971368211769885115846143203633225492076602714196900796524327666404512793622477172687528271726433397256122102297372712968649881627190077215223184990840126734449315697171027923756223971206273357177411565434005698836829273577345264635439915557661993921603196693715361065272317080084578139270804012700498919048844314380296189978011411423333688807472711613986074039226235430828168732120112348578786845860713910998618521807839850389878640431362138708555991549843898042515696830991845062262921113672388137579106932903052843110121050645974036346588089744772704834109144312077178951843284745682102796315073241716213880106816949557366962391741462656862785754548036020243613911841902795788526288016893414870055899725043214651111838630179476239047435675825745653646806082109994506093149725017600462725648310762794945336153053960844015515841846468477966727212398765940505942324285777676896265620565152088289941714004698010641164327720177230023413249512272405198016342259087404305263758409728\n", + "852756691829031719646436743582030277672656836383032479942736423539770231692286407266450984153205428393801593048655332809025587244954345375056543452866794512244204594745425937299763254380154430446369981680253468898631394342055847512447942412546714354823130868011397673658547154690529270879831115323987843206393387430722130544634160169156278541608025400997838097688628760592379956022822846667377614945423227972148078452470861656337464240224697157573691721427821997237043615679700779757280862724277417111983099687796085031393661983690124525842227344776275158213865806105686220242101291948072693176179489545409668218288624154357903686569491364205592630146483432427760213633899114733924783482925313725571509096072040487227823683805591577052576033786829740111799450086429302223677260358952478094871351651491307293612164219989012186299450035200925451296621525589890672306107921688031031683692936955933454424797531881011884648571555353792531241130304176579883428009396021282328655440354460046826499024544810396032684518174808610527516819456\n", + "1705513383658063439292873487164060555345313672766064959885472847079540463384572814532901968306410856787603186097310665618051174489908690750113086905733589024488409189490851874599526508760308860892739963360506937797262788684111695024895884825093428709646261736022795347317094309381058541759662230647975686412786774861444261089268320338312557083216050801995676195377257521184759912045645693334755229890846455944296156904941723312674928480449394315147383442855643994474087231359401559514561725448554834223966199375592170062787323967380249051684454689552550316427731612211372440484202583896145386352358979090819336436577248308715807373138982728411185260292966864855520427267798229467849566965850627451143018192144080974455647367611183154105152067573659480223598900172858604447354520717904956189742703302982614587224328439978024372598900070401850902593243051179781344612215843376062063367385873911866908849595063762023769297143110707585062482260608353159766856018792042564657310880708920093652998049089620792065369036349617221055033638912\n", + "3411026767316126878585746974328121110690627345532129919770945694159080926769145629065803936612821713575206372194621331236102348979817381500226173811467178048976818378981703749199053017520617721785479926721013875594525577368223390049791769650186857419292523472045590694634188618762117083519324461295951372825573549722888522178536640676625114166432101603991352390754515042369519824091291386669510459781692911888592313809883446625349856960898788630294766885711287988948174462718803119029123450897109668447932398751184340125574647934760498103368909379105100632855463224422744880968405167792290772704717958181638672873154496617431614746277965456822370520585933729711040854535596458935699133931701254902286036384288161948911294735222366308210304135147318960447197800345717208894709041435809912379485406605965229174448656879956048745197800140803701805186486102359562689224431686752124126734771747823733817699190127524047538594286221415170124964521216706319533712037584085129314621761417840187305996098179241584130738072699234442110067277824\n", + "6822053534632253757171493948656242221381254691064259839541891388318161853538291258131607873225643427150412744389242662472204697959634763000452347622934356097953636757963407498398106035041235443570959853442027751189051154736446780099583539300373714838585046944091181389268377237524234167038648922591902745651147099445777044357073281353250228332864203207982704781509030084739039648182582773339020919563385823777184627619766893250699713921797577260589533771422575977896348925437606238058246901794219336895864797502368680251149295869520996206737818758210201265710926448845489761936810335584581545409435916363277345746308993234863229492555930913644741041171867459422081709071192917871398267863402509804572072768576323897822589470444732616420608270294637920894395600691434417789418082871619824758970813211930458348897313759912097490395600281607403610372972204719125378448863373504248253469543495647467635398380255048095077188572442830340249929042433412639067424075168170258629243522835680374611992196358483168261476145398468884220134555648\n", + "13644107069264507514342987897312484442762509382128519679083782776636323707076582516263215746451286854300825488778485324944409395919269526000904695245868712195907273515926814996796212070082470887141919706884055502378102309472893560199167078600747429677170093888182362778536754475048468334077297845183805491302294198891554088714146562706500456665728406415965409563018060169478079296365165546678041839126771647554369255239533786501399427843595154521179067542845151955792697850875212476116493803588438673791729595004737360502298591739041992413475637516420402531421852897690979523873620671169163090818871832726554691492617986469726458985111861827289482082343734918844163418142385835742796535726805019609144145537152647795645178940889465232841216540589275841788791201382868835578836165743239649517941626423860916697794627519824194980791200563214807220745944409438250756897726747008496506939086991294935270796760510096190154377144885660680499858084866825278134848150336340517258487045671360749223984392716966336522952290796937768440269111296\n", + "27288214138529015028685975794624968885525018764257039358167565553272647414153165032526431492902573708601650977556970649888818791838539052001809390491737424391814547031853629993592424140164941774283839413768111004756204618945787120398334157201494859354340187776364725557073508950096936668154595690367610982604588397783108177428293125413000913331456812831930819126036120338956158592730331093356083678253543295108738510479067573002798855687190309042358135085690303911585395701750424952232987607176877347583459190009474721004597183478083984826951275032840805062843705795381959047747241342338326181637743665453109382985235972939452917970223723654578964164687469837688326836284771671485593071453610039218288291074305295591290357881778930465682433081178551683577582402765737671157672331486479299035883252847721833395589255039648389961582401126429614441491888818876501513795453494016993013878173982589870541593521020192380308754289771321360999716169733650556269696300672681034516974091342721498447968785433932673045904581593875536880538222592\n", + "54576428277058030057371951589249937771050037528514078716335131106545294828306330065052862985805147417203301955113941299777637583677078104003618780983474848783629094063707259987184848280329883548567678827536222009512409237891574240796668314402989718708680375552729451114147017900193873336309191380735221965209176795566216354856586250826001826662913625663861638252072240677912317185460662186712167356507086590217477020958135146005597711374380618084716270171380607823170791403500849904465975214353754695166918380018949442009194366956167969653902550065681610125687411590763918095494482684676652363275487330906218765970471945878905835940447447309157928329374939675376653672569543342971186142907220078436576582148610591182580715763557860931364866162357103367155164805531475342315344662972958598071766505695443666791178510079296779923164802252859228882983777637753003027590906988033986027756347965179741083187042040384760617508579542642721999432339467301112539392601345362069033948182685442996895937570867865346091809163187751073761076445184\n", + "109152856554116060114743903178499875542100075057028157432670262213090589656612660130105725971610294834406603910227882599555275167354156208007237561966949697567258188127414519974369696560659767097135357655072444019024818475783148481593336628805979437417360751105458902228294035800387746672618382761470443930418353591132432709713172501652003653325827251327723276504144481355824634370921324373424334713014173180434954041916270292011195422748761236169432540342761215646341582807001699808931950428707509390333836760037898884018388733912335939307805100131363220251374823181527836190988965369353304726550974661812437531940943891757811671880894894618315856658749879350753307345139086685942372285814440156873153164297221182365161431527115721862729732324714206734310329611062950684630689325945917196143533011390887333582357020158593559846329604505718457765967555275506006055181813976067972055512695930359482166374084080769521235017159085285443998864678934602225078785202690724138067896365370885993791875141735730692183618326375502147522152890368\n", + "218305713108232120229487806356999751084200150114056314865340524426181179313225320260211451943220589668813207820455765199110550334708312416014475123933899395134516376254829039948739393121319534194270715310144888038049636951566296963186673257611958874834721502210917804456588071600775493345236765522940887860836707182264865419426345003304007306651654502655446553008288962711649268741842648746848669426028346360869908083832540584022390845497522472338865080685522431292683165614003399617863900857415018780667673520075797768036777467824671878615610200262726440502749646363055672381977930738706609453101949323624875063881887783515623343761789789236631713317499758701506614690278173371884744571628880313746306328594442364730322863054231443725459464649428413468620659222125901369261378651891834392287066022781774667164714040317187119692659209011436915531935110551012012110363627952135944111025391860718964332748168161539042470034318170570887997729357869204450157570405381448276135792730741771987583750283471461384367236652751004295044305780736\n", + "436611426216464240458975612713999502168400300228112629730681048852362358626450640520422903886441179337626415640911530398221100669416624832028950247867798790269032752509658079897478786242639068388541430620289776076099273903132593926373346515223917749669443004421835608913176143201550986690473531045881775721673414364529730838852690006608014613303309005310893106016577925423298537483685297493697338852056692721739816167665081168044781690995044944677730161371044862585366331228006799235727801714830037561335347040151595536073554935649343757231220400525452881005499292726111344763955861477413218906203898647249750127763775567031246687523579578473263426634999517403013229380556346743769489143257760627492612657188884729460645726108462887450918929298856826937241318444251802738522757303783668784574132045563549334329428080634374239385318418022873831063870221102024024220727255904271888222050783721437928665496336323078084940068636341141775995458715738408900315140810762896552271585461483543975167500566942922768734473305502008590088611561472\n", + "873222852432928480917951225427999004336800600456225259461362097704724717252901281040845807772882358675252831281823060796442201338833249664057900495735597580538065505019316159794957572485278136777082861240579552152198547806265187852746693030447835499338886008843671217826352286403101973380947062091763551443346828729059461677705380013216029226606618010621786212033155850846597074967370594987394677704113385443479632335330162336089563381990089889355460322742089725170732662456013598471455603429660075122670694080303191072147109871298687514462440801050905762010998585452222689527911722954826437812407797294499500255527551134062493375047159156946526853269999034806026458761112693487538978286515521254985225314377769458921291452216925774901837858597713653874482636888503605477045514607567337569148264091127098668658856161268748478770636836045747662127740442204048048441454511808543776444101567442875857330992672646156169880137272682283551990917431476817800630281621525793104543170922967087950335001133885845537468946611004017180177223122944\n", + "1746445704865856961835902450855998008673601200912450518922724195409449434505802562081691615545764717350505662563646121592884402677666499328115800991471195161076131010038632319589915144970556273554165722481159104304397095612530375705493386060895670998677772017687342435652704572806203946761894124183527102886693657458118923355410760026432058453213236021243572424066311701693194149934741189974789355408226770886959264670660324672179126763980179778710920645484179450341465324912027196942911206859320150245341388160606382144294219742597375028924881602101811524021997170904445379055823445909652875624815594588999000511055102268124986750094318313893053706539998069612052917522225386975077956573031042509970450628755538917842582904433851549803675717195427307748965273777007210954091029215134675138296528182254197337317712322537496957541273672091495324255480884408096096882909023617087552888203134885751714661985345292312339760274545364567103981834862953635601260563243051586209086341845934175900670002267771691074937893222008034360354446245888\n", + "3492891409731713923671804901711996017347202401824901037845448390818898869011605124163383231091529434701011325127292243185768805355332998656231601982942390322152262020077264639179830289941112547108331444962318208608794191225060751410986772121791341997355544035374684871305409145612407893523788248367054205773387314916237846710821520052864116906426472042487144848132623403386388299869482379949578710816453541773918529341320649344358253527960359557421841290968358900682930649824054393885822413718640300490682776321212764288588439485194750057849763204203623048043994341808890758111646891819305751249631189177998001022110204536249973500188636627786107413079996139224105835044450773950155913146062085019940901257511077835685165808867703099607351434390854615497930547554014421908182058430269350276593056364508394674635424645074993915082547344182990648510961768816192193765818047234175105776406269771503429323970690584624679520549090729134207963669725907271202521126486103172418172683691868351801340004535543382149875786444016068720708892491776\n", + "6985782819463427847343609803423992034694404803649802075690896781637797738023210248326766462183058869402022650254584486371537610710665997312463203965884780644304524040154529278359660579882225094216662889924636417217588382450121502821973544243582683994711088070749369742610818291224815787047576496734108411546774629832475693421643040105728233812852944084974289696265246806772776599738964759899157421632907083547837058682641298688716507055920719114843682581936717801365861299648108787771644827437280600981365552642425528577176878970389500115699526408407246096087988683617781516223293783638611502499262378355996002044220409072499947000377273255572214826159992278448211670088901547900311826292124170039881802515022155671370331617735406199214702868781709230995861095108028843816364116860538700553186112729016789349270849290149987830165094688365981297021923537632384387531636094468350211552812539543006858647941381169249359041098181458268415927339451814542405042252972206344836345367383736703602680009071086764299751572888032137441417784983552\n", + "13971565638926855694687219606847984069388809607299604151381793563275595476046420496653532924366117738804045300509168972743075221421331994624926407931769561288609048080309058556719321159764450188433325779849272834435176764900243005643947088487165367989422176141498739485221636582449631574095152993468216823093549259664951386843286080211456467625705888169948579392530493613545553199477929519798314843265814167095674117365282597377433014111841438229687365163873435602731722599296217575543289654874561201962731105284851057154353757940779000231399052816814492192175977367235563032446587567277223004998524756711992004088440818144999894000754546511144429652319984556896423340177803095800623652584248340079763605030044311342740663235470812398429405737563418461991722190216057687632728233721077401106372225458033578698541698580299975660330189376731962594043847075264768775063272188936700423105625079086013717295882762338498718082196362916536831854678903629084810084505944412689672690734767473407205360018142173528599503145776064274882835569967104\n", + "27943131277853711389374439213695968138777619214599208302763587126551190952092840993307065848732235477608090601018337945486150442842663989249852815863539122577218096160618117113438642319528900376866651559698545668870353529800486011287894176974330735978844352282997478970443273164899263148190305986936433646187098519329902773686572160422912935251411776339897158785060987227091106398955859039596629686531628334191348234730565194754866028223682876459374730327746871205463445198592435151086579309749122403925462210569702114308707515881558000462798105633628984384351954734471126064893175134554446009997049513423984008176881636289999788001509093022288859304639969113792846680355606191601247305168496680159527210060088622685481326470941624796858811475126836923983444380432115375265456467442154802212744450916067157397083397160599951320660378753463925188087694150529537550126544377873400846211250158172027434591765524676997436164392725833073663709357807258169620169011888825379345381469534946814410720036284347057199006291552128549765671139934208\n", + "55886262555707422778748878427391936277555238429198416605527174253102381904185681986614131697464470955216181202036675890972300885685327978499705631727078245154436192321236234226877284639057800753733303119397091337740707059600972022575788353948661471957688704565994957940886546329798526296380611973872867292374197038659805547373144320845825870502823552679794317570121974454182212797911718079193259373063256668382696469461130389509732056447365752918749460655493742410926890397184870302173158619498244807850924421139404228617415031763116000925596211267257968768703909468942252129786350269108892019994099026847968016353763272579999576003018186044577718609279938227585693360711212383202494610336993360319054420120177245370962652941883249593717622950253673847966888760864230750530912934884309604425488901832134314794166794321199902641320757506927850376175388301059075100253088755746801692422500316344054869183531049353994872328785451666147327418715614516339240338023777650758690762939069893628821440072568694114398012583104257099531342279868416\n", + "111772525111414845557497756854783872555110476858396833211054348506204763808371363973228263394928941910432362404073351781944601771370655956999411263454156490308872384642472468453754569278115601507466606238794182675481414119201944045151576707897322943915377409131989915881773092659597052592761223947745734584748394077319611094746288641691651741005647105359588635140243948908364425595823436158386518746126513336765392938922260779019464112894731505837498921310987484821853780794369740604346317238996489615701848842278808457234830063526232001851192422534515937537407818937884504259572700538217784039988198053695936032707526545159999152006036372089155437218559876455171386721422424766404989220673986720638108840240354490741925305883766499187435245900507347695933777521728461501061825869768619208850977803664268629588333588642399805282641515013855700752350776602118150200506177511493603384845000632688109738367062098707989744657570903332294654837431229032678480676047555301517381525878139787257642880145137388228796025166208514199062684559736832\n", + "223545050222829691114995513709567745110220953716793666422108697012409527616742727946456526789857883820864724808146703563889203542741311913998822526908312980617744769284944936907509138556231203014933212477588365350962828238403888090303153415794645887830754818263979831763546185319194105185522447895491469169496788154639222189492577283383303482011294210719177270280487897816728851191646872316773037492253026673530785877844521558038928225789463011674997842621974969643707561588739481208692634477992979231403697684557616914469660127052464003702384845069031875074815637875769008519145401076435568079976396107391872065415053090319998304012072744178310874437119752910342773442844849532809978441347973441276217680480708981483850611767532998374870491801014695391867555043456923002123651739537238417701955607328537259176667177284799610565283030027711401504701553204236300401012355022987206769690001265376219476734124197415979489315141806664589309674862458065356961352095110603034763051756279574515285760290274776457592050332417028398125369119473664\n", + "447090100445659382229991027419135490220441907433587332844217394024819055233485455892913053579715767641729449616293407127778407085482623827997645053816625961235489538569889873815018277112462406029866424955176730701925656476807776180606306831589291775661509636527959663527092370638388210371044895790982938338993576309278444378985154566766606964022588421438354540560975795633457702383293744633546074984506053347061571755689043116077856451578926023349995685243949939287415123177478962417385268955985958462807395369115233828939320254104928007404769690138063750149631275751538017038290802152871136159952792214783744130830106180639996608024145488356621748874239505820685546885689699065619956882695946882552435360961417962967701223535065996749740983602029390783735110086913846004247303479074476835403911214657074518353334354569599221130566060055422803009403106408472600802024710045974413539380002530752438953468248394831958978630283613329178619349724916130713922704190221206069526103512559149030571520580549552915184100664834056796250738238947328\n", + "894180200891318764459982054838270980440883814867174665688434788049638110466970911785826107159431535283458899232586814255556814170965247655995290107633251922470979077139779747630036554224924812059732849910353461403851312953615552361212613663178583551323019273055919327054184741276776420742089791581965876677987152618556888757970309133533213928045176842876709081121951591266915404766587489267092149969012106694123143511378086232155712903157852046699991370487899878574830246354957924834770537911971916925614790738230467657878640508209856014809539380276127500299262551503076034076581604305742272319905584429567488261660212361279993216048290976713243497748479011641371093771379398131239913765391893765104870721922835925935402447070131993499481967204058781567470220173827692008494606958148953670807822429314149036706668709139198442261132120110845606018806212816945201604049420091948827078760005061504877906936496789663917957260567226658357238699449832261427845408380442412139052207025118298061143041161099105830368201329668113592501476477894656\n", + "1788360401782637528919964109676541960881767629734349331376869576099276220933941823571652214318863070566917798465173628511113628341930495311990580215266503844941958154279559495260073108449849624119465699820706922807702625907231104722425227326357167102646038546111838654108369482553552841484179583163931753355974305237113777515940618267066427856090353685753418162243903182533830809533174978534184299938024213388246287022756172464311425806315704093399982740975799757149660492709915849669541075823943833851229581476460935315757281016419712029619078760552255000598525103006152068153163208611484544639811168859134976523320424722559986432096581953426486995496958023282742187542758796262479827530783787530209741443845671851870804894140263986998963934408117563134940440347655384016989213916297907341615644858628298073413337418278396884522264240221691212037612425633890403208098840183897654157520010123009755813872993579327835914521134453316714477398899664522855690816760884824278104414050236596122286082322198211660736402659336227185002952955789312\n", + "3576720803565275057839928219353083921763535259468698662753739152198552441867883647143304428637726141133835596930347257022227256683860990623981160430533007689883916308559118990520146216899699248238931399641413845615405251814462209444850454652714334205292077092223677308216738965107105682968359166327863506711948610474227555031881236534132855712180707371506836324487806365067661619066349957068368599876048426776492574045512344928622851612631408186799965481951599514299320985419831699339082151647887667702459162952921870631514562032839424059238157521104510001197050206012304136306326417222969089279622337718269953046640849445119972864193163906852973990993916046565484375085517592524959655061567575060419482887691343703741609788280527973997927868816235126269880880695310768033978427832595814683231289717256596146826674836556793769044528480443382424075224851267780806416197680367795308315040020246019511627745987158655671829042268906633428954797799329045711381633521769648556208828100473192244572164644396423321472805318672454370005905911578624\n", + "7153441607130550115679856438706167843527070518937397325507478304397104883735767294286608857275452282267671193860694514044454513367721981247962320861066015379767832617118237981040292433799398496477862799282827691230810503628924418889700909305428668410584154184447354616433477930214211365936718332655727013423897220948455110063762473068265711424361414743013672648975612730135323238132699914136737199752096853552985148091024689857245703225262816373599930963903199028598641970839663398678164303295775335404918325905843741263029124065678848118476315042209020002394100412024608272612652834445938178559244675436539906093281698890239945728386327813705947981987832093130968750171035185049919310123135150120838965775382687407483219576561055947995855737632470252539761761390621536067956855665191629366462579434513192293653349673113587538089056960886764848150449702535561612832395360735590616630080040492039023255491974317311343658084537813266857909595598658091422763267043539297112417656200946384489144329288792846642945610637344908740011811823157248\n", + "14306883214261100231359712877412335687054141037874794651014956608794209767471534588573217714550904564535342387721389028088909026735443962495924641722132030759535665234236475962080584867598796992955725598565655382461621007257848837779401818610857336821168308368894709232866955860428422731873436665311454026847794441896910220127524946136531422848722829486027345297951225460270646476265399828273474399504193707105970296182049379714491406450525632747199861927806398057197283941679326797356328606591550670809836651811687482526058248131357696236952630084418040004788200824049216545225305668891876357118489350873079812186563397780479891456772655627411895963975664186261937500342070370099838620246270300241677931550765374814966439153122111895991711475264940505079523522781243072135913711330383258732925158869026384587306699346227175076178113921773529696300899405071123225664790721471181233260160080984078046510983948634622687316169075626533715819191197316182845526534087078594224835312401892768978288658577585693285891221274689817480023623646314496\n", + "28613766428522200462719425754824671374108282075749589302029913217588419534943069177146435429101809129070684775442778056177818053470887924991849283444264061519071330468472951924161169735197593985911451197131310764923242014515697675558803637221714673642336616737789418465733911720856845463746873330622908053695588883793820440255049892273062845697445658972054690595902450920541292952530799656546948799008387414211940592364098759428982812901051265494399723855612796114394567883358653594712657213183101341619673303623374965052116496262715392473905260168836080009576401648098433090450611337783752714236978701746159624373126795560959782913545311254823791927951328372523875000684140740199677240492540600483355863101530749629932878306244223791983422950529881010159047045562486144271827422660766517465850317738052769174613398692454350152356227843547059392601798810142246451329581442942362466520320161968156093021967897269245374632338151253067431638382394632365691053068174157188449670624803785537956577317155171386571782442549379634960047247292628992\n", + "57227532857044400925438851509649342748216564151499178604059826435176839069886138354292870858203618258141369550885556112355636106941775849983698566888528123038142660936945903848322339470395187971822902394262621529846484029031395351117607274443429347284673233475578836931467823441713690927493746661245816107391177767587640880510099784546125691394891317944109381191804901841082585905061599313093897598016774828423881184728197518857965625802102530988799447711225592228789135766717307189425314426366202683239346607246749930104232992525430784947810520337672160019152803296196866180901222675567505428473957403492319248746253591121919565827090622509647583855902656745047750001368281480399354480985081200966711726203061499259865756612488447583966845901059762020318094091124972288543654845321533034931700635476105538349226797384908700304712455687094118785203597620284492902659162885884724933040640323936312186043935794538490749264676302506134863276764789264731382106136348314376899341249607571075913154634310342773143564885098759269920094494585257984\n", + "114455065714088801850877703019298685496433128302998357208119652870353678139772276708585741716407236516282739101771112224711272213883551699967397133777056246076285321873891807696644678940790375943645804788525243059692968058062790702235214548886858694569346466951157673862935646883427381854987493322491632214782355535175281761020199569092251382789782635888218762383609803682165171810123198626187795196033549656847762369456395037715931251604205061977598895422451184457578271533434614378850628852732405366478693214493499860208465985050861569895621040675344320038305606592393732361802445351135010856947914806984638497492507182243839131654181245019295167711805313490095500002736562960798708961970162401933423452406122998519731513224976895167933691802119524040636188182249944577087309690643066069863401270952211076698453594769817400609424911374188237570407195240568985805318325771769449866081280647872624372087871589076981498529352605012269726553529578529462764212272696628753798682499215142151826309268620685546287129770197518539840188989170515968\n", + "228910131428177603701755406038597370992866256605996714416239305740707356279544553417171483432814473032565478203542224449422544427767103399934794267554112492152570643747783615393289357881580751887291609577050486119385936116125581404470429097773717389138692933902315347725871293766854763709974986644983264429564711070350563522040399138184502765579565271776437524767219607364330343620246397252375590392067099313695524738912790075431862503208410123955197790844902368915156543066869228757701257705464810732957386428986999720416931970101723139791242081350688640076611213184787464723604890702270021713895829613969276994985014364487678263308362490038590335423610626980191000005473125921597417923940324803866846904812245997039463026449953790335867383604239048081272376364499889154174619381286132139726802541904422153396907189539634801218849822748376475140814390481137971610636651543538899732162561295745248744175743178153962997058705210024539453107059157058925528424545393257507597364998430284303652618537241371092574259540395037079680377978341031936\n", + "457820262856355207403510812077194741985732513211993428832478611481414712559089106834342966865628946065130956407084448898845088855534206799869588535108224984305141287495567230786578715763161503774583219154100972238771872232251162808940858195547434778277385867804630695451742587533709527419949973289966528859129422140701127044080798276369005531159130543552875049534439214728660687240492794504751180784134198627391049477825580150863725006416820247910395581689804737830313086133738457515402515410929621465914772857973999440833863940203446279582484162701377280153222426369574929447209781404540043427791659227938553989970028728975356526616724980077180670847221253960382000010946251843194835847880649607733693809624491994078926052899907580671734767208478096162544752728999778308349238762572264279453605083808844306793814379079269602437699645496752950281628780962275943221273303087077799464325122591490497488351486356307925994117410420049078906214118314117851056849090786515015194729996860568607305237074482742185148519080790074159360755956682063872\n", + "915640525712710414807021624154389483971465026423986857664957222962829425118178213668685933731257892130261912814168897797690177711068413599739177070216449968610282574991134461573157431526323007549166438308201944477543744464502325617881716391094869556554771735609261390903485175067419054839899946579933057718258844281402254088161596552738011062318261087105750099068878429457321374480985589009502361568268397254782098955651160301727450012833640495820791163379609475660626172267476915030805030821859242931829545715947998881667727880406892559164968325402754560306444852739149858894419562809080086855583318455877107979940057457950713053233449960154361341694442507920764000021892503686389671695761299215467387619248983988157852105799815161343469534416956192325089505457999556616698477525144528558907210167617688613587628758158539204875399290993505900563257561924551886442546606174155598928650245182980994976702972712615851988234820840098157812428236628235702113698181573030030389459993721137214610474148965484370297038161580148318721511913364127744\n", + "1831281051425420829614043248308778967942930052847973715329914445925658850236356427337371867462515784260523825628337795595380355422136827199478354140432899937220565149982268923146314863052646015098332876616403888955087488929004651235763432782189739113109543471218522781806970350134838109679799893159866115436517688562804508176323193105476022124636522174211500198137756858914642748961971178019004723136536794509564197911302320603454900025667280991641582326759218951321252344534953830061610061643718485863659091431895997763335455760813785118329936650805509120612889705478299717788839125618160173711166636911754215959880114915901426106466899920308722683388885015841528000043785007372779343391522598430934775238497967976315704211599630322686939068833912384650179010915999113233396955050289057117814420335235377227175257516317078409750798581987011801126515123849103772885093212348311197857300490365961989953405945425231703976469641680196315624856473256471404227396363146060060778919987442274429220948297930968740594076323160296637443023826728255488\n", + "3662562102850841659228086496617557935885860105695947430659828891851317700472712854674743734925031568521047651256675591190760710844273654398956708280865799874441130299964537846292629726105292030196665753232807777910174977858009302471526865564379478226219086942437045563613940700269676219359599786319732230873035377125609016352646386210952044249273044348423000396275513717829285497923942356038009446273073589019128395822604641206909800051334561983283164653518437902642504689069907660123220123287436971727318182863791995526670911521627570236659873301611018241225779410956599435577678251236320347422333273823508431919760229831802852212933799840617445366777770031683056000087570014745558686783045196861869550476995935952631408423199260645373878137667824769300358021831998226466793910100578114235628840670470754454350515032634156819501597163974023602253030247698207545770186424696622395714600980731923979906811890850463407952939283360392631249712946512942808454792726292120121557839974884548858441896595861937481188152646320593274886047653456510976\n", + "7325124205701683318456172993235115871771720211391894861319657783702635400945425709349487469850063137042095302513351182381521421688547308797913416561731599748882260599929075692585259452210584060393331506465615555820349955716018604943053731128758956452438173884874091127227881400539352438719199572639464461746070754251218032705292772421904088498546088696846000792551027435658570995847884712076018892546147178038256791645209282413819600102669123966566329307036875805285009378139815320246440246574873943454636365727583991053341823043255140473319746603222036482451558821913198871155356502472640694844666547647016863839520459663605704425867599681234890733555540063366112000175140029491117373566090393723739100953991871905262816846398521290747756275335649538600716043663996452933587820201156228471257681340941508908701030065268313639003194327948047204506060495396415091540372849393244791429201961463847959813623781700926815905878566720785262499425893025885616909585452584240243115679949769097716883793191723874962376305292641186549772095306913021952\n", + "14650248411403366636912345986470231743543440422783789722639315567405270801890851418698974939700126274084190605026702364763042843377094617595826833123463199497764521199858151385170518904421168120786663012931231111640699911432037209886107462257517912904876347769748182254455762801078704877438399145278928923492141508502436065410585544843808176997092177393692001585102054871317141991695769424152037785092294356076513583290418564827639200205338247933132658614073751610570018756279630640492880493149747886909272731455167982106683646086510280946639493206444072964903117643826397742310713004945281389689333095294033727679040919327211408851735199362469781467111080126732224000350280058982234747132180787447478201907983743810525633692797042581495512550671299077201432087327992905867175640402312456942515362681883017817402060130536627278006388655896094409012120990792830183080745698786489582858403922927695919627247563401853631811757133441570524998851786051771233819170905168480486231359899538195433767586383447749924752610585282373099544190613826043904\n", + "29300496822806733273824691972940463487086880845567579445278631134810541603781702837397949879400252548168381210053404729526085686754189235191653666246926398995529042399716302770341037808842336241573326025862462223281399822864074419772214924515035825809752695539496364508911525602157409754876798290557857846984283017004872130821171089687616353994184354787384003170204109742634283983391538848304075570184588712153027166580837129655278400410676495866265317228147503221140037512559261280985760986299495773818545462910335964213367292173020561893278986412888145929806235287652795484621426009890562779378666190588067455358081838654422817703470398724939562934222160253464448000700560117964469494264361574894956403815967487621051267385594085162991025101342598154402864174655985811734351280804624913885030725363766035634804120261073254556012777311792188818024241981585660366161491397572979165716807845855391839254495126803707263623514266883141049997703572103542467638341810336960972462719799076390867535172766895499849505221170564746199088381227652087808\n", + "58600993645613466547649383945880926974173761691135158890557262269621083207563405674795899758800505096336762420106809459052171373508378470383307332493852797991058084799432605540682075617684672483146652051724924446562799645728148839544429849030071651619505391078992729017823051204314819509753596581115715693968566034009744261642342179375232707988368709574768006340408219485268567966783077696608151140369177424306054333161674259310556800821352991732530634456295006442280075025118522561971521972598991547637090925820671928426734584346041123786557972825776291859612470575305590969242852019781125558757332381176134910716163677308845635406940797449879125868444320506928896001401120235928938988528723149789912807631934975242102534771188170325982050202685196308805728349311971623468702561609249827770061450727532071269608240522146509112025554623584377636048483963171320732322982795145958331433615691710783678508990253607414527247028533766282099995407144207084935276683620673921944925439598152781735070345533790999699010442341129492398176762455304175616\n", + "117201987291226933095298767891761853948347523382270317781114524539242166415126811349591799517601010192673524840213618918104342747016756940766614664987705595982116169598865211081364151235369344966293304103449848893125599291456297679088859698060143303239010782157985458035646102408629639019507193162231431387937132068019488523284684358750465415976737419149536012680816438970537135933566155393216302280738354848612108666323348518621113601642705983465061268912590012884560150050237045123943043945197983095274181851641343856853469168692082247573115945651552583719224941150611181938485704039562251117514664762352269821432327354617691270813881594899758251736888641013857792002802240471857877977057446299579825615263869950484205069542376340651964100405370392617611456698623943246937405123218499655540122901455064142539216481044293018224051109247168755272096967926342641464645965590291916662867231383421567357017980507214829054494057067532564199990814288414169870553367241347843889850879196305563470140691067581999398020884682258984796353524910608351232\n", + "234403974582453866190597535783523707896695046764540635562229049078484332830253622699183599035202020385347049680427237836208685494033513881533229329975411191964232339197730422162728302470738689932586608206899697786251198582912595358177719396120286606478021564315970916071292204817259278039014386324462862775874264136038977046569368717500930831953474838299072025361632877941074271867132310786432604561476709697224217332646697037242227203285411966930122537825180025769120300100474090247886087890395966190548363703282687713706938337384164495146231891303105167438449882301222363876971408079124502235029329524704539642864654709235382541627763189799516503473777282027715584005604480943715755954114892599159651230527739900968410139084752681303928200810740785235222913397247886493874810246436999311080245802910128285078432962088586036448102218494337510544193935852685282929291931180583833325734462766843134714035961014429658108988114135065128399981628576828339741106734482695687779701758392611126940281382135163998796041769364517969592707049821216702464\n", + "468807949164907732381195071567047415793390093529081271124458098156968665660507245398367198070404040770694099360854475672417370988067027763066458659950822383928464678395460844325456604941477379865173216413799395572502397165825190716355438792240573212956043128631941832142584409634518556078028772648925725551748528272077954093138737435001861663906949676598144050723265755882148543734264621572865209122953419394448434665293394074484454406570823933860245075650360051538240600200948180495772175780791932381096727406565375427413876674768328990292463782606210334876899764602444727753942816158249004470058659049409079285729309418470765083255526379599033006947554564055431168011208961887431511908229785198319302461055479801936820278169505362607856401621481570470445826794495772987749620492873998622160491605820256570156865924177172072896204436988675021088387871705370565858583862361167666651468925533686269428071922028859316217976228270130256799963257153656679482213468965391375559403516785222253880562764270327997592083538729035939185414099642433404928\n", + "937615898329815464762390143134094831586780187058162542248916196313937331321014490796734396140808081541388198721708951344834741976134055526132917319901644767856929356790921688650913209882954759730346432827598791145004794331650381432710877584481146425912086257263883664285168819269037112156057545297851451103497056544155908186277474870003723327813899353196288101446531511764297087468529243145730418245906838788896869330586788148968908813141647867720490151300720103076481200401896360991544351561583864762193454813130750854827753349536657980584927565212420669753799529204889455507885632316498008940117318098818158571458618836941530166511052759198066013895109128110862336022417923774863023816459570396638604922110959603873640556339010725215712803242963140940891653588991545975499240985747997244320983211640513140313731848354344145792408873977350042176775743410741131717167724722335333302937851067372538856143844057718632435952456540260513599926514307313358964426937930782751118807033570444507761125528540655995184167077458071878370828199284866809856\n", + "1875231796659630929524780286268189663173560374116325084497832392627874662642028981593468792281616163082776397443417902689669483952268111052265834639803289535713858713581843377301826419765909519460692865655197582290009588663300762865421755168962292851824172514527767328570337638538074224312115090595702902206994113088311816372554949740007446655627798706392576202893063023528594174937058486291460836491813677577793738661173576297937817626283295735440980302601440206152962400803792721983088703123167729524386909626261501709655506699073315961169855130424841339507599058409778911015771264632996017880234636197636317142917237673883060333022105518396132027790218256221724672044835847549726047632919140793277209844221919207747281112678021450431425606485926281881783307177983091950998481971495994488641966423281026280627463696708688291584817747954700084353551486821482263434335449444670666605875702134745077712287688115437264871904913080521027199853028614626717928853875861565502237614067140889015522251057081311990368334154916143756741656398569733619712\n", + "3750463593319261859049560572536379326347120748232650168995664785255749325284057963186937584563232326165552794886835805379338967904536222104531669279606579071427717427163686754603652839531819038921385731310395164580019177326601525730843510337924585703648345029055534657140675277076148448624230181191405804413988226176623632745109899480014893311255597412785152405786126047057188349874116972582921672983627355155587477322347152595875635252566591470881960605202880412305924801607585443966177406246335459048773819252523003419311013398146631922339710260849682679015198116819557822031542529265992035760469272395272634285834475347766120666044211036792264055580436512443449344089671695099452095265838281586554419688443838415494562225356042900862851212971852563763566614355966183901996963942991988977283932846562052561254927393417376583169635495909400168707102973642964526868670898889341333211751404269490155424575376230874529743809826161042054399706057229253435857707751723131004475228134281778031044502114162623980736668309832287513483312797139467239424\n", + "7500927186638523718099121145072758652694241496465300337991329570511498650568115926373875169126464652331105589773671610758677935809072444209063338559213158142855434854327373509207305679063638077842771462620790329160038354653203051461687020675849171407296690058111069314281350554152296897248460362382811608827976452353247265490219798960029786622511194825570304811572252094114376699748233945165843345967254710311174954644694305191751270505133182941763921210405760824611849603215170887932354812492670918097547638505046006838622026796293263844679420521699365358030396233639115644063085058531984071520938544790545268571668950695532241332088422073584528111160873024886898688179343390198904190531676563173108839376887676830989124450712085801725702425943705127527133228711932367803993927885983977954567865693124105122509854786834753166339270991818800337414205947285929053737341797778682666423502808538980310849150752461749059487619652322084108799412114458506871715415503446262008950456268563556062089004228325247961473336619664575026966625594278934478848\n", + "15001854373277047436198242290145517305388482992930600675982659141022997301136231852747750338252929304662211179547343221517355871618144888418126677118426316285710869708654747018414611358127276155685542925241580658320076709306406102923374041351698342814593380116222138628562701108304593794496920724765623217655952904706494530980439597920059573245022389651140609623144504188228753399496467890331686691934509420622349909289388610383502541010266365883527842420811521649223699206430341775864709624985341836195095277010092013677244053592586527689358841043398730716060792467278231288126170117063968143041877089581090537143337901391064482664176844147169056222321746049773797376358686780397808381063353126346217678753775353661978248901424171603451404851887410255054266457423864735607987855771967955909135731386248210245019709573669506332678541983637600674828411894571858107474683595557365332847005617077960621698301504923498118975239304644168217598824228917013743430831006892524017900912537127112124178008456650495922946673239329150053933251188557868957696\n", + "30003708746554094872396484580291034610776965985861201351965318282045994602272463705495500676505858609324422359094686443034711743236289776836253354236852632571421739417309494036829222716254552311371085850483161316640153418612812205846748082703396685629186760232444277257125402216609187588993841449531246435311905809412989061960879195840119146490044779302281219246289008376457506798992935780663373383869018841244699818578777220767005082020532731767055684841623043298447398412860683551729419249970683672390190554020184027354488107185173055378717682086797461432121584934556462576252340234127936286083754179162181074286675802782128965328353688294338112444643492099547594752717373560795616762126706252692435357507550707323956497802848343206902809703774820510108532914847729471215975711543935911818271462772496420490039419147339012665357083967275201349656823789143716214949367191114730665694011234155921243396603009846996237950478609288336435197648457834027486861662013785048035801825074254224248356016913300991845893346478658300107866502377115737915392\n", + "60007417493108189744792969160582069221553931971722402703930636564091989204544927410991001353011717218648844718189372886069423486472579553672506708473705265142843478834618988073658445432509104622742171700966322633280306837225624411693496165406793371258373520464888554514250804433218375177987682899062492870623811618825978123921758391680238292980089558604562438492578016752915013597985871561326746767738037682489399637157554441534010164041065463534111369683246086596894796825721367103458838499941367344780381108040368054708976214370346110757435364173594922864243169869112925152504680468255872572167508358324362148573351605564257930656707376588676224889286984199095189505434747121591233524253412505384870715015101414647912995605696686413805619407549641020217065829695458942431951423087871823636542925544992840980078838294678025330714167934550402699313647578287432429898734382229461331388022468311842486793206019693992475900957218576672870395296915668054973723324027570096071603650148508448496712033826601983691786692957316600215733004754231475830784\n", + "120014834986216379489585938321164138443107863943444805407861273128183978409089854821982002706023434437297689436378745772138846972945159107345013416947410530285686957669237976147316890865018209245484343401932645266560613674451248823386992330813586742516747040929777109028501608866436750355975365798124985741247623237651956247843516783360476585960179117209124876985156033505830027195971743122653493535476075364978799274315108883068020328082130927068222739366492173193789593651442734206917676999882734689560762216080736109417952428740692221514870728347189845728486339738225850305009360936511745144335016716648724297146703211128515861313414753177352449778573968398190379010869494243182467048506825010769741430030202829295825991211393372827611238815099282040434131659390917884863902846175743647273085851089985681960157676589356050661428335869100805398627295156574864859797468764458922662776044936623684973586412039387984951801914437153345740790593831336109947446648055140192143207300297016896993424067653203967383573385914633200431466009508462951661568\n", + "240029669972432758979171876642328276886215727886889610815722546256367956818179709643964005412046868874595378872757491544277693945890318214690026833894821060571373915338475952294633781730036418490968686803865290533121227348902497646773984661627173485033494081859554218057003217732873500711950731596249971482495246475303912495687033566720953171920358234418249753970312067011660054391943486245306987070952150729957598548630217766136040656164261854136445478732984346387579187302885468413835353999765469379121524432161472218835904857481384443029741456694379691456972679476451700610018721873023490288670033433297448594293406422257031722626829506354704899557147936796380758021738988486364934097013650021539482860060405658591651982422786745655222477630198564080868263318781835769727805692351487294546171702179971363920315353178712101322856671738201610797254590313149729719594937528917845325552089873247369947172824078775969903603828874306691481581187662672219894893296110280384286414600594033793986848135306407934767146771829266400862932019016925903323136\n", + "480059339944865517958343753284656553772431455773779221631445092512735913636359419287928010824093737749190757745514983088555387891780636429380053667789642121142747830676951904589267563460072836981937373607730581066242454697804995293547969323254346970066988163719108436114006435465747001423901463192499942964990492950607824991374067133441906343840716468836499507940624134023320108783886972490613974141904301459915197097260435532272081312328523708272890957465968692775158374605770936827670707999530938758243048864322944437671809714962768886059482913388759382913945358952903401220037443746046980577340066866594897188586812844514063445253659012709409799114295873592761516043477976972729868194027300043078965720120811317183303964845573491310444955260397128161736526637563671539455611384702974589092343404359942727840630706357424202645713343476403221594509180626299459439189875057835690651104179746494739894345648157551939807207657748613382963162375325344439789786592220560768572829201188067587973696270612815869534293543658532801725864038033851806646272\n", + "960118679889731035916687506569313107544862911547558443262890185025471827272718838575856021648187475498381515491029966177110775783561272858760107335579284242285495661353903809178535126920145673963874747215461162132484909395609990587095938646508693940133976327438216872228012870931494002847802926384999885929980985901215649982748134266883812687681432937672999015881248268046640217567773944981227948283808602919830394194520871064544162624657047416545781914931937385550316749211541873655341415999061877516486097728645888875343619429925537772118965826777518765827890717905806802440074887492093961154680133733189794377173625689028126890507318025418819598228591747185523032086955953945459736388054600086157931440241622634366607929691146982620889910520794256323473053275127343078911222769405949178184686808719885455681261412714848405291426686952806443189018361252598918878379750115671381302208359492989479788691296315103879614415315497226765926324750650688879579573184441121537145658402376135175947392541225631739068587087317065603451728076067703613292544\n", + "1920237359779462071833375013138626215089725823095116886525780370050943654545437677151712043296374950996763030982059932354221551567122545717520214671158568484570991322707807618357070253840291347927749494430922324264969818791219981174191877293017387880267952654876433744456025741862988005695605852769999771859961971802431299965496268533767625375362865875345998031762496536093280435135547889962455896567617205839660788389041742129088325249314094833091563829863874771100633498423083747310682831998123755032972195457291777750687238859851075544237931653555037531655781435811613604880149774984187922309360267466379588754347251378056253781014636050837639196457183494371046064173911907890919472776109200172315862880483245268733215859382293965241779821041588512646946106550254686157822445538811898356369373617439770911362522825429696810582853373905612886378036722505197837756759500231342762604416718985978959577382592630207759228830630994453531852649501301377759159146368882243074291316804752270351894785082451263478137174174634131206903456152135407226585088\n", + "3840474719558924143666750026277252430179451646190233773051560740101887309090875354303424086592749901993526061964119864708443103134245091435040429342317136969141982645415615236714140507680582695855498988861844648529939637582439962348383754586034775760535905309752867488912051483725976011391211705539999543719923943604862599930992537067535250750725731750691996063524993072186560870271095779924911793135234411679321576778083484258176650498628189666183127659727749542201266996846167494621365663996247510065944390914583555501374477719702151088475863307110075063311562871623227209760299549968375844618720534932759177508694502756112507562029272101675278392914366988742092128347823815781838945552218400344631725760966490537466431718764587930483559642083177025293892213100509372315644891077623796712738747234879541822725045650859393621165706747811225772756073445010395675513519000462685525208833437971957919154765185260415518457661261988907063705299002602755518318292737764486148582633609504540703789570164902526956274348349268262413806912304270814453170176\n", + "7680949439117848287333500052554504860358903292380467546103121480203774618181750708606848173185499803987052123928239729416886206268490182870080858684634273938283965290831230473428281015361165391710997977723689297059879275164879924696767509172069551521071810619505734977824102967451952022782423411079999087439847887209725199861985074135070501501451463501383992127049986144373121740542191559849823586270468823358643153556166968516353300997256379332366255319455499084402533993692334989242731327992495020131888781829167111002748955439404302176951726614220150126623125743246454419520599099936751689237441069865518355017389005512225015124058544203350556785828733977484184256695647631563677891104436800689263451521932981074932863437529175860967119284166354050587784426201018744631289782155247593425477494469759083645450091301718787242331413495622451545512146890020791351027038000925371050417666875943915838309530370520831036915322523977814127410598005205511036636585475528972297165267219009081407579140329805053912548696698536524827613824608541628906340352\n", + "15361898878235696574667000105109009720717806584760935092206242960407549236363501417213696346370999607974104247856479458833772412536980365740161717369268547876567930581662460946856562030722330783421995955447378594119758550329759849393535018344139103042143621239011469955648205934903904045564846822159998174879695774419450399723970148270141003002902927002767984254099972288746243481084383119699647172540937646717286307112333937032706601994512758664732510638910998168805067987384669978485462655984990040263777563658334222005497910878808604353903453228440300253246251486492908839041198199873503378474882139731036710034778011024450030248117088406701113571657467954968368513391295263127355782208873601378526903043865962149865726875058351721934238568332708101175568852402037489262579564310495186850954988939518167290900182603437574484662826991244903091024293780041582702054076001850742100835333751887831676619060741041662073830645047955628254821196010411022073273170951057944594330534438018162815158280659610107825097393397073049655227649217083257812680704\n", + "30723797756471393149334000210218019441435613169521870184412485920815098472727002834427392692741999215948208495712958917667544825073960731480323434738537095753135861163324921893713124061444661566843991910894757188239517100659519698787070036688278206084287242478022939911296411869807808091129693644319996349759391548838900799447940296540282006005805854005535968508199944577492486962168766239399294345081875293434572614224667874065413203989025517329465021277821996337610135974769339956970925311969980080527555127316668444010995821757617208707806906456880600506492502972985817678082396399747006756949764279462073420069556022048900060496234176813402227143314935909936737026782590526254711564417747202757053806087731924299731453750116703443868477136665416202351137704804074978525159128620990373701909977879036334581800365206875148969325653982489806182048587560083165404108152003701484201670667503775663353238121482083324147661290095911256509642392020822044146546341902115889188661068876036325630316561319220215650194786794146099310455298434166515625361408\n", + "61447595512942786298668000420436038882871226339043740368824971841630196945454005668854785385483998431896416991425917835335089650147921462960646869477074191506271722326649843787426248122889323133687983821789514376479034201319039397574140073376556412168574484956045879822592823739615616182259387288639992699518783097677801598895880593080564012011611708011071937016399889154984973924337532478798588690163750586869145228449335748130826407978051034658930042555643992675220271949538679913941850623939960161055110254633336888021991643515234417415613812913761201012985005945971635356164792799494013513899528558924146840139112044097800120992468353626804454286629871819873474053565181052509423128835494405514107612175463848599462907500233406887736954273330832404702275409608149957050318257241980747403819955758072669163600730413750297938651307964979612364097175120166330808216304007402968403341335007551326706476242964166648295322580191822513019284784041644088293092683804231778377322137752072651260633122638440431300389573588292198620910596868333031250722816\n", + "122895191025885572597336000840872077765742452678087480737649943683260393890908011337709570770967996863792833982851835670670179300295842925921293738954148383012543444653299687574852496245778646267375967643579028752958068402638078795148280146753112824337148969912091759645185647479231232364518774577279985399037566195355603197791761186161128024023223416022143874032799778309969947848675064957597177380327501173738290456898671496261652815956102069317860085111287985350440543899077359827883701247879920322110220509266673776043983287030468834831227625827522402025970011891943270712329585598988027027799057117848293680278224088195600241984936707253608908573259743639746948107130362105018846257670988811028215224350927697198925815000466813775473908546661664809404550819216299914100636514483961494807639911516145338327201460827500595877302615929959224728194350240332661616432608014805936806682670015102653412952485928333296590645160383645026038569568083288176586185367608463556754644275504145302521266245276880862600779147176584397241821193736666062501445632\n", + "245790382051771145194672001681744155531484905356174961475299887366520787781816022675419141541935993727585667965703671341340358600591685851842587477908296766025086889306599375149704992491557292534751935287158057505916136805276157590296560293506225648674297939824183519290371294958462464729037549154559970798075132390711206395583522372322256048046446832044287748065599556619939895697350129915194354760655002347476580913797342992523305631912204138635720170222575970700881087798154719655767402495759840644220441018533347552087966574060937669662455251655044804051940023783886541424659171197976054055598114235696587360556448176391200483969873414507217817146519487279493896214260724210037692515341977622056430448701855394397851630000933627550947817093323329618809101638432599828201273028967922989615279823032290676654402921655001191754605231859918449456388700480665323232865216029611873613365340030205306825904971856666593181290320767290052077139136166576353172370735216927113509288551008290605042532490553761725201558294353168794483642387473332125002891264\n", + "491580764103542290389344003363488311062969810712349922950599774733041575563632045350838283083871987455171335931407342682680717201183371703685174955816593532050173778613198750299409984983114585069503870574316115011832273610552315180593120587012451297348595879648367038580742589916924929458075098309119941596150264781422412791167044744644512096092893664088575496131199113239879791394700259830388709521310004694953161827594685985046611263824408277271440340445151941401762175596309439311534804991519681288440882037066695104175933148121875339324910503310089608103880047567773082849318342395952108111196228471393174721112896352782400967939746829014435634293038974558987792428521448420075385030683955244112860897403710788795703260001867255101895634186646659237618203276865199656402546057935845979230559646064581353308805843310002383509210463719836898912777400961330646465730432059223747226730680060410613651809943713333186362580641534580104154278272333152706344741470433854227018577102016581210085064981107523450403116588706337588967284774946664250005782528\n", + "983161528207084580778688006726976622125939621424699845901199549466083151127264090701676566167743974910342671862814685365361434402366743407370349911633187064100347557226397500598819969966229170139007741148632230023664547221104630361186241174024902594697191759296734077161485179833849858916150196618239883192300529562844825582334089489289024192185787328177150992262398226479759582789400519660777419042620009389906323655189371970093222527648816554542880680890303882803524351192618878623069609983039362576881764074133390208351866296243750678649821006620179216207760095135546165698636684791904216222392456942786349442225792705564801935879493658028871268586077949117975584857042896840150770061367910488225721794807421577591406520003734510203791268373293318475236406553730399312805092115871691958461119292129162706617611686620004767018420927439673797825554801922661292931460864118447494453461360120821227303619887426666372725161283069160208308556544666305412689482940867708454037154204033162420170129962215046900806233177412675177934569549893328500011565056\n", + "1966323056414169161557376013453953244251879242849399691802399098932166302254528181403353132335487949820685343725629370730722868804733486814740699823266374128200695114452795001197639939932458340278015482297264460047329094442209260722372482348049805189394383518593468154322970359667699717832300393236479766384601059125689651164668178978578048384371574656354301984524796452959519165578801039321554838085240018779812647310378743940186445055297633109085761361780607765607048702385237757246139219966078725153763528148266780416703732592487501357299642013240358432415520190271092331397273369583808432444784913885572698884451585411129603871758987316057742537172155898235951169714085793680301540122735820976451443589614843155182813040007469020407582536746586636950472813107460798625610184231743383916922238584258325413235223373240009534036841854879347595651109603845322585862921728236894988906922720241642454607239774853332745450322566138320416617113089332610825378965881735416908074308408066324840340259924430093801612466354825350355869139099786657000023130112\n", + "3932646112828338323114752026907906488503758485698799383604798197864332604509056362806706264670975899641370687451258741461445737609466973629481399646532748256401390228905590002395279879864916680556030964594528920094658188884418521444744964696099610378788767037186936308645940719335399435664600786472959532769202118251379302329336357957156096768743149312708603969049592905919038331157602078643109676170480037559625294620757487880372890110595266218171522723561215531214097404770475514492278439932157450307527056296533560833407465184975002714599284026480716864831040380542184662794546739167616864889569827771145397768903170822259207743517974632115485074344311796471902339428171587360603080245471641952902887179229686310365626080014938040815165073493173273900945626214921597251220368463486767833844477168516650826470446746480019068073683709758695191302219207690645171725843456473789977813845440483284909214479549706665490900645132276640833234226178665221650757931763470833816148616816132649680680519848860187603224932709650700711738278199573314000046260224\n", + "7865292225656676646229504053815812977007516971397598767209596395728665209018112725613412529341951799282741374902517482922891475218933947258962799293065496512802780457811180004790559759729833361112061929189057840189316377768837042889489929392199220757577534074373872617291881438670798871329201572945919065538404236502758604658672715914312193537486298625417207938099185811838076662315204157286219352340960075119250589241514975760745780221190532436343045447122431062428194809540951028984556879864314900615054112593067121666814930369950005429198568052961433729662080761084369325589093478335233729779139655542290795537806341644518415487035949264230970148688623592943804678856343174721206160490943283905805774358459372620731252160029876081630330146986346547801891252429843194502440736926973535667688954337033301652940893492960038136147367419517390382604438415381290343451686912947579955627690880966569818428959099413330981801290264553281666468452357330443301515863526941667632297233632265299361361039697720375206449865419301401423476556399146628000092520448\n", + "15730584451313353292459008107631625954015033942795197534419192791457330418036225451226825058683903598565482749805034965845782950437867894517925598586130993025605560915622360009581119519459666722224123858378115680378632755537674085778979858784398441515155068148747745234583762877341597742658403145891838131076808473005517209317345431828624387074972597250834415876198371623676153324630408314572438704681920150238501178483029951521491560442381064872686090894244862124856389619081902057969113759728629801230108225186134243333629860739900010858397136105922867459324161522168738651178186956670467459558279311084581591075612683289036830974071898528461940297377247185887609357712686349442412320981886567811611548716918745241462504320059752163260660293972693095603782504859686389004881473853947071335377908674066603305881786985920076272294734839034780765208876830762580686903373825895159911255381761933139636857918198826661963602580529106563332936904714660886603031727053883335264594467264530598722722079395440750412899730838602802846953112798293256000185040896\n", + "31461168902626706584918016215263251908030067885590395068838385582914660836072450902453650117367807197130965499610069931691565900875735789035851197172261986051211121831244720019162239038919333444448247716756231360757265511075348171557959717568796883030310136297495490469167525754683195485316806291783676262153616946011034418634690863657248774149945194501668831752396743247352306649260816629144877409363840300477002356966059903042983120884762129745372181788489724249712779238163804115938227519457259602460216450372268486667259721479800021716794272211845734918648323044337477302356373913340934919116558622169163182151225366578073661948143797056923880594754494371775218715425372698884824641963773135623223097433837490482925008640119504326521320587945386191207565009719372778009762947707894142670755817348133206611763573971840152544589469678069561530417753661525161373806747651790319822510763523866279273715836397653323927205161058213126665873809429321773206063454107766670529188934529061197445444158790881500825799461677205605693906225596586512000370081792\n", + "62922337805253413169836032430526503816060135771180790137676771165829321672144901804907300234735614394261930999220139863383131801751471578071702394344523972102422243662489440038324478077838666888896495433512462721514531022150696343115919435137593766060620272594990980938335051509366390970633612583567352524307233892022068837269381727314497548299890389003337663504793486494704613298521633258289754818727680600954004713932119806085966241769524259490744363576979448499425558476327608231876455038914519204920432900744536973334519442959600043433588544423691469837296646088674954604712747826681869838233117244338326364302450733156147323896287594113847761189508988743550437430850745397769649283927546271246446194867674980965850017280239008653042641175890772382415130019438745556019525895415788285341511634696266413223527147943680305089178939356139123060835507323050322747613495303580639645021527047732558547431672795306647854410322116426253331747618858643546412126908215533341058377869058122394890888317581763001651598923354411211387812451193173024000740163584\n", + "125844675610506826339672064861053007632120271542361580275353542331658643344289803609814600469471228788523861998440279726766263603502943156143404788689047944204844487324978880076648956155677333777792990867024925443029062044301392686231838870275187532121240545189981961876670103018732781941267225167134705048614467784044137674538763454628995096599780778006675327009586972989409226597043266516579509637455361201908009427864239612171932483539048518981488727153958896998851116952655216463752910077829038409840865801489073946669038885919200086867177088847382939674593292177349909209425495653363739676466234488676652728604901466312294647792575188227695522379017977487100874861701490795539298567855092542492892389735349961931700034560478017306085282351781544764830260038877491112039051790831576570683023269392532826447054295887360610178357878712278246121671014646100645495226990607161279290043054095465117094863345590613295708820644232852506663495237717287092824253816431066682116755738116244789781776635163526003303197846708822422775624902386346048001480327168\n", + "251689351221013652679344129722106015264240543084723160550707084663317286688579607219629200938942457577047723996880559453532527207005886312286809577378095888409688974649957760153297912311354667555585981734049850886058124088602785372463677740550375064242481090379963923753340206037465563882534450334269410097228935568088275349077526909257990193199561556013350654019173945978818453194086533033159019274910722403816018855728479224343864967078097037962977454307917793997702233905310432927505820155658076819681731602978147893338077771838400173734354177694765879349186584354699818418850991306727479352932468977353305457209802932624589295585150376455391044758035954974201749723402981591078597135710185084985784779470699923863400069120956034612170564703563089529660520077754982224078103581663153141366046538785065652894108591774721220356715757424556492243342029292201290990453981214322558580086108190930234189726691181226591417641288465705013326990475434574185648507632862133364233511476232489579563553270327052006606395693417644845551249804772692096002960654336\n", + "503378702442027305358688259444212030528481086169446321101414169326634573377159214439258401877884915154095447993761118907065054414011772624573619154756191776819377949299915520306595824622709335111171963468099701772116248177205570744927355481100750128484962180759927847506680412074931127765068900668538820194457871136176550698155053818515980386399123112026701308038347891957636906388173066066318038549821444807632037711456958448687729934156194075925954908615835587995404467810620865855011640311316153639363463205956295786676155543676800347468708355389531758698373168709399636837701982613454958705864937954706610914419605865249178591170300752910782089516071909948403499446805963182157194271420370169971569558941399847726800138241912069224341129407126179059321040155509964448156207163326306282732093077570131305788217183549442440713431514849112984486684058584402581980907962428645117160172216381860468379453382362453182835282576931410026653980950869148371297015265724266728467022952464979159127106540654104013212791386835289691102499609545384192005921308672\n", + "1006757404884054610717376518888424061056962172338892642202828338653269146754318428878516803755769830308190895987522237814130108828023545249147238309512383553638755898599831040613191649245418670222343926936199403544232496354411141489854710962201500256969924361519855695013360824149862255530137801337077640388915742272353101396310107637031960772798246224053402616076695783915273812776346132132636077099642889615264075422913916897375459868312388151851909817231671175990808935621241731710023280622632307278726926411912591573352311087353600694937416710779063517396746337418799273675403965226909917411729875909413221828839211730498357182340601505821564179032143819896806998893611926364314388542840740339943139117882799695453600276483824138448682258814252358118642080311019928896312414326652612565464186155140262611576434367098884881426863029698225968973368117168805163961815924857290234320344432763720936758906764724906365670565153862820053307961901738296742594030531448533456934045904929958318254213081308208026425582773670579382204999219090768384011842617344\n", + "2013514809768109221434753037776848122113924344677785284405656677306538293508636857757033607511539660616381791975044475628260217656047090498294476619024767107277511797199662081226383298490837340444687853872398807088464992708822282979709421924403000513939848723039711390026721648299724511060275602674155280777831484544706202792620215274063921545596492448106805232153391567830547625552692264265272154199285779230528150845827833794750919736624776303703819634463342351981617871242483463420046561245264614557453852823825183146704622174707201389874833421558127034793492674837598547350807930453819834823459751818826443657678423460996714364681203011643128358064287639793613997787223852728628777085681480679886278235765599390907200552967648276897364517628504716237284160622039857792624828653305225130928372310280525223152868734197769762853726059396451937946736234337610327923631849714580468640688865527441873517813529449812731341130307725640106615923803476593485188061062897066913868091809859916636508426162616416052851165547341158764409998438181536768023685234688\n", + "4027029619536218442869506075553696244227848689355570568811313354613076587017273715514067215023079321232763583950088951256520435312094180996588953238049534214555023594399324162452766596981674680889375707744797614176929985417644565959418843848806001027879697446079422780053443296599449022120551205348310561555662969089412405585240430548127843091192984896213610464306783135661095251105384528530544308398571558461056301691655667589501839473249552607407639268926684703963235742484966926840093122490529229114907705647650366293409244349414402779749666843116254069586985349675197094701615860907639669646919503637652887315356846921993428729362406023286256716128575279587227995574447705457257554171362961359772556471531198781814401105935296553794729035257009432474568321244079715585249657306610450261856744620561050446305737468395539525707452118792903875893472468675220655847263699429160937281377731054883747035627058899625462682260615451280213231847606953186970376122125794133827736183619719833273016852325232832105702331094682317528819996876363073536047370469376\n", + "8054059239072436885739012151107392488455697378711141137622626709226153174034547431028134430046158642465527167900177902513040870624188361993177906476099068429110047188798648324905533193963349361778751415489595228353859970835289131918837687697612002055759394892158845560106886593198898044241102410696621123111325938178824811170480861096255686182385969792427220928613566271322190502210769057061088616797143116922112603383311335179003678946499105214815278537853369407926471484969933853680186244981058458229815411295300732586818488698828805559499333686232508139173970699350394189403231721815279339293839007275305774630713693843986857458724812046572513432257150559174455991148895410914515108342725922719545112943062397563628802211870593107589458070514018864949136642488159431170499314613220900523713489241122100892611474936791079051414904237585807751786944937350441311694527398858321874562755462109767494071254117799250925364521230902560426463695213906373940752244251588267655472367239439666546033704650465664211404662189364635057639993752726147072094740938752\n", + "16108118478144873771478024302214784976911394757422282275245253418452306348069094862056268860092317284931054335800355805026081741248376723986355812952198136858220094377597296649811066387926698723557502830979190456707719941670578263837675375395224004111518789784317691120213773186397796088482204821393242246222651876357649622340961722192511372364771939584854441857227132542644381004421538114122177233594286233844225206766622670358007357892998210429630557075706738815852942969939867707360372489962116916459630822590601465173636977397657611118998667372465016278347941398700788378806463443630558678587678014550611549261427387687973714917449624093145026864514301118348911982297790821829030216685451845439090225886124795127257604423741186215178916141028037729898273284976318862340998629226441801047426978482244201785222949873582158102829808475171615503573889874700882623389054797716643749125510924219534988142508235598501850729042461805120852927390427812747881504488503176535310944734478879333092067409300931328422809324378729270115279987505452294144189481877504\n", + "32216236956289747542956048604429569953822789514844564550490506836904612696138189724112537720184634569862108671600711610052163482496753447972711625904396273716440188755194593299622132775853397447115005661958380913415439883341156527675350750790448008223037579568635382240427546372795592176964409642786484492445303752715299244681923444385022744729543879169708883714454265085288762008843076228244354467188572467688450413533245340716014715785996420859261114151413477631705885939879735414720744979924233832919261645181202930347273954795315222237997334744930032556695882797401576757612926887261117357175356029101223098522854775375947429834899248186290053729028602236697823964595581643658060433370903690878180451772249590254515208847482372430357832282056075459796546569952637724681997258452883602094853956964488403570445899747164316205659616950343231007147779749401765246778109595433287498251021848439069976285016471197003701458084923610241705854780855625495763008977006353070621889468957758666184134818601862656845618648757458540230559975010904588288378963755008\n", + "64432473912579495085912097208859139907645579029689129100981013673809225392276379448225075440369269139724217343201423220104326964993506895945423251808792547432880377510389186599244265551706794894230011323916761826830879766682313055350701501580896016446075159137270764480855092745591184353928819285572968984890607505430598489363846888770045489459087758339417767428908530170577524017686152456488708934377144935376900827066490681432029431571992841718522228302826955263411771879759470829441489959848467665838523290362405860694547909590630444475994669489860065113391765594803153515225853774522234714350712058202446197045709550751894859669798496372580107458057204473395647929191163287316120866741807381756360903544499180509030417694964744860715664564112150919593093139905275449363994516905767204189707913928976807140891799494328632411319233900686462014295559498803530493556219190866574996502043696878139952570032942394007402916169847220483411709561711250991526017954012706141243778937915517332368269637203725313691237297514917080461119950021809176576757927510016\n", + "128864947825158990171824194417718279815291158059378258201962027347618450784552758896450150880738538279448434686402846440208653929987013791890846503617585094865760755020778373198488531103413589788460022647833523653661759533364626110701403003161792032892150318274541528961710185491182368707857638571145937969781215010861196978727693777540090978918175516678835534857817060341155048035372304912977417868754289870753801654132981362864058863143985683437044456605653910526823543759518941658882979919696935331677046580724811721389095819181260888951989338979720130226783531189606307030451707549044469428701424116404892394091419101503789719339596992745160214916114408946791295858382326574632241733483614763512721807088998361018060835389929489721431329128224301839186186279810550898727989033811534408379415827857953614281783598988657264822638467801372924028591118997607060987112438381733149993004087393756279905140065884788014805832339694440966823419123422501983052035908025412282487557875831034664736539274407450627382474595029834160922239900043618353153515855020032\n", + "257729895650317980343648388835436559630582316118756516403924054695236901569105517792900301761477076558896869372805692880417307859974027583781693007235170189731521510041556746396977062206827179576920045295667047307323519066729252221402806006323584065784300636549083057923420370982364737415715277142291875939562430021722393957455387555080181957836351033357671069715634120682310096070744609825954835737508579741507603308265962725728117726287971366874088913211307821053647087519037883317765959839393870663354093161449623442778191638362521777903978677959440260453567062379212614060903415098088938857402848232809784788182838203007579438679193985490320429832228817893582591716764653149264483466967229527025443614177996722036121670779858979442862658256448603678372372559621101797455978067623068816758831655715907228563567197977314529645276935602745848057182237995214121974224876763466299986008174787512559810280131769576029611664679388881933646838246845003966104071816050824564975115751662069329473078548814901254764949190059668321844479800087236706307031710040064\n", + "515459791300635960687296777670873119261164632237513032807848109390473803138211035585800603522954153117793738745611385760834615719948055167563386014470340379463043020083113492793954124413654359153840090591334094614647038133458504442805612012647168131568601273098166115846840741964729474831430554284583751879124860043444787914910775110160363915672702066715342139431268241364620192141489219651909671475017159483015206616531925451456235452575942733748177826422615642107294175038075766635531919678787741326708186322899246885556383276725043555807957355918880520907134124758425228121806830196177877714805696465619569576365676406015158877358387970980640859664457635787165183433529306298528966933934459054050887228355993444072243341559717958885725316512897207356744745119242203594911956135246137633517663311431814457127134395954629059290553871205491696114364475990428243948449753526932599972016349575025119620560263539152059223329358777763867293676493690007932208143632101649129950231503324138658946157097629802509529898380119336643688959600174473412614063420080128\n", + "1030919582601271921374593555341746238522329264475026065615696218780947606276422071171601207045908306235587477491222771521669231439896110335126772028940680758926086040166226985587908248827308718307680181182668189229294076266917008885611224025294336263137202546196332231693681483929458949662861108569167503758249720086889575829821550220320727831345404133430684278862536482729240384282978439303819342950034318966030413233063850902912470905151885467496355652845231284214588350076151533271063839357575482653416372645798493771112766553450087111615914711837761041814268249516850456243613660392355755429611392931239139152731352812030317754716775941961281719328915271574330366867058612597057933867868918108101774456711986888144486683119435917771450633025794414713489490238484407189823912270492275267035326622863628914254268791909258118581107742410983392228728951980856487896899507053865199944032699150050239241120527078304118446658717555527734587352987380015864416287264203298259900463006648277317892314195259605019059796760238673287377919200348946825228126840160256\n", + "2061839165202543842749187110683492477044658528950052131231392437561895212552844142343202414091816612471174954982445543043338462879792220670253544057881361517852172080332453971175816497654617436615360362365336378458588152533834017771222448050588672526274405092392664463387362967858917899325722217138335007516499440173779151659643100440641455662690808266861368557725072965458480768565956878607638685900068637932060826466127701805824941810303770934992711305690462568429176700152303066542127678715150965306832745291596987542225533106900174223231829423675522083628536499033700912487227320784711510859222785862478278305462705624060635509433551883922563438657830543148660733734117225194115867735737836216203548913423973776288973366238871835542901266051588829426978980476968814379647824540984550534070653245727257828508537583818516237162215484821966784457457903961712975793799014107730399888065398300100478482241054156608236893317435111055469174705974760031728832574528406596519800926013296554635784628390519210038119593520477346574755838400697893650456253680320512\n", + "4123678330405087685498374221366984954089317057900104262462784875123790425105688284686404828183633224942349909964891086086676925759584441340507088115762723035704344160664907942351632995309234873230720724730672756917176305067668035542444896101177345052548810184785328926774725935717835798651444434276670015032998880347558303319286200881282911325381616533722737115450145930916961537131913757215277371800137275864121652932255403611649883620607541869985422611380925136858353400304606133084255357430301930613665490583193975084451066213800348446463658847351044167257072998067401824974454641569423021718445571724956556610925411248121271018867103767845126877315661086297321467468234450388231735471475672432407097826847947552577946732477743671085802532103177658853957960953937628759295649081969101068141306491454515657017075167637032474324430969643933568914915807923425951587598028215460799776130796600200956964482108313216473786634870222110938349411949520063457665149056813193039601852026593109271569256781038420076239187040954693149511676801395787300912507360641024\n", + "8247356660810175370996748442733969908178634115800208524925569750247580850211376569372809656367266449884699819929782172173353851519168882681014176231525446071408688321329815884703265990618469746461441449461345513834352610135336071084889792202354690105097620369570657853549451871435671597302888868553340030065997760695116606638572401762565822650763233067445474230900291861833923074263827514430554743600274551728243305864510807223299767241215083739970845222761850273716706800609212266168510714860603861227330981166387950168902132427600696892927317694702088334514145996134803649948909283138846043436891143449913113221850822496242542037734207535690253754631322172594642934936468900776463470942951344864814195653695895105155893464955487342171605064206355317707915921907875257518591298163938202136282612982909031314034150335274064948648861939287867137829831615846851903175196056430921599552261593200401913928964216626432947573269740444221876698823899040126915330298113626386079203704053186218543138513562076840152478374081909386299023353602791574601825014721282048\n", + "16494713321620350741993496885467939816357268231600417049851139500495161700422753138745619312734532899769399639859564344346707703038337765362028352463050892142817376642659631769406531981236939492922882898922691027668705220270672142169779584404709380210195240739141315707098903742871343194605777737106680060131995521390233213277144803525131645301526466134890948461800583723667846148527655028861109487200549103456486611729021614446599534482430167479941690445523700547433413601218424532337021429721207722454661962332775900337804264855201393785854635389404176669028291992269607299897818566277692086873782286899826226443701644992485084075468415071380507509262644345189285869872937801552926941885902689729628391307391790210311786929910974684343210128412710635415831843815750515037182596327876404272565225965818062628068300670548129897297723878575734275659663231693703806350392112861843199104523186400803827857928433252865895146539480888443753397647798080253830660596227252772158407408106372437086277027124153680304956748163818772598046707205583149203650029442564096\n", + "32989426643240701483986993770935879632714536463200834099702279000990323400845506277491238625469065799538799279719128688693415406076675530724056704926101784285634753285319263538813063962473878985845765797845382055337410440541344284339559168809418760420390481478282631414197807485742686389211555474213360120263991042780466426554289607050263290603052932269781896923601167447335692297055310057722218974401098206912973223458043228893199068964860334959883380891047401094866827202436849064674042859442415444909323924665551800675608529710402787571709270778808353338056583984539214599795637132555384173747564573799652452887403289984970168150936830142761015018525288690378571739745875603105853883771805379459256782614783580420623573859821949368686420256825421270831663687631501030074365192655752808545130451931636125256136601341096259794595447757151468551319326463387407612700784225723686398209046372801607655715856866505731790293078961776887506795295596160507661321192454505544316814816212744874172554054248307360609913496327637545196093414411166298407300058885128192\n", + "65978853286481402967973987541871759265429072926401668199404558001980646801691012554982477250938131599077598559438257377386830812153351061448113409852203568571269506570638527077626127924947757971691531595690764110674820881082688568679118337618837520840780962956565262828395614971485372778423110948426720240527982085560932853108579214100526581206105864539563793847202334894671384594110620115444437948802196413825946446916086457786398137929720669919766761782094802189733654404873698129348085718884830889818647849331103601351217059420805575143418541557616706676113167969078429199591274265110768347495129147599304905774806579969940336301873660285522030037050577380757143479491751206211707767543610758918513565229567160841247147719643898737372840513650842541663327375263002060148730385311505617090260903863272250512273202682192519589190895514302937102638652926774815225401568451447372796418092745603215311431713733011463580586157923553775013590591192321015322642384909011088633629632425489748345108108496614721219826992655275090392186828822332596814600117770256384\n", + "131957706572962805935947975083743518530858145852803336398809116003961293603382025109964954501876263198155197118876514754773661624306702122896226819704407137142539013141277054155252255849895515943383063191381528221349641762165377137358236675237675041681561925913130525656791229942970745556846221896853440481055964171121865706217158428201053162412211729079127587694404669789342769188221240230888875897604392827651892893832172915572796275859441339839533523564189604379467308809747396258696171437769661779637295698662207202702434118841611150286837083115233413352226335938156858399182548530221536694990258295198609811549613159939880672603747320571044060074101154761514286958983502412423415535087221517837027130459134321682494295439287797474745681027301685083326654750526004120297460770623011234180521807726544501024546405364385039178381791028605874205277305853549630450803136902894745592836185491206430622863427466022927161172315847107550027181182384642030645284769818022177267259264850979496690216216993229442439653985310550180784373657644665193629200235540512768\n", + "263915413145925611871895950167487037061716291705606672797618232007922587206764050219929909003752526396310394237753029509547323248613404245792453639408814274285078026282554108310504511699791031886766126382763056442699283524330754274716473350475350083363123851826261051313582459885941491113692443793706880962111928342243731412434316856402106324824423458158255175388809339578685538376442480461777751795208785655303785787664345831145592551718882679679067047128379208758934617619494792517392342875539323559274591397324414405404868237683222300573674166230466826704452671876313716798365097060443073389980516590397219623099226319879761345207494641142088120148202309523028573917967004824846831070174443035674054260918268643364988590878575594949491362054603370166653309501052008240594921541246022468361043615453089002049092810728770078356763582057211748410554611707099260901606273805789491185672370982412861245726854932045854322344631694215100054362364769284061290569539636044354534518529701958993380432433986458884879307970621100361568747315289330387258400471081025536\n", + "527830826291851223743791900334974074123432583411213345595236464015845174413528100439859818007505052792620788475506059019094646497226808491584907278817628548570156052565108216621009023399582063773532252765526112885398567048661508549432946700950700166726247703652522102627164919771882982227384887587413761924223856684487462824868633712804212649648846916316510350777618679157371076752884960923555503590417571310607571575328691662291185103437765359358134094256758417517869235238989585034784685751078647118549182794648828810809736475366444601147348332460933653408905343752627433596730194120886146779961033180794439246198452639759522690414989282284176240296404619046057147835934009649693662140348886071348108521836537286729977181757151189898982724109206740333306619002104016481189843082492044936722087230906178004098185621457540156713527164114423496821109223414198521803212547611578982371344741964825722491453709864091708644689263388430200108724729538568122581139079272088709069037059403917986760864867972917769758615941242200723137494630578660774516800942162051072\n", + "1055661652583702447487583800669948148246865166822426691190472928031690348827056200879719636015010105585241576951012118038189292994453616983169814557635257097140312105130216433242018046799164127547064505531052225770797134097323017098865893401901400333452495407305044205254329839543765964454769775174827523848447713368974925649737267425608425299297693832633020701555237358314742153505769921847111007180835142621215143150657383324582370206875530718716268188513516835035738470477979170069569371502157294237098365589297657621619472950732889202294696664921867306817810687505254867193460388241772293559922066361588878492396905279519045380829978564568352480592809238092114295671868019299387324280697772142696217043673074573459954363514302379797965448218413480666613238004208032962379686164984089873444174461812356008196371242915080313427054328228846993642218446828397043606425095223157964742689483929651444982907419728183417289378526776860400217449459077136245162278158544177418138074118807835973521729735945835539517231882484401446274989261157321549033601884324102144\n", + "2111323305167404894975167601339896296493730333644853382380945856063380697654112401759439272030020211170483153902024236076378585988907233966339629115270514194280624210260432866484036093598328255094129011062104451541594268194646034197731786803802800666904990814610088410508659679087531928909539550349655047696895426737949851299474534851216850598595387665266041403110474716629484307011539843694222014361670285242430286301314766649164740413751061437432536377027033670071476940955958340139138743004314588474196731178595315243238945901465778404589393329843734613635621375010509734386920776483544587119844132723177756984793810559038090761659957129136704961185618476184228591343736038598774648561395544285392434087346149146919908727028604759595930896436826961333226476008416065924759372329968179746888348923624712016392742485830160626854108656457693987284436893656794087212850190446315929485378967859302889965814839456366834578757053553720800434898918154272490324556317088354836276148237615671947043459471891671079034463764968802892549978522314643098067203768648204288\n", + "4222646610334809789950335202679792592987460667289706764761891712126761395308224803518878544060040422340966307804048472152757171977814467932679258230541028388561248420520865732968072187196656510188258022124208903083188536389292068395463573607605601333809981629220176821017319358175063857819079100699310095393790853475899702598949069702433701197190775330532082806220949433258968614023079687388444028723340570484860572602629533298329480827502122874865072754054067340142953881911916680278277486008629176948393462357190630486477891802931556809178786659687469227271242750021019468773841552967089174239688265446355513969587621118076181523319914258273409922371236952368457182687472077197549297122791088570784868174692298293839817454057209519191861792873653922666452952016832131849518744659936359493776697847249424032785484971660321253708217312915387974568873787313588174425700380892631858970757935718605779931629678912733669157514107107441600869797836308544980649112634176709672552296475231343894086918943783342158068927529937605785099957044629286196134407537296408576\n", + "8445293220669619579900670405359585185974921334579413529523783424253522790616449607037757088120080844681932615608096944305514343955628935865358516461082056777122496841041731465936144374393313020376516044248417806166377072778584136790927147215211202667619963258440353642034638716350127715638158201398620190787581706951799405197898139404867402394381550661064165612441898866517937228046159374776888057446681140969721145205259066596658961655004245749730145508108134680285907763823833360556554972017258353896786924714381260972955783605863113618357573319374938454542485500042038937547683105934178348479376530892711027939175242236152363046639828516546819844742473904736914365374944154395098594245582177141569736349384596587679634908114419038383723585747307845332905904033664263699037489319872718987553395694498848065570969943320642507416434625830775949137747574627176348851400761785263717941515871437211559863259357825467338315028214214883201739595672617089961298225268353419345104592950462687788173837887566684316137855059875211570199914089258572392268815074592817152\n", + "16890586441339239159801340810719170371949842669158827059047566848507045581232899214075514176240161689363865231216193888611028687911257871730717032922164113554244993682083462931872288748786626040753032088496835612332754145557168273581854294430422405335239926516880707284069277432700255431276316402797240381575163413903598810395796278809734804788763101322128331224883797733035874456092318749553776114893362281939442290410518133193317923310008491499460291016216269360571815527647666721113109944034516707793573849428762521945911567211726227236715146638749876909084971000084077875095366211868356696958753061785422055878350484472304726093279657033093639689484947809473828730749888308790197188491164354283139472698769193175359269816228838076767447171494615690665811808067328527398074978639745437975106791388997696131141939886641285014832869251661551898275495149254352697702801523570527435883031742874423119726518715650934676630056428429766403479191345234179922596450536706838690209185900925375576347675775133368632275710119750423140399828178517144784537630149185634304\n", + "33781172882678478319602681621438340743899685338317654118095133697014091162465798428151028352480323378727730462432387777222057375822515743461434065844328227108489987364166925863744577497573252081506064176993671224665508291114336547163708588860844810670479853033761414568138554865400510862552632805594480763150326827807197620791592557619469609577526202644256662449767595466071748912184637499107552229786724563878884580821036266386635846620016982998920582032432538721143631055295333442226219888069033415587147698857525043891823134423452454473430293277499753818169942000168155750190732423736713393917506123570844111756700968944609452186559314066187279378969895618947657461499776617580394376982328708566278945397538386350718539632457676153534894342989231381331623616134657054796149957279490875950213582777995392262283879773282570029665738503323103796550990298508705395405603047141054871766063485748846239453037431301869353260112856859532806958382690468359845192901073413677380418371801850751152695351550266737264551420239500846280799656357034289569075260298371268608\n", + "67562345765356956639205363242876681487799370676635308236190267394028182324931596856302056704960646757455460924864775554444114751645031486922868131688656454216979974728333851727489154995146504163012128353987342449331016582228673094327417177721689621340959706067522829136277109730801021725105265611188961526300653655614395241583185115238939219155052405288513324899535190932143497824369274998215104459573449127757769161642072532773271693240033965997841164064865077442287262110590666884452439776138066831174295397715050087783646268846904908946860586554999507636339884000336311500381464847473426787835012247141688223513401937889218904373118628132374558757939791237895314922999553235160788753964657417132557890795076772701437079264915352307069788685978462762663247232269314109592299914558981751900427165555990784524567759546565140059331477006646207593101980597017410790811206094282109743532126971497692478906074862603738706520225713719065613916765380936719690385802146827354760836743603701502305390703100533474529102840479001692561599312714068579138150520596742537216\n", + "135124691530713913278410726485753362975598741353270616472380534788056364649863193712604113409921293514910921849729551108888229503290062973845736263377312908433959949456667703454978309990293008326024256707974684898662033164457346188654834355443379242681919412135045658272554219461602043450210531222377923052601307311228790483166370230477878438310104810577026649799070381864286995648738549996430208919146898255515538323284145065546543386480067931995682328129730154884574524221181333768904879552276133662348590795430100175567292537693809817893721173109999015272679768000672623000762929694946853575670024494283376447026803875778437808746237256264749117515879582475790629845999106470321577507929314834265115781590153545402874158529830704614139577371956925525326494464538628219184599829117963503800854331111981569049135519093130280118662954013292415186203961194034821581622412188564219487064253942995384957812149725207477413040451427438131227833530761873439380771604293654709521673487207403004610781406201066949058205680958003385123198625428137158276301041193485074432\n", + "270249383061427826556821452971506725951197482706541232944761069576112729299726387425208226819842587029821843699459102217776459006580125947691472526754625816867919898913335406909956619980586016652048513415949369797324066328914692377309668710886758485363838824270091316545108438923204086900421062444755846105202614622457580966332740460955756876620209621154053299598140763728573991297477099992860417838293796511031076646568290131093086772960135863991364656259460309769149048442362667537809759104552267324697181590860200351134585075387619635787442346219998030545359536001345246001525859389893707151340048988566752894053607751556875617492474512529498235031759164951581259691998212940643155015858629668530231563180307090805748317059661409228279154743913851050652988929077256438369199658235927007601708662223963138098271038186260560237325908026584830372407922388069643163244824377128438974128507885990769915624299450414954826080902854876262455667061523746878761543208587309419043346974414806009221562812402133898116411361916006770246397250856274316552602082386970148864\n", + "540498766122855653113642905943013451902394965413082465889522139152225458599452774850416453639685174059643687398918204435552918013160251895382945053509251633735839797826670813819913239961172033304097026831898739594648132657829384754619337421773516970727677648540182633090216877846408173800842124889511692210405229244915161932665480921911513753240419242308106599196281527457147982594954199985720835676587593022062153293136580262186173545920271727982729312518920619538298096884725335075619518209104534649394363181720400702269170150775239271574884692439996061090719072002690492003051718779787414302680097977133505788107215503113751234984949025058996470063518329903162519383996425881286310031717259337060463126360614181611496634119322818456558309487827702101305977858154512876738399316471854015203417324447926276196542076372521120474651816053169660744815844776139286326489648754256877948257015771981539831248598900829909652161805709752524911334123047493757523086417174618838086693948829612018443125624804267796232822723832013540492794501712548633105204164773940297728\n", + "1080997532245711306227285811886026903804789930826164931779044278304450917198905549700832907279370348119287374797836408871105836026320503790765890107018503267471679595653341627639826479922344066608194053663797479189296265315658769509238674843547033941455355297080365266180433755692816347601684249779023384420810458489830323865330961843823027506480838484616213198392563054914295965189908399971441671353175186044124306586273160524372347091840543455965458625037841239076596193769450670151239036418209069298788726363440801404538340301550478543149769384879992122181438144005380984006103437559574828605360195954267011576214431006227502469969898050117992940127036659806325038767992851762572620063434518674120926252721228363222993268238645636913116618975655404202611955716309025753476798632943708030406834648895852552393084152745042240949303632106339321489631689552278572652979297508513755896514031543963079662497197801659819304323611419505049822668246094987515046172834349237676173387897659224036886251249608535592465645447664027080985589003425097266210408329547880595456\n", + "2161995064491422612454571623772053807609579861652329863558088556608901834397811099401665814558740696238574749595672817742211672052641007581531780214037006534943359191306683255279652959844688133216388107327594958378592530631317539018477349687094067882910710594160730532360867511385632695203368499558046768841620916979660647730661923687646055012961676969232426396785126109828591930379816799942883342706350372088248613172546321048744694183681086911930917250075682478153192387538901340302478072836418138597577452726881602809076680603100957086299538769759984244362876288010761968012206875119149657210720391908534023152428862012455004939939796100235985880254073319612650077535985703525145240126869037348241852505442456726445986536477291273826233237951310808405223911432618051506953597265887416060813669297791705104786168305490084481898607264212678642979263379104557145305958595017027511793028063087926159324994395603319638608647222839010099645336492189975030092345668698475352346775795318448073772502499217071184931290895328054161971178006850194532420816659095761190912\n", + "4323990128982845224909143247544107615219159723304659727116177113217803668795622198803331629117481392477149499191345635484423344105282015163063560428074013069886718382613366510559305919689376266432776214655189916757185061262635078036954699374188135765821421188321461064721735022771265390406736999116093537683241833959321295461323847375292110025923353938464852793570252219657183860759633599885766685412700744176497226345092642097489388367362173823861834500151364956306384775077802680604956145672836277195154905453763205618153361206201914172599077539519968488725752576021523936024413750238299314421440783817068046304857724024910009879879592200471971760508146639225300155071971407050290480253738074696483705010884913452891973072954582547652466475902621616810447822865236103013907194531774832121627338595583410209572336610980168963797214528425357285958526758209114290611917190034055023586056126175852318649988791206639277217294445678020199290672984379950060184691337396950704693551590636896147545004998434142369862581790656108323942356013700389064841633318191522381824\n", + "8647980257965690449818286495088215230438319446609319454232354226435607337591244397606663258234962784954298998382691270968846688210564030326127120856148026139773436765226733021118611839378752532865552429310379833514370122525270156073909398748376271531642842376642922129443470045542530780813473998232187075366483667918642590922647694750584220051846707876929705587140504439314367721519267199771533370825401488352994452690185284194978776734724347647723669000302729912612769550155605361209912291345672554390309810907526411236306722412403828345198155079039936977451505152043047872048827500476598628842881567634136092609715448049820019759759184400943943521016293278450600310143942814100580960507476149392967410021769826905783946145909165095304932951805243233620895645730472206027814389063549664243254677191166820419144673221960337927594429056850714571917053516418228581223834380068110047172112252351704637299977582413278554434588891356040398581345968759900120369382674793901409387103181273792295090009996868284739725163581312216647884712027400778129683266636383044763648\n", + "17295960515931380899636572990176430460876638893218638908464708452871214675182488795213326516469925569908597996765382541937693376421128060652254241712296052279546873530453466042237223678757505065731104858620759667028740245050540312147818797496752543063285684753285844258886940091085061561626947996464374150732967335837285181845295389501168440103693415753859411174281008878628735443038534399543066741650802976705988905380370568389957553469448695295447338000605459825225539100311210722419824582691345108780619621815052822472613444824807656690396310158079873954903010304086095744097655000953197257685763135268272185219430896099640039519518368801887887042032586556901200620287885628201161921014952298785934820043539653811567892291818330190609865903610486467241791291460944412055628778127099328486509354382333640838289346443920675855188858113701429143834107032836457162447668760136220094344224504703409274599955164826557108869177782712080797162691937519800240738765349587802818774206362547584590180019993736569479450327162624433295769424054801556259366533272766089527296\n", + "34591921031862761799273145980352860921753277786437277816929416905742429350364977590426653032939851139817195993530765083875386752842256121304508483424592104559093747060906932084474447357515010131462209717241519334057480490101080624295637594993505086126571369506571688517773880182170123123253895992928748301465934671674570363690590779002336880207386831507718822348562017757257470886077068799086133483301605953411977810760741136779915106938897390590894676001210919650451078200622421444839649165382690217561239243630105644945226889649615313380792620316159747909806020608172191488195310001906394515371526270536544370438861792199280079039036737603775774084065173113802401240575771256402323842029904597571869640087079307623135784583636660381219731807220972934483582582921888824111257556254198656973018708764667281676578692887841351710377716227402858287668214065672914324895337520272440188688449009406818549199910329653114217738355565424161594325383875039600481477530699175605637548412725095169180360039987473138958900654325248866591538848109603112518733066545532179054592\n", + "69183842063725523598546291960705721843506555572874555633858833811484858700729955180853306065879702279634391987061530167750773505684512242609016966849184209118187494121813864168948894715030020262924419434483038668114960980202161248591275189987010172253142739013143377035547760364340246246507791985857496602931869343349140727381181558004673760414773663015437644697124035514514941772154137598172266966603211906823955621521482273559830213877794781181789352002421839300902156401244842889679298330765380435122478487260211289890453779299230626761585240632319495819612041216344382976390620003812789030743052541073088740877723584398560158078073475207551548168130346227604802481151542512804647684059809195143739280174158615246271569167273320762439463614441945868967165165843777648222515112508397313946037417529334563353157385775682703420755432454805716575336428131345828649790675040544880377376898018813637098399820659306228435476711130848323188650767750079200962955061398351211275096825450190338360720079974946277917801308650497733183077696219206225037466133091064358109184\n", + "138367684127451047197092583921411443687013111145749111267717667622969717401459910361706612131759404559268783974123060335501547011369024485218033933698368418236374988243627728337897789430060040525848838868966077336229921960404322497182550379974020344506285478026286754071095520728680492493015583971714993205863738686698281454762363116009347520829547326030875289394248071029029883544308275196344533933206423813647911243042964547119660427755589562363578704004843678601804312802489685779358596661530760870244956974520422579780907558598461253523170481264638991639224082432688765952781240007625578061486105082146177481755447168797120316156146950415103096336260692455209604962303085025609295368119618390287478560348317230492543138334546641524878927228883891737934330331687555296445030225016794627892074835058669126706314771551365406841510864909611433150672856262691657299581350081089760754753796037627274196799641318612456870953422261696646377301535500158401925910122796702422550193650900380676721440159949892555835602617300995466366155392438412450074932266182128716218368\n", + "276735368254902094394185167842822887374026222291498222535435335245939434802919820723413224263518809118537567948246120671003094022738048970436067867396736836472749976487255456675795578860120081051697677737932154672459843920808644994365100759948040689012570956052573508142191041457360984986031167943429986411727477373396562909524726232018695041659094652061750578788496142058059767088616550392689067866412847627295822486085929094239320855511179124727157408009687357203608625604979371558717193323061521740489913949040845159561815117196922507046340962529277983278448164865377531905562480015251156122972210164292354963510894337594240632312293900830206192672521384910419209924606170051218590736239236780574957120696634460985086276669093283049757854457767783475868660663375110592890060450033589255784149670117338253412629543102730813683021729819222866301345712525383314599162700162179521509507592075254548393599282637224913741906844523393292754603071000316803851820245593404845100387301800761353442880319899785111671205234601990932732310784876824900149864532364257432436736\n", + "553470736509804188788370335685645774748052444582996445070870670491878869605839641446826448527037618237075135896492241342006188045476097940872135734793473672945499952974510913351591157720240162103395355475864309344919687841617289988730201519896081378025141912105147016284382082914721969972062335886859972823454954746793125819049452464037390083318189304123501157576992284116119534177233100785378135732825695254591644972171858188478641711022358249454314816019374714407217251209958743117434386646123043480979827898081690319123630234393845014092681925058555966556896329730755063811124960030502312245944420328584709927021788675188481264624587801660412385345042769820838419849212340102437181472478473561149914241393268921970172553338186566099515708915535566951737321326750221185780120900067178511568299340234676506825259086205461627366043459638445732602691425050766629198325400324359043019015184150509096787198565274449827483813689046786585509206142000633607703640491186809690200774603601522706885760639799570223342410469203981865464621569753649800299729064728514864873472\n", + "1106941473019608377576740671371291549496104889165992890141741340983757739211679282893652897054075236474150271792984482684012376090952195881744271469586947345890999905949021826703182315440480324206790710951728618689839375683234579977460403039792162756050283824210294032568764165829443939944124671773719945646909909493586251638098904928074780166636378608247002315153984568232239068354466201570756271465651390509183289944343716376957283422044716498908629632038749428814434502419917486234868773292246086961959655796163380638247260468787690028185363850117111933113792659461510127622249920061004624491888840657169419854043577350376962529249175603320824770690085539641676839698424680204874362944956947122299828482786537843940345106676373132199031417831071133903474642653500442371560241800134357023136598680469353013650518172410923254732086919276891465205382850101533258396650800648718086038030368301018193574397130548899654967627378093573171018412284001267215407280982373619380401549207203045413771521279599140446684820938407963730929243139507299600599458129457029729746944\n", + "2213882946039216755153481342742583098992209778331985780283482681967515478423358565787305794108150472948300543585968965368024752181904391763488542939173894691781999811898043653406364630880960648413581421903457237379678751366469159954920806079584325512100567648420588065137528331658887879888249343547439891293819818987172503276197809856149560333272757216494004630307969136464478136708932403141512542931302781018366579888687432753914566844089432997817259264077498857628869004839834972469737546584492173923919311592326761276494520937575380056370727700234223866227585318923020255244499840122009248983777681314338839708087154700753925058498351206641649541380171079283353679396849360409748725889913894244599656965573075687880690213352746264398062835662142267806949285307000884743120483600268714046273197360938706027301036344821846509464173838553782930410765700203066516793301601297436172076060736602036387148794261097799309935254756187146342036824568002534430814561964747238760803098414406090827543042559198280893369641876815927461858486279014599201198916258914059459493888\n", + "4427765892078433510306962685485166197984419556663971560566965363935030956846717131574611588216300945896601087171937930736049504363808783526977085878347789383563999623796087306812729261761921296827162843806914474759357502732938319909841612159168651024201135296841176130275056663317775759776498687094879782587639637974345006552395619712299120666545514432988009260615938272928956273417864806283025085862605562036733159777374865507829133688178865995634518528154997715257738009679669944939475093168984347847838623184653522552989041875150760112741455400468447732455170637846040510488999680244018497967555362628677679416174309401507850116996702413283299082760342158566707358793698720819497451779827788489199313931146151375761380426705492528796125671324284535613898570614001769486240967200537428092546394721877412054602072689643693018928347677107565860821531400406133033586603202594872344152121473204072774297588522195598619870509512374292684073649136005068861629123929494477521606196828812181655086085118396561786739283753631854923716972558029198402397832517828118918987776\n", + "8855531784156867020613925370970332395968839113327943121133930727870061913693434263149223176432601891793202174343875861472099008727617567053954171756695578767127999247592174613625458523523842593654325687613828949518715005465876639819683224318337302048402270593682352260550113326635551519552997374189759565175279275948690013104791239424598241333091028865976018521231876545857912546835729612566050171725211124073466319554749731015658267376357731991269037056309995430515476019359339889878950186337968695695677246369307045105978083750301520225482910800936895464910341275692081020977999360488036995935110725257355358832348618803015700233993404826566598165520684317133414717587397441638994903559655576978398627862292302751522760853410985057592251342648569071227797141228003538972481934401074856185092789443754824109204145379287386037856695354215131721643062800812266067173206405189744688304242946408145548595177044391197239741019024748585368147298272010137723258247858988955043212393657624363310172170236793123573478567507263709847433945116058396804795665035656237837975552\n", + "17711063568313734041227850741940664791937678226655886242267861455740123827386868526298446352865203783586404348687751722944198017455235134107908343513391157534255998495184349227250917047047685187308651375227657899037430010931753279639366448636674604096804541187364704521100226653271103039105994748379519130350558551897380026209582478849196482666182057731952037042463753091715825093671459225132100343450422248146932639109499462031316534752715463982538074112619990861030952038718679779757900372675937391391354492738614090211956167500603040450965821601873790929820682551384162041955998720976073991870221450514710717664697237606031400467986809653133196331041368634266829435174794883277989807119311153956797255724584605503045521706821970115184502685297138142455594282456007077944963868802149712370185578887509648218408290758574772075713390708430263443286125601624532134346412810379489376608485892816291097190354088782394479482038049497170736294596544020275446516495717977910086424787315248726620344340473586247146957135014527419694867890232116793609591330071312475675951104\n", + "35422127136627468082455701483881329583875356453311772484535722911480247654773737052596892705730407567172808697375503445888396034910470268215816687026782315068511996990368698454501834094095370374617302750455315798074860021863506559278732897273349208193609082374729409042200453306542206078211989496759038260701117103794760052419164957698392965332364115463904074084927506183431650187342918450264200686900844496293865278218998924062633069505430927965076148225239981722061904077437359559515800745351874782782708985477228180423912335001206080901931643203747581859641365102768324083911997441952147983740442901029421435329394475212062800935973619306266392662082737268533658870349589766555979614238622307913594511449169211006091043413643940230369005370594276284911188564912014155889927737604299424740371157775019296436816581517149544151426781416860526886572251203249064268692825620758978753216971785632582194380708177564788958964076098994341472589193088040550893032991435955820172849574630497453240688680947172494293914270029054839389735780464233587219182660142624951351902208\n", + "70844254273254936164911402967762659167750712906623544969071445822960495309547474105193785411460815134345617394751006891776792069820940536431633374053564630137023993980737396909003668188190740749234605500910631596149720043727013118557465794546698416387218164749458818084400906613084412156423978993518076521402234207589520104838329915396785930664728230927808148169855012366863300374685836900528401373801688992587730556437997848125266139010861855930152296450479963444123808154874719119031601490703749565565417970954456360847824670002412161803863286407495163719282730205536648167823994883904295967480885802058842870658788950424125601871947238612532785324165474537067317740699179533111959228477244615827189022898338422012182086827287880460738010741188552569822377129824028311779855475208598849480742315550038592873633163034299088302853562833721053773144502406498128537385651241517957506433943571265164388761416355129577917928152197988682945178386176081101786065982871911640345699149260994906481377361894344988587828540058109678779471560928467174438365320285249902703804416\n", + "141688508546509872329822805935525318335501425813247089938142891645920990619094948210387570822921630268691234789502013783553584139641881072863266748107129260274047987961474793818007336376381481498469211001821263192299440087454026237114931589093396832774436329498917636168801813226168824312847957987036153042804468415179040209676659830793571861329456461855616296339710024733726600749371673801056802747603377985175461112875995696250532278021723711860304592900959926888247616309749438238063202981407499131130835941908912721695649340004824323607726572814990327438565460411073296335647989767808591934961771604117685741317577900848251203743894477225065570648330949074134635481398359066223918456954489231654378045796676844024364173654575760921476021482377105139644754259648056623559710950417197698961484631100077185747266326068598176605707125667442107546289004812996257074771302483035915012867887142530328777522832710259155835856304395977365890356772352162203572131965743823280691398298521989812962754723788689977175657080116219357558943121856934348876730640570499805407608832\n", + "283377017093019744659645611871050636671002851626494179876285783291841981238189896420775141645843260537382469579004027567107168279283762145726533496214258520548095975922949587636014672752762962996938422003642526384598880174908052474229863178186793665548872658997835272337603626452337648625695915974072306085608936830358080419353319661587143722658912923711232592679420049467453201498743347602113605495206755970350922225751991392501064556043447423720609185801919853776495232619498876476126405962814998262261671883817825443391298680009648647215453145629980654877130920822146592671295979535617183869923543208235371482635155801696502407487788954450131141296661898148269270962796718132447836913908978463308756091593353688048728347309151521842952042964754210279289508519296113247119421900834395397922969262200154371494532652137196353211414251334884215092578009625992514149542604966071830025735774285060657555045665420518311671712608791954731780713544704324407144263931487646561382796597043979625925509447577379954351314160232438715117886243713868697753461281140999610815217664\n", + "566754034186039489319291223742101273342005703252988359752571566583683962476379792841550283291686521074764939158008055134214336558567524291453066992428517041096191951845899175272029345505525925993876844007285052769197760349816104948459726356373587331097745317995670544675207252904675297251391831948144612171217873660716160838706639323174287445317825847422465185358840098934906402997486695204227210990413511940701844451503982785002129112086894847441218371603839707552990465238997752952252811925629996524523343767635650886782597360019297294430906291259961309754261841644293185342591959071234367739847086416470742965270311603393004814975577908900262282593323796296538541925593436264895673827817956926617512183186707376097456694618303043685904085929508420558579017038592226494238843801668790795845938524400308742989065304274392706422828502669768430185156019251985028299085209932143660051471548570121315110091330841036623343425217583909463561427089408648814288527862975293122765593194087959251851018895154759908702628320464877430235772487427737395506922562281999221630435328\n", + "1133508068372078978638582447484202546684011406505976719505143133167367924952759585683100566583373042149529878316016110268428673117135048582906133984857034082192383903691798350544058691011051851987753688014570105538395520699632209896919452712747174662195490635991341089350414505809350594502783663896289224342435747321432321677413278646348574890635651694844930370717680197869812805994973390408454421980827023881403688903007965570004258224173789694882436743207679415105980930477995505904505623851259993049046687535271301773565194720038594588861812582519922619508523683288586370685183918142468735479694172832941485930540623206786009629951155817800524565186647592593077083851186872529791347655635913853235024366373414752194913389236606087371808171859016841117158034077184452988477687603337581591691877048800617485978130608548785412845657005339536860370312038503970056598170419864287320102943097140242630220182661682073246686850435167818927122854178817297628577055725950586245531186388175918503702037790309519817405256640929754860471544974855474791013845124563998443260870656\n", + "2267016136744157957277164894968405093368022813011953439010286266334735849905519171366201133166746084299059756632032220536857346234270097165812267969714068164384767807383596701088117382022103703975507376029140211076791041399264419793838905425494349324390981271982682178700829011618701189005567327792578448684871494642864643354826557292697149781271303389689860741435360395739625611989946780816908843961654047762807377806015931140008516448347579389764873486415358830211961860955991011809011247702519986098093375070542603547130389440077189177723625165039845239017047366577172741370367836284937470959388345665882971861081246413572019259902311635601049130373295185186154167702373745059582695311271827706470048732746829504389826778473212174743616343718033682234316068154368905976955375206675163183383754097601234971956261217097570825691314010679073720740624077007940113196340839728574640205886194280485260440365323364146493373700870335637854245708357634595257154111451901172491062372776351837007404075580619039634810513281859509720943089949710949582027690249127996886521741312\n", + "4534032273488315914554329789936810186736045626023906878020572532669471699811038342732402266333492168598119513264064441073714692468540194331624535939428136328769535614767193402176234764044207407951014752058280422153582082798528839587677810850988698648781962543965364357401658023237402378011134655585156897369742989285729286709653114585394299562542606779379721482870720791479251223979893561633817687923308095525614755612031862280017032896695158779529746972830717660423923721911982023618022495405039972196186750141085207094260778880154378355447250330079690478034094733154345482740735672569874941918776691331765943722162492827144038519804623271202098260746590370372308335404747490119165390622543655412940097465493659008779653556946424349487232687436067364468632136308737811953910750413350326366767508195202469943912522434195141651382628021358147441481248154015880226392681679457149280411772388560970520880730646728292986747401740671275708491416715269190514308222903802344982124745552703674014808151161238079269621026563719019441886179899421899164055380498255993773043482624\n", + "9068064546976631829108659579873620373472091252047813756041145065338943399622076685464804532666984337196239026528128882147429384937080388663249071878856272657539071229534386804352469528088414815902029504116560844307164165597057679175355621701977397297563925087930728714803316046474804756022269311170313794739485978571458573419306229170788599125085213558759442965741441582958502447959787123267635375846616191051229511224063724560034065793390317559059493945661435320847847443823964047236044990810079944392373500282170414188521557760308756710894500660159380956068189466308690965481471345139749883837553382663531887444324985654288077039609246542404196521493180740744616670809494980238330781245087310825880194930987318017559307113892848698974465374872134728937264272617475623907821500826700652733535016390404939887825044868390283302765256042716294882962496308031760452785363358914298560823544777121941041761461293456585973494803481342551416982833430538381028616445807604689964249491105407348029616302322476158539242053127438038883772359798843798328110760996511987546086965248\n", + "18136129093953263658217319159747240746944182504095627512082290130677886799244153370929609065333968674392478053056257764294858769874160777326498143757712545315078142459068773608704939056176829631804059008233121688614328331194115358350711243403954794595127850175861457429606632092949609512044538622340627589478971957142917146838612458341577198250170427117518885931482883165917004895919574246535270751693232382102459022448127449120068131586780635118118987891322870641695694887647928094472089981620159888784747000564340828377043115520617513421789001320318761912136378932617381930962942690279499767675106765327063774888649971308576154079218493084808393042986361481489233341618989960476661562490174621651760389861974636035118614227785697397948930749744269457874528545234951247815643001653401305467070032780809879775650089736780566605530512085432589765924992616063520905570726717828597121647089554243882083522922586913171946989606962685102833965666861076762057232891615209379928498982210814696059232604644952317078484106254876077767544719597687596656221521993023975092173930496\n", + "36272258187906527316434638319494481493888365008191255024164580261355773598488306741859218130667937348784956106112515528589717539748321554652996287515425090630156284918137547217409878112353659263608118016466243377228656662388230716701422486807909589190255700351722914859213264185899219024089077244681255178957943914285834293677224916683154396500340854235037771862965766331834009791839148493070541503386464764204918044896254898240136263173561270236237975782645741283391389775295856188944179963240319777569494001128681656754086231041235026843578002640637523824272757865234763861925885380558999535350213530654127549777299942617152308158436986169616786085972722962978466683237979920953323124980349243303520779723949272070237228455571394795897861499488538915749057090469902495631286003306802610934140065561619759551300179473561133211061024170865179531849985232127041811141453435657194243294179108487764167045845173826343893979213925370205667931333722153524114465783230418759856997964421629392118465209289904634156968212509752155535089439195375193312443043986047950184347860992\n", + "72544516375813054632869276638988962987776730016382510048329160522711547196976613483718436261335874697569912212225031057179435079496643109305992575030850181260312569836275094434819756224707318527216236032932486754457313324776461433402844973615819178380511400703445829718426528371798438048178154489362510357915887828571668587354449833366308793000681708470075543725931532663668019583678296986141083006772929528409836089792509796480272526347122540472475951565291482566782779550591712377888359926480639555138988002257363313508172462082470053687156005281275047648545515730469527723851770761117999070700427061308255099554599885234304616316873972339233572171945445925956933366475959841906646249960698486607041559447898544140474456911142789591795722998977077831498114180939804991262572006613605221868280131123239519102600358947122266422122048341730359063699970464254083622282906871314388486588358216975528334091690347652687787958427850740411335862667444307048228931566460837519713995928843258784236930418579809268313936425019504311070178878390750386624886087972095900368695721984\n", + "145089032751626109265738553277977925975553460032765020096658321045423094393953226967436872522671749395139824424450062114358870158993286218611985150061700362520625139672550188869639512449414637054432472065864973508914626649552922866805689947231638356761022801406891659436853056743596876096356308978725020715831775657143337174708899666732617586001363416940151087451863065327336039167356593972282166013545859056819672179585019592960545052694245080944951903130582965133565559101183424755776719852961279110277976004514726627016344924164940107374312010562550095297091031460939055447703541522235998141400854122616510199109199770468609232633747944678467144343890891851913866732951919683813292499921396973214083118895797088280948913822285579183591445997954155662996228361879609982525144013227210443736560262246479038205200717894244532844244096683460718127399940928508167244565813742628776973176716433951056668183380695305375575916855701480822671725334888614096457863132921675039427991857686517568473860837159618536627872850039008622140357756781500773249772175944191800737391443968\n", + "290178065503252218531477106555955851951106920065530040193316642090846188787906453934873745045343498790279648848900124228717740317986572437223970300123400725041250279345100377739279024898829274108864944131729947017829253299105845733611379894463276713522045602813783318873706113487193752192712617957450041431663551314286674349417799333465235172002726833880302174903726130654672078334713187944564332027091718113639344359170039185921090105388490161889903806261165930267131118202366849511553439705922558220555952009029453254032689848329880214748624021125100190594182062921878110895407083044471996282801708245233020398218399540937218465267495889356934288687781783703827733465903839367626584999842793946428166237791594176561897827644571158367182891995908311325992456723759219965050288026454420887473120524492958076410401435788489065688488193366921436254799881857016334489131627485257553946353432867902113336366761390610751151833711402961645343450669777228192915726265843350078855983715373035136947721674319237073255745700078017244280715513563001546499544351888383601474782887936\n", + "580356131006504437062954213111911703902213840131060080386633284181692377575812907869747490090686997580559297697800248457435480635973144874447940600246801450082500558690200755478558049797658548217729888263459894035658506598211691467222759788926553427044091205627566637747412226974387504385425235914900082863327102628573348698835598666930470344005453667760604349807452261309344156669426375889128664054183436227278688718340078371842180210776980323779807612522331860534262236404733699023106879411845116441111904018058906508065379696659760429497248042250200381188364125843756221790814166088943992565603416490466040796436799081874436930534991778713868577375563567407655466931807678735253169999685587892856332475583188353123795655289142316734365783991816622651984913447518439930100576052908841774946241048985916152820802871576978131376976386733842872509599763714032668978263254970515107892706865735804226672733522781221502303667422805923290686901339554456385831452531686700157711967430746070273895443348638474146511491400156034488561431027126003092999088703776767202949565775872\n", + "1160712262013008874125908426223823407804427680262120160773266568363384755151625815739494980181373995161118595395600496914870961271946289748895881200493602900165001117380401510957116099595317096435459776526919788071317013196423382934445519577853106854088182411255133275494824453948775008770850471829800165726654205257146697397671197333860940688010907335521208699614904522618688313338852751778257328108366872454557377436680156743684360421553960647559615225044663721068524472809467398046213758823690232882223808036117813016130759393319520858994496084500400762376728251687512443581628332177887985131206832980932081592873598163748873861069983557427737154751127134815310933863615357470506339999371175785712664951166376706247591310578284633468731567983633245303969826895036879860201152105817683549892482097971832305641605743153956262753952773467685745019199527428065337956526509941030215785413731471608453345467045562443004607334845611846581373802679108912771662905063373400315423934861492140547790886697276948293022982800312068977122862054252006185998177407553534405899131551744\n", + "2321424524026017748251816852447646815608855360524240321546533136726769510303251631478989960362747990322237190791200993829741922543892579497791762400987205800330002234760803021914232199190634192870919553053839576142634026392846765868891039155706213708176364822510266550989648907897550017541700943659600331453308410514293394795342394667721881376021814671042417399229809045237376626677705503556514656216733744909114754873360313487368720843107921295119230450089327442137048945618934796092427517647380465764447616072235626032261518786639041717988992169000801524753456503375024887163256664355775970262413665961864163185747196327497747722139967114855474309502254269630621867727230714941012679998742351571425329902332753412495182621156569266937463135967266490607939653790073759720402304211635367099784964195943664611283211486307912525507905546935371490038399054856130675913053019882060431570827462943216906690934091124886009214669691223693162747605358217825543325810126746800630847869722984281095581773394553896586045965600624137954245724108504012371996354815107068811798263103488\n", + "4642849048052035496503633704895293631217710721048480643093066273453539020606503262957979920725495980644474381582401987659483845087785158995583524801974411600660004469521606043828464398381268385741839106107679152285268052785693531737782078311412427416352729645020533101979297815795100035083401887319200662906616821028586789590684789335443762752043629342084834798459618090474753253355411007113029312433467489818229509746720626974737441686215842590238460900178654884274097891237869592184855035294760931528895232144471252064523037573278083435977984338001603049506913006750049774326513328711551940524827331923728326371494392654995495444279934229710948619004508539261243735454461429882025359997484703142850659804665506824990365242313138533874926271934532981215879307580147519440804608423270734199569928391887329222566422972615825051015811093870742980076798109712261351826106039764120863141654925886433813381868182249772018429339382447386325495210716435651086651620253493601261695739445968562191163546789107793172091931201248275908491448217008024743992709630214137623596526206976\n", + "9285698096104070993007267409790587262435421442096961286186132546907078041213006525915959841450991961288948763164803975318967690175570317991167049603948823201320008939043212087656928796762536771483678212215358304570536105571387063475564156622824854832705459290041066203958595631590200070166803774638401325813233642057173579181369578670887525504087258684169669596919236180949506506710822014226058624866934979636459019493441253949474883372431685180476921800357309768548195782475739184369710070589521863057790464288942504129046075146556166871955968676003206099013826013500099548653026657423103881049654663847456652742988785309990990888559868459421897238009017078522487470908922859764050719994969406285701319609331013649980730484626277067749852543869065962431758615160295038881609216846541468399139856783774658445132845945231650102031622187741485960153596219424522703652212079528241726283309851772867626763736364499544036858678764894772650990421432871302173303240506987202523391478891937124382327093578215586344183862402496551816982896434016049487985419260428275247193052413952\n", + "18571396192208141986014534819581174524870842884193922572372265093814156082426013051831919682901983922577897526329607950637935380351140635982334099207897646402640017878086424175313857593525073542967356424430716609141072211142774126951128313245649709665410918580082132407917191263180400140333607549276802651626467284114347158362739157341775051008174517368339339193838472361899013013421644028452117249733869959272918038986882507898949766744863370360953843600714619537096391564951478368739420141179043726115580928577885008258092150293112333743911937352006412198027652027000199097306053314846207762099309327694913305485977570619981981777119736918843794476018034157044974941817845719528101439989938812571402639218662027299961460969252554135499705087738131924863517230320590077763218433693082936798279713567549316890265691890463300204063244375482971920307192438849045407304424159056483452566619703545735253527472728999088073717357529789545301980842865742604346606481013974405046782957783874248764654187156431172688367724804993103633965792868032098975970838520856550494386104827904\n", + "37142792384416283972029069639162349049741685768387845144744530187628312164852026103663839365803967845155795052659215901275870760702281271964668198415795292805280035756172848350627715187050147085934712848861433218282144422285548253902256626491299419330821837160164264815834382526360800280667215098553605303252934568228694316725478314683550102016349034736678678387676944723798026026843288056904234499467739918545836077973765015797899533489726740721907687201429239074192783129902956737478840282358087452231161857155770016516184300586224667487823874704012824396055304054000398194612106629692415524198618655389826610971955141239963963554239473837687588952036068314089949883635691439056202879979877625142805278437324054599922921938505108270999410175476263849727034460641180155526436867386165873596559427135098633780531383780926600408126488750965943840614384877698090814608848318112966905133239407091470507054945457998176147434715059579090603961685731485208693212962027948810093565915567748497529308374312862345376735449609986207267931585736064197951941677041713100988772209655808\n", + "74285584768832567944058139278324698099483371536775690289489060375256624329704052207327678731607935690311590105318431802551741521404562543929336396831590585610560071512345696701255430374100294171869425697722866436564288844571096507804513252982598838661643674320328529631668765052721600561334430197107210606505869136457388633450956629367100204032698069473357356775353889447596052053686576113808468998935479837091672155947530031595799066979453481443815374402858478148385566259805913474957680564716174904462323714311540033032368601172449334975647749408025648792110608108000796389224213259384831048397237310779653221943910282479927927108478947675375177904072136628179899767271382878112405759959755250285610556874648109199845843877010216541998820350952527699454068921282360311052873734772331747193118854270197267561062767561853200816252977501931887681228769755396181629217696636225933810266478814182941014109890915996352294869430119158181207923371462970417386425924055897620187131831135496995058616748625724690753470899219972414535863171472128395903883354083426201977544419311616\n", + "148571169537665135888116278556649396198966743073551380578978120750513248659408104414655357463215871380623180210636863605103483042809125087858672793663181171221120143024691393402510860748200588343738851395445732873128577689142193015609026505965197677323287348640657059263337530105443201122668860394214421213011738272914777266901913258734200408065396138946714713550707778895192104107373152227616937997870959674183344311895060063191598133958906962887630748805716956296771132519611826949915361129432349808924647428623080066064737202344898669951295498816051297584221216216001592778448426518769662096794474621559306443887820564959855854216957895350750355808144273256359799534542765756224811519919510500571221113749296218399691687754020433083997640701905055398908137842564720622105747469544663494386237708540394535122125535123706401632505955003863775362457539510792363258435393272451867620532957628365882028219781831992704589738860238316362415846742925940834772851848111795240374263662270993990117233497251449381506941798439944829071726342944256791807766708166852403955088838623232\n", + "297142339075330271776232557113298792397933486147102761157956241501026497318816208829310714926431742761246360421273727210206966085618250175717345587326362342442240286049382786805021721496401176687477702790891465746257155378284386031218053011930395354646574697281314118526675060210886402245337720788428842426023476545829554533803826517468400816130792277893429427101415557790384208214746304455233875995741919348366688623790120126383196267917813925775261497611433912593542265039223653899830722258864699617849294857246160132129474404689797339902590997632102595168442432432003185556896853037539324193588949243118612887775641129919711708433915790701500711616288546512719599069085531512449623039839021001142442227498592436799383375508040866167995281403810110797816275685129441244211494939089326988772475417080789070244251070247412803265011910007727550724915079021584726516870786544903735241065915256731764056439563663985409179477720476632724831693485851881669545703696223590480748527324541987980234466994502898763013883596879889658143452685888513583615533416333704807910177677246464\n", + "594284678150660543552465114226597584795866972294205522315912483002052994637632417658621429852863485522492720842547454420413932171236500351434691174652724684884480572098765573610043442992802353374955405581782931492514310756568772062436106023860790709293149394562628237053350120421772804490675441576857684852046953091659109067607653034936801632261584555786858854202831115580768416429492608910467751991483838696733377247580240252766392535835627851550522995222867825187084530078447307799661444517729399235698589714492320264258948809379594679805181995264205190336884864864006371113793706075078648387177898486237225775551282259839423416867831581403001423232577093025439198138171063024899246079678042002284884454997184873598766751016081732335990562807620221595632551370258882488422989878178653977544950834161578140488502140494825606530023820015455101449830158043169453033741573089807470482131830513463528112879127327970818358955440953265449663386971703763339091407392447180961497054649083975960468933989005797526027767193759779316286905371777027167231066832667409615820355354492928\n", + "1188569356301321087104930228453195169591733944588411044631824966004105989275264835317242859705726971044985441685094908840827864342473000702869382349305449369768961144197531147220086885985604706749910811163565862985028621513137544124872212047721581418586298789125256474106700240843545608981350883153715369704093906183318218135215306069873603264523169111573717708405662231161536832858985217820935503982967677393466754495160480505532785071671255703101045990445735650374169060156894615599322889035458798471397179428984640528517897618759189359610363990528410380673769729728012742227587412150157296774355796972474451551102564519678846833735663162806002846465154186050878396276342126049798492159356084004569768909994369747197533502032163464671981125615240443191265102740517764976845979756357307955089901668323156280977004280989651213060047640030910202899660316086338906067483146179614940964263661026927056225758254655941636717910881906530899326773943407526678182814784894361922994109298167951920937867978011595052055534387519558632573810743554054334462133665334819231640710708985856\n", + "2377138712602642174209860456906390339183467889176822089263649932008211978550529670634485719411453942089970883370189817681655728684946001405738764698610898739537922288395062294440173771971209413499821622327131725970057243026275088249744424095443162837172597578250512948213400481687091217962701766307430739408187812366636436270430612139747206529046338223147435416811324462323073665717970435641871007965935354786933508990320961011065570143342511406202091980891471300748338120313789231198645778070917596942794358857969281057035795237518378719220727981056820761347539459456025484455174824300314593548711593944948903102205129039357693667471326325612005692930308372101756792552684252099596984318712168009139537819988739494395067004064326929343962251230480886382530205481035529953691959512714615910179803336646312561954008561979302426120095280061820405799320632172677812134966292359229881928527322053854112451516509311883273435821763813061798653547886815053356365629569788723845988218596335903841875735956023190104111068775039117265147621487108108668924267330669638463281421417971712\n", + "4754277425205284348419720913812780678366935778353644178527299864016423957101059341268971438822907884179941766740379635363311457369892002811477529397221797479075844576790124588880347543942418826999643244654263451940114486052550176499488848190886325674345195156501025896426800963374182435925403532614861478816375624733272872540861224279494413058092676446294870833622648924646147331435940871283742015931870709573867017980641922022131140286685022812404183961782942601496676240627578462397291556141835193885588717715938562114071590475036757438441455962113641522695078918912050968910349648600629187097423187889897806204410258078715387334942652651224011385860616744203513585105368504199193968637424336018279075639977478988790134008128653858687924502460961772765060410962071059907383919025429231820359606673292625123908017123958604852240190560123640811598641264345355624269932584718459763857054644107708224903033018623766546871643527626123597307095773630106712731259139577447691976437192671807683751471912046380208222137550078234530295242974216217337848534661339276926562842835943424\n", + "9508554850410568696839441827625561356733871556707288357054599728032847914202118682537942877645815768359883533480759270726622914739784005622955058794443594958151689153580249177760695087884837653999286489308526903880228972105100352998977696381772651348690390313002051792853601926748364871850807065229722957632751249466545745081722448558988826116185352892589741667245297849292294662871881742567484031863741419147734035961283844044262280573370045624808367923565885202993352481255156924794583112283670387771177435431877124228143180950073514876882911924227283045390157837824101937820699297201258374194846375779795612408820516157430774669885305302448022771721233488407027170210737008398387937274848672036558151279954957977580268016257307717375849004921923545530120821924142119814767838050858463640719213346585250247816034247917209704480381120247281623197282528690711248539865169436919527714109288215416449806066037247533093743287055252247194614191547260213425462518279154895383952874385343615367502943824092760416444275100156469060590485948432434675697069322678553853125685671886848\n", + "19017109700821137393678883655251122713467743113414576714109199456065695828404237365075885755291631536719767066961518541453245829479568011245910117588887189916303378307160498355521390175769675307998572978617053807760457944210200705997955392763545302697380780626004103585707203853496729743701614130459445915265502498933091490163444897117977652232370705785179483334490595698584589325743763485134968063727482838295468071922567688088524561146740091249616735847131770405986704962510313849589166224567340775542354870863754248456286361900147029753765823848454566090780315675648203875641398594402516748389692751559591224817641032314861549339770610604896045543442466976814054340421474016796775874549697344073116302559909915955160536032514615434751698009843847091060241643848284239629535676101716927281438426693170500495632068495834419408960762240494563246394565057381422497079730338873839055428218576430832899612132074495066187486574110504494389228383094520426850925036558309790767905748770687230735005887648185520832888550200312938121180971896864869351394138645357107706251371343773696\n", + "38034219401642274787357767310502245426935486226829153428218398912131391656808474730151771510583263073439534133923037082906491658959136022491820235177774379832606756614320996711042780351539350615997145957234107615520915888420401411995910785527090605394761561252008207171414407706993459487403228260918891830531004997866182980326889794235955304464741411570358966668981191397169178651487526970269936127454965676590936143845135376177049122293480182499233471694263540811973409925020627699178332449134681551084709741727508496912572723800294059507531647696909132181560631351296407751282797188805033496779385503119182449635282064629723098679541221209792091086884933953628108680842948033593551749099394688146232605119819831910321072065029230869503396019687694182120483287696568479259071352203433854562876853386341000991264136991668838817921524480989126492789130114762844994159460677747678110856437152861665799224264148990132374973148221008988778456766189040853701850073116619581535811497541374461470011775296371041665777100400625876242361943793729738702788277290714215412502742687547392\n", + "76068438803284549574715534621004490853870972453658306856436797824262783313616949460303543021166526146879068267846074165812983317918272044983640470355548759665213513228641993422085560703078701231994291914468215231041831776840802823991821571054181210789523122504016414342828815413986918974806456521837783661062009995732365960653779588471910608929482823140717933337962382794338357302975053940539872254909931353181872287690270752354098244586960364998466943388527081623946819850041255398356664898269363102169419483455016993825145447600588119015063295393818264363121262702592815502565594377610066993558771006238364899270564129259446197359082442419584182173769867907256217361685896067187103498198789376292465210239639663820642144130058461739006792039375388364240966575393136958518142704406867709125753706772682001982528273983337677635843048961978252985578260229525689988318921355495356221712874305723331598448528297980264749946296442017977556913532378081707403700146233239163071622995082748922940023550592742083331554200801251752484723887587459477405576554581428430825005485375094784\n", + "152136877606569099149431069242008981707741944907316613712873595648525566627233898920607086042333052293758136535692148331625966635836544089967280940711097519330427026457283986844171121406157402463988583828936430462083663553681605647983643142108362421579046245008032828685657630827973837949612913043675567322124019991464731921307559176943821217858965646281435866675924765588676714605950107881079744509819862706363744575380541504708196489173920729996933886777054163247893639700082510796713329796538726204338838966910033987650290895201176238030126590787636528726242525405185631005131188755220133987117542012476729798541128258518892394718164884839168364347539735814512434723371792134374206996397578752584930420479279327641284288260116923478013584078750776728481933150786273917036285408813735418251507413545364003965056547966675355271686097923956505971156520459051379976637842710990712443425748611446663196897056595960529499892592884035955113827064756163414807400292466478326143245990165497845880047101185484166663108401602503504969447775174918954811153109162856861650010970750189568\n", + "304273755213138198298862138484017963415483889814633227425747191297051133254467797841214172084666104587516273071384296663251933271673088179934561881422195038660854052914567973688342242812314804927977167657872860924167327107363211295967286284216724843158092490016065657371315261655947675899225826087351134644248039982929463842615118353887642435717931292562871733351849531177353429211900215762159489019639725412727489150761083009416392978347841459993867773554108326495787279400165021593426659593077452408677677933820067975300581790402352476060253181575273057452485050810371262010262377510440267974235084024953459597082256517037784789436329769678336728695079471629024869446743584268748413992795157505169860840958558655282568576520233846956027168157501553456963866301572547834072570817627470836503014827090728007930113095933350710543372195847913011942313040918102759953275685421981424886851497222893326393794113191921058999785185768071910227654129512326829614800584932956652286491980330995691760094202370968333326216803205007009938895550349837909622306218325713723300021941500379136\n", + "608547510426276396597724276968035926830967779629266454851494382594102266508935595682428344169332209175032546142768593326503866543346176359869123762844390077321708105829135947376684485624629609855954335315745721848334654214726422591934572568433449686316184980032131314742630523311895351798451652174702269288496079965858927685230236707775284871435862585125743466703699062354706858423800431524318978039279450825454978301522166018832785956695682919987735547108216652991574558800330043186853319186154904817355355867640135950601163580804704952120506363150546114904970101620742524020524755020880535948470168049906919194164513034075569578872659539356673457390158943258049738893487168537496827985590315010339721681917117310565137153040467693912054336315003106913927732603145095668145141635254941673006029654181456015860226191866701421086744391695826023884626081836205519906551370843962849773702994445786652787588226383842117999570371536143820455308259024653659229601169865913304572983960661991383520188404741936666652433606410014019877791100699675819244612436651427446600043883000758272\n", + "1217095020852552793195448553936071853661935559258532909702988765188204533017871191364856688338664418350065092285537186653007733086692352719738247525688780154643416211658271894753368971249259219711908670631491443696669308429452845183869145136866899372632369960064262629485261046623790703596903304349404538576992159931717855370460473415550569742871725170251486933407398124709413716847600863048637956078558901650909956603044332037665571913391365839975471094216433305983149117600660086373706638372309809634710711735280271901202327161609409904241012726301092229809940203241485048041049510041761071896940336099813838388329026068151139157745319078713346914780317886516099477786974337074993655971180630020679443363834234621130274306080935387824108672630006213827855465206290191336290283270509883346012059308362912031720452383733402842173488783391652047769252163672411039813102741687925699547405988891573305575176452767684235999140743072287640910616518049307318459202339731826609145967921323982767040376809483873333304867212820028039755582201399351638489224873302854893200087766001516544\n", + "2434190041705105586390897107872143707323871118517065819405977530376409066035742382729713376677328836700130184571074373306015466173384705439476495051377560309286832423316543789506737942498518439423817341262982887393338616858905690367738290273733798745264739920128525258970522093247581407193806608698809077153984319863435710740920946831101139485743450340502973866814796249418827433695201726097275912157117803301819913206088664075331143826782731679950942188432866611966298235201320172747413276744619619269421423470560543802404654323218819808482025452602184459619880406482970096082099020083522143793880672199627676776658052136302278315490638157426693829560635773032198955573948674149987311942361260041358886727668469242260548612161870775648217345260012427655710930412580382672580566541019766692024118616725824063440904767466805684346977566783304095538504327344822079626205483375851399094811977783146611150352905535368471998281486144575281821233036098614636918404679463653218291935842647965534080753618967746666609734425640056079511164402798703276978449746605709786400175532003033088\n", + "4868380083410211172781794215744287414647742237034131638811955060752818132071484765459426753354657673400260369142148746612030932346769410878952990102755120618573664846633087579013475884997036878847634682525965774786677233717811380735476580547467597490529479840257050517941044186495162814387613217397618154307968639726871421481841893662202278971486900681005947733629592498837654867390403452194551824314235606603639826412177328150662287653565463359901884376865733223932596470402640345494826553489239238538842846941121087604809308646437639616964050905204368919239760812965940192164198040167044287587761344399255353553316104272604556630981276314853387659121271546064397911147897348299974623884722520082717773455336938484521097224323741551296434690520024855311421860825160765345161133082039533384048237233451648126881809534933611368693955133566608191077008654689644159252410966751702798189623955566293222300705811070736943996562972289150563642466072197229273836809358927306436583871685295931068161507237935493333219468851280112159022328805597406553956899493211419572800351064006066176\n", + "9736760166820422345563588431488574829295484474068263277623910121505636264142969530918853506709315346800520738284297493224061864693538821757905980205510241237147329693266175158026951769994073757695269365051931549573354467435622761470953161094935194981058959680514101035882088372990325628775226434795236308615937279453742842963683787324404557942973801362011895467259184997675309734780806904389103648628471213207279652824354656301324575307130926719803768753731466447865192940805280690989653106978478477077685693882242175209618617292875279233928101810408737838479521625931880384328396080334088575175522688798510707106632208545209113261962552629706775318242543092128795822295794696599949247769445040165435546910673876969042194448647483102592869381040049710622843721650321530690322266164079066768096474466903296253763619069867222737387910267133216382154017309379288318504821933503405596379247911132586444601411622141473887993125944578301127284932144394458547673618717854612873167743370591862136323014475870986666438937702560224318044657611194813107913798986422839145600702128012132352\n", + "19473520333640844691127176862977149658590968948136526555247820243011272528285939061837707013418630693601041476568594986448123729387077643515811960411020482474294659386532350316053903539988147515390538730103863099146708934871245522941906322189870389962117919361028202071764176745980651257550452869590472617231874558907485685927367574648809115885947602724023790934518369995350619469561613808778207297256942426414559305648709312602649150614261853439607537507462932895730385881610561381979306213956956954155371387764484350419237234585750558467856203620817475676959043251863760768656792160668177150351045377597021414213264417090418226523925105259413550636485086184257591644591589393199898495538890080330871093821347753938084388897294966205185738762080099421245687443300643061380644532328158133536192948933806592507527238139734445474775820534266432764308034618758576637009643867006811192758495822265172889202823244282947775986251889156602254569864288788917095347237435709225746335486741183724272646028951741973332877875405120448636089315222389626215827597972845678291201404256024264704\n", + "38947040667281689382254353725954299317181937896273053110495640486022545056571878123675414026837261387202082953137189972896247458774155287031623920822040964948589318773064700632107807079976295030781077460207726198293417869742491045883812644379740779924235838722056404143528353491961302515100905739180945234463749117814971371854735149297618231771895205448047581869036739990701238939123227617556414594513884852829118611297418625205298301228523706879215075014925865791460771763221122763958612427913913908310742775528968700838474469171501116935712407241634951353918086503727521537313584321336354300702090755194042828426528834180836453047850210518827101272970172368515183289183178786399796991077780160661742187642695507876168777794589932410371477524160198842491374886601286122761289064656316267072385897867613185015054476279468890949551641068532865528616069237517153274019287734013622385516991644530345778405646488565895551972503778313204509139728577577834190694474871418451492670973482367448545292057903483946665755750810240897272178630444779252431655195945691356582402808512048529408\n", + "77894081334563378764508707451908598634363875792546106220991280972045090113143756247350828053674522774404165906274379945792494917548310574063247841644081929897178637546129401264215614159952590061562154920415452396586835739484982091767625288759481559848471677444112808287056706983922605030201811478361890468927498235629942743709470298595236463543790410896095163738073479981402477878246455235112829189027769705658237222594837250410596602457047413758430150029851731582921543526442245527917224855827827816621485551057937401676948938343002233871424814483269902707836173007455043074627168642672708601404181510388085656853057668361672906095700421037654202545940344737030366578366357572799593982155560321323484375285391015752337555589179864820742955048320397684982749773202572245522578129312632534144771795735226370030108952558937781899103282137065731057232138475034306548038575468027244771033983289060691556811292977131791103945007556626409018279457155155668381388949742836902985341946964734897090584115806967893331511501620481794544357260889558504863310391891382713164805617024097058816\n", + "155788162669126757529017414903817197268727751585092212441982561944090180226287512494701656107349045548808331812548759891584989835096621148126495683288163859794357275092258802528431228319905180123124309840830904793173671478969964183535250577518963119696943354888225616574113413967845210060403622956723780937854996471259885487418940597190472927087580821792190327476146959962804955756492910470225658378055539411316474445189674500821193204914094827516860300059703463165843087052884491055834449711655655633242971102115874803353897876686004467742849628966539805415672346014910086149254337285345417202808363020776171313706115336723345812191400842075308405091880689474060733156732715145599187964311120642646968750570782031504675111178359729641485910096640795369965499546405144491045156258625265068289543591470452740060217905117875563798206564274131462114464276950068613096077150936054489542067966578121383113622585954263582207890015113252818036558914310311336762777899485673805970683893929469794181168231613935786663023003240963589088714521779117009726620783782765426329611234048194117632\n", + "311576325338253515058034829807634394537455503170184424883965123888180360452575024989403312214698091097616663625097519783169979670193242296252991366576327719588714550184517605056862456639810360246248619681661809586347342957939928367070501155037926239393886709776451233148226827935690420120807245913447561875709992942519770974837881194380945854175161643584380654952293919925609911512985820940451316756111078822632948890379349001642386409828189655033720600119406926331686174105768982111668899423311311266485942204231749606707795753372008935485699257933079610831344692029820172298508674570690834405616726041552342627412230673446691624382801684150616810183761378948121466313465430291198375928622241285293937501141564063009350222356719459282971820193281590739930999092810288982090312517250530136579087182940905480120435810235751127596413128548262924228928553900137226192154301872108979084135933156242766227245171908527164415780030226505636073117828620622673525555798971347611941367787858939588362336463227871573326046006481927178177429043558234019453241567565530852659222468096388235264\n", + "623152650676507030116069659615268789074911006340368849767930247776360720905150049978806624429396182195233327250195039566339959340386484592505982733152655439177429100369035210113724913279620720492497239363323619172694685915879856734141002310075852478787773419552902466296453655871380840241614491826895123751419985885039541949675762388761891708350323287168761309904587839851219823025971641880902633512222157645265897780758698003284772819656379310067441200238813852663372348211537964223337798846622622532971884408463499213415591506744017870971398515866159221662689384059640344597017349141381668811233452083104685254824461346893383248765603368301233620367522757896242932626930860582396751857244482570587875002283128126018700444713438918565943640386563181479861998185620577964180625034501060273158174365881810960240871620471502255192826257096525848457857107800274452384308603744217958168271866312485532454490343817054328831560060453011272146235657241245347051111597942695223882735575717879176724672926455743146652092012963854356354858087116468038906483135131061705318444936192776470528\n", + "1246305301353014060232139319230537578149822012680737699535860495552721441810300099957613248858792364390466654500390079132679918680772969185011965466305310878354858200738070420227449826559241440984994478726647238345389371831759713468282004620151704957575546839105804932592907311742761680483228983653790247502839971770079083899351524777523783416700646574337522619809175679702439646051943283761805267024444315290531795561517396006569545639312758620134882400477627705326744696423075928446675597693245245065943768816926998426831183013488035741942797031732318443325378768119280689194034698282763337622466904166209370509648922693786766497531206736602467240735045515792485865253861721164793503714488965141175750004566256252037400889426877837131887280773126362959723996371241155928361250069002120546316348731763621920481743240943004510385652514193051696915714215600548904768617207488435916336543732624971064908980687634108657663120120906022544292471314482490694102223195885390447765471151435758353449345852911486293304184025927708712709716174232936077812966270262123410636889872385552941056\n", + "2492610602706028120464278638461075156299644025361475399071720991105442883620600199915226497717584728780933309000780158265359837361545938370023930932610621756709716401476140840454899653118482881969988957453294476690778743663519426936564009240303409915151093678211609865185814623485523360966457967307580495005679943540158167798703049555047566833401293148675045239618351359404879292103886567523610534048888630581063591123034792013139091278625517240269764800955255410653489392846151856893351195386490490131887537633853996853662366026976071483885594063464636886650757536238561378388069396565526675244933808332418741019297845387573532995062413473204934481470091031584971730507723442329587007428977930282351500009132512504074801778853755674263774561546252725919447992742482311856722500138004241092632697463527243840963486481886009020771305028386103393831428431201097809537234414976871832673087465249942129817961375268217315326240241812045088584942628964981388204446391770780895530942302871516706898691705822972586608368051855417425419432348465872155625932540524246821273779744771105882112\n", + "4985221205412056240928557276922150312599288050722950798143441982210885767241200399830452995435169457561866618001560316530719674723091876740047861865221243513419432802952281680909799306236965763939977914906588953381557487327038853873128018480606819830302187356423219730371629246971046721932915934615160990011359887080316335597406099110095133666802586297350090479236702718809758584207773135047221068097777261162127182246069584026278182557251034480539529601910510821306978785692303713786702390772980980263775075267707993707324732053952142967771188126929273773301515072477122756776138793131053350489867616664837482038595690775147065990124826946409868962940182063169943461015446884659174014857955860564703000018265025008149603557707511348527549123092505451838895985484964623713445000276008482185265394927054487681926972963772018041542610056772206787662856862402195619074468829953743665346174930499884259635922750536434630652480483624090177169885257929962776408892783541561791061884605743033413797383411645945173216736103710834850838864696931744311251865081048493642547559489542211764224\n", + "9970442410824112481857114553844300625198576101445901596286883964421771534482400799660905990870338915123733236003120633061439349446183753480095723730442487026838865605904563361819598612473931527879955829813177906763114974654077707746256036961213639660604374712846439460743258493942093443865831869230321980022719774160632671194812198220190267333605172594700180958473405437619517168415546270094442136195554522324254364492139168052556365114502068961079059203821021642613957571384607427573404781545961960527550150535415987414649464107904285935542376253858547546603030144954245513552277586262106700979735233329674964077191381550294131980249653892819737925880364126339886922030893769318348029715911721129406000036530050016299207115415022697055098246185010903677791970969929247426890000552016964370530789854108975363853945927544036083085220113544413575325713724804391238148937659907487330692349860999768519271845501072869261304960967248180354339770515859925552817785567083123582123769211486066827594766823291890346433472207421669701677729393863488622503730162096987285095118979084423528448\n", + "19940884821648224963714229107688601250397152202891803192573767928843543068964801599321811981740677830247466472006241266122878698892367506960191447460884974053677731211809126723639197224947863055759911659626355813526229949308155415492512073922427279321208749425692878921486516987884186887731663738460643960045439548321265342389624396440380534667210345189400361916946810875239034336831092540188884272391109044648508728984278336105112730229004137922158118407642043285227915142769214855146809563091923921055100301070831974829298928215808571871084752507717095093206060289908491027104555172524213401959470466659349928154382763100588263960499307785639475851760728252679773844061787538636696059431823442258812000073060100032598414230830045394110196492370021807355583941939858494853780001104033928741061579708217950727707891855088072166170440227088827150651427449608782476297875319814974661384699721999537038543691002145738522609921934496360708679541031719851105635571134166247164247538422972133655189533646583780692866944414843339403355458787726977245007460324193974570190237958168847056896\n", + "39881769643296449927428458215377202500794304405783606385147535857687086137929603198643623963481355660494932944012482532245757397784735013920382894921769948107355462423618253447278394449895726111519823319252711627052459898616310830985024147844854558642417498851385757842973033975768373775463327476921287920090879096642530684779248792880761069334420690378800723833893621750478068673662185080377768544782218089297017457968556672210225460458008275844316236815284086570455830285538429710293619126183847842110200602141663949658597856431617143742169505015434190186412120579816982054209110345048426803918940933318699856308765526201176527920998615571278951703521456505359547688123575077273392118863646884517624000146120200065196828461660090788220392984740043614711167883879716989707560002208067857482123159416435901455415783710176144332340880454177654301302854899217564952595750639629949322769399443999074077087382004291477045219843868992721417359082063439702211271142268332494328495076845944267310379067293167561385733888829686678806710917575453954490014920648387949140380475916337694113792\n", + "79763539286592899854856916430754405001588608811567212770295071715374172275859206397287247926962711320989865888024965064491514795569470027840765789843539896214710924847236506894556788899791452223039646638505423254104919797232621661970048295689709117284834997702771515685946067951536747550926654953842575840181758193285061369558497585761522138668841380757601447667787243500956137347324370160755537089564436178594034915937113344420450920916016551688632473630568173140911660571076859420587238252367695684220401204283327899317195712863234287484339010030868380372824241159633964108418220690096853607837881866637399712617531052402353055841997231142557903407042913010719095376247150154546784237727293769035248000292240400130393656923320181576440785969480087229422335767759433979415120004416135714964246318832871802910831567420352288664681760908355308602605709798435129905191501279259898645538798887998148154174764008582954090439687737985442834718164126879404422542284536664988656990153691888534620758134586335122771467777659373357613421835150907908980029841296775898280760951832675388227584\n", + "159527078573185799709713832861508810003177217623134425540590143430748344551718412794574495853925422641979731776049930128983029591138940055681531579687079792429421849694473013789113577799582904446079293277010846508209839594465243323940096591379418234569669995405543031371892135903073495101853309907685151680363516386570122739116995171523044277337682761515202895335574487001912274694648740321511074179128872357188069831874226688840901841832033103377264947261136346281823321142153718841174476504735391368440802408566655798634391425726468574968678020061736760745648482319267928216836441380193707215675763733274799425235062104804706111683994462285115806814085826021438190752494300309093568475454587538070496000584480800260787313846640363152881571938960174458844671535518867958830240008832271429928492637665743605821663134840704577329363521816710617205211419596870259810383002558519797291077597775996296308349528017165908180879375475970885669436328253758808845084569073329977313980307383777069241516269172670245542935555318746715226843670301815817960059682593551796561521903665350776455168\n", + "319054157146371599419427665723017620006354435246268851081180286861496689103436825589148991707850845283959463552099860257966059182277880111363063159374159584858843699388946027578227155599165808892158586554021693016419679188930486647880193182758836469139339990811086062743784271806146990203706619815370303360727032773140245478233990343046088554675365523030405790671148974003824549389297480643022148358257744714376139663748453377681803683664066206754529894522272692563646642284307437682348953009470782736881604817133311597268782851452937149937356040123473521491296964638535856433672882760387414431351527466549598850470124209609412223367988924570231613628171652042876381504988600618187136950909175076140992001168961600521574627693280726305763143877920348917689343071037735917660480017664542859856985275331487211643326269681409154658727043633421234410422839193740519620766005117039594582155195551992592616699056034331816361758750951941771338872656507517617690169138146659954627960614767554138483032538345340491085871110637493430453687340603631635920119365187103593123043807330701552910336\n", + "638108314292743198838855331446035240012708870492537702162360573722993378206873651178297983415701690567918927104199720515932118364555760222726126318748319169717687398777892055156454311198331617784317173108043386032839358377860973295760386365517672938278679981622172125487568543612293980407413239630740606721454065546280490956467980686092177109350731046060811581342297948007649098778594961286044296716515489428752279327496906755363607367328132413509059789044545385127293284568614875364697906018941565473763209634266623194537565702905874299874712080246947042982593929277071712867345765520774828862703054933099197700940248419218824446735977849140463227256343304085752763009977201236374273901818350152281984002337923201043149255386561452611526287755840697835378686142075471835320960035329085719713970550662974423286652539362818309317454087266842468820845678387481039241532010234079189164310391103985185233398112068663632723517501903883542677745313015035235380338276293319909255921229535108276966065076690680982171742221274986860907374681207263271840238730374207186246087614661403105820672\n", + "1276216628585486397677710662892070480025417740985075404324721147445986756413747302356595966831403381135837854208399441031864236729111520445452252637496638339435374797555784110312908622396663235568634346216086772065678716755721946591520772731035345876557359963244344250975137087224587960814826479261481213442908131092560981912935961372184354218701462092121623162684595896015298197557189922572088593433030978857504558654993813510727214734656264827018119578089090770254586569137229750729395812037883130947526419268533246389075131405811748599749424160493894085965187858554143425734691531041549657725406109866198395401880496838437648893471955698280926454512686608171505526019954402472748547803636700304563968004675846402086298510773122905223052575511681395670757372284150943670641920070658171439427941101325948846573305078725636618634908174533684937641691356774962078483064020468158378328620782207970370466796224137327265447035003807767085355490626030070470760676552586639818511842459070216553932130153381361964343484442549973721814749362414526543680477460748414372492175229322806211641344\n", + "2552433257170972795355421325784140960050835481970150808649442294891973512827494604713191933662806762271675708416798882063728473458223040890904505274993276678870749595111568220625817244793326471137268692432173544131357433511443893183041545462070691753114719926488688501950274174449175921629652958522962426885816262185121963825871922744368708437402924184243246325369191792030596395114379845144177186866061957715009117309987627021454429469312529654036239156178181540509173138274459501458791624075766261895052838537066492778150262811623497199498848320987788171930375717108286851469383062083099315450812219732396790803760993676875297786943911396561852909025373216343011052039908804945497095607273400609127936009351692804172597021546245810446105151023362791341514744568301887341283840141316342878855882202651897693146610157451273237269816349067369875283382713549924156966128040936316756657241564415940740933592448274654530894070007615534170710981252060140941521353105173279637023684918140433107864260306762723928686968885099947443629498724829053087360954921496828744984350458645612423282688\n", + "5104866514341945590710842651568281920101670963940301617298884589783947025654989209426383867325613524543351416833597764127456946916446081781809010549986553357741499190223136441251634489586652942274537384864347088262714867022887786366083090924141383506229439852977377003900548348898351843259305917045924853771632524370243927651743845488737416874805848368486492650738383584061192790228759690288354373732123915430018234619975254042908858938625059308072478312356363081018346276548919002917583248151532523790105677074132985556300525623246994398997696641975576343860751434216573702938766124166198630901624439464793581607521987353750595573887822793123705818050746432686022104079817609890994191214546801218255872018703385608345194043092491620892210302046725582683029489136603774682567680282632685757711764405303795386293220314902546474539632698134739750566765427099848313932256081872633513314483128831881481867184896549309061788140015231068341421962504120281883042706210346559274047369836280866215728520613525447857373937770199894887258997449658106174721909842993657489968700917291224846565376\n", + "10209733028683891181421685303136563840203341927880603234597769179567894051309978418852767734651227049086702833667195528254913893832892163563618021099973106715482998380446272882503268979173305884549074769728694176525429734045775572732166181848282767012458879705954754007801096697796703686518611834091849707543265048740487855303487690977474833749611696736972985301476767168122385580457519380576708747464247830860036469239950508085817717877250118616144956624712726162036692553097838005835166496303065047580211354148265971112601051246493988797995393283951152687721502868433147405877532248332397261803248878929587163215043974707501191147775645586247411636101492865372044208159635219781988382429093602436511744037406771216690388086184983241784420604093451165366058978273207549365135360565265371515423528810607590772586440629805092949079265396269479501133530854199696627864512163745267026628966257663762963734369793098618123576280030462136682843925008240563766085412420693118548094739672561732431457041227050895714747875540399789774517994899316212349443819685987314979937401834582449693130752\n", + "20419466057367782362843370606273127680406683855761206469195538359135788102619956837705535469302454098173405667334391056509827787665784327127236042199946213430965996760892545765006537958346611769098149539457388353050859468091551145464332363696565534024917759411909508015602193395593407373037223668183699415086530097480975710606975381954949667499223393473945970602953534336244771160915038761153417494928495661720072938479901016171635435754500237232289913249425452324073385106195676011670332992606130095160422708296531942225202102492987977595990786567902305375443005736866294811755064496664794523606497757859174326430087949415002382295551291172494823272202985730744088416319270439563976764858187204873023488074813542433380776172369966483568841208186902330732117956546415098730270721130530743030847057621215181545172881259610185898158530792538959002267061708399393255729024327490534053257932515327525927468739586197236247152560060924273365687850016481127532170824841386237096189479345123464862914082454101791429495751080799579549035989798632424698887639371974629959874803669164899386261504\n", + "40838932114735564725686741212546255360813367711522412938391076718271576205239913675411070938604908196346811334668782113019655575331568654254472084399892426861931993521785091530013075916693223538196299078914776706101718936183102290928664727393131068049835518823819016031204386791186814746074447336367398830173060194961951421213950763909899334998446786947891941205907068672489542321830077522306834989856991323440145876959802032343270871509000474464579826498850904648146770212391352023340665985212260190320845416593063884450404204985975955191981573135804610750886011473732589623510128993329589047212995515718348652860175898830004764591102582344989646544405971461488176832638540879127953529716374409746046976149627084866761552344739932967137682416373804661464235913092830197460541442261061486061694115242430363090345762519220371796317061585077918004534123416798786511458048654981068106515865030655051854937479172394472494305120121848546731375700032962255064341649682772474192378958690246929725828164908203582858991502161599159098071979597264849397775278743949259919749607338329798772523008\n", + "81677864229471129451373482425092510721626735423044825876782153436543152410479827350822141877209816392693622669337564226039311150663137308508944168799784853723863987043570183060026151833386447076392598157829553412203437872366204581857329454786262136099671037647638032062408773582373629492148894672734797660346120389923902842427901527819798669996893573895783882411814137344979084643660155044613669979713982646880291753919604064686541743018000948929159652997701809296293540424782704046681331970424520380641690833186127768900808409971951910383963146271609221501772022947465179247020257986659178094425991031436697305720351797660009529182205164689979293088811942922976353665277081758255907059432748819492093952299254169733523104689479865934275364832747609322928471826185660394921082884522122972123388230484860726180691525038440743592634123170155836009068246833597573022916097309962136213031730061310103709874958344788944988610240243697093462751400065924510128683299365544948384757917380493859451656329816407165717983004323198318196143959194529698795550557487898519839499214676659597545046016\n", + "163355728458942258902746964850185021443253470846089651753564306873086304820959654701644283754419632785387245338675128452078622301326274617017888337599569707447727974087140366120052303666772894152785196315659106824406875744732409163714658909572524272199342075295276064124817547164747258984297789345469595320692240779847805684855803055639597339993787147791567764823628274689958169287320310089227339959427965293760583507839208129373083486036001897858319305995403618592587080849565408093362663940849040761283381666372255537801616819943903820767926292543218443003544045894930358494040515973318356188851982062873394611440703595320019058364410329379958586177623885845952707330554163516511814118865497638984187904598508339467046209378959731868550729665495218645856943652371320789842165769044245944246776460969721452361383050076881487185268246340311672018136493667195146045832194619924272426063460122620207419749916689577889977220480487394186925502800131849020257366598731089896769515834760987718903312659632814331435966008646396636392287918389059397591101114975797039678998429353319195090092032\n", + "326711456917884517805493929700370042886506941692179303507128613746172609641919309403288567508839265570774490677350256904157244602652549234035776675199139414895455948174280732240104607333545788305570392631318213648813751489464818327429317819145048544398684150590552128249635094329494517968595578690939190641384481559695611369711606111279194679987574295583135529647256549379916338574640620178454679918855930587521167015678416258746166972072003795716638611990807237185174161699130816186725327881698081522566763332744511075603233639887807641535852585086436886007088091789860716988081031946636712377703964125746789222881407190640038116728820658759917172355247771691905414661108327033023628237730995277968375809197016678934092418757919463737101459330990437291713887304742641579684331538088491888493552921939442904722766100153762974370536492680623344036272987334390292091664389239848544852126920245240414839499833379155779954440960974788373851005600263698040514733197462179793539031669521975437806625319265628662871932017292793272784575836778118795182202229951594079357996858706638390180184064\n", + "653422913835769035610987859400740085773013883384358607014257227492345219283838618806577135017678531141548981354700513808314489205305098468071553350398278829790911896348561464480209214667091576611140785262636427297627502978929636654858635638290097088797368301181104256499270188658989035937191157381878381282768963119391222739423212222558389359975148591166271059294513098759832677149281240356909359837711861175042334031356832517492333944144007591433277223981614474370348323398261632373450655763396163045133526665489022151206467279775615283071705170172873772014176183579721433976162063893273424755407928251493578445762814381280076233457641317519834344710495543383810829322216654066047256475461990555936751618394033357868184837515838927474202918661980874583427774609485283159368663076176983776987105843878885809445532200307525948741072985361246688072545974668780584183328778479697089704253840490480829678999666758311559908881921949576747702011200527396081029466394924359587078063339043950875613250638531257325743864034585586545569151673556237590364404459903188158715993717413276780360368128\n", + "1306845827671538071221975718801480171546027766768717214028514454984690438567677237613154270035357062283097962709401027616628978410610196936143106700796557659581823792697122928960418429334183153222281570525272854595255005957859273309717271276580194177594736602362208512998540377317978071874382314763756762565537926238782445478846424445116778719950297182332542118589026197519665354298562480713818719675423722350084668062713665034984667888288015182866554447963228948740696646796523264746901311526792326090267053330978044302412934559551230566143410340345747544028352367159442867952324127786546849510815856502987156891525628762560152466915282635039668689420991086767621658644433308132094512950923981111873503236788066715736369675031677854948405837323961749166855549218970566318737326152353967553974211687757771618891064400615051897482145970722493376145091949337561168366657556959394179408507680980961659357999333516623119817763843899153495404022401054792162058932789848719174156126678087901751226501277062514651487728069171173091138303347112475180728808919806376317431987434826553560720736256\n", + "2613691655343076142443951437602960343092055533537434428057028909969380877135354475226308540070714124566195925418802055233257956821220393872286213401593115319163647585394245857920836858668366306444563141050545709190510011915718546619434542553160388355189473204724417025997080754635956143748764629527513525131075852477564890957692848890233557439900594364665084237178052395039330708597124961427637439350847444700169336125427330069969335776576030365733108895926457897481393293593046529493802623053584652180534106661956088604825869119102461132286820680691495088056704734318885735904648255573093699021631713005974313783051257525120304933830565270079337378841982173535243317288866616264189025901847962223747006473576133431472739350063355709896811674647923498333711098437941132637474652304707935107948423375515543237782128801230103794964291941444986752290183898675122336733315113918788358817015361961923318715998667033246239635527687798306990808044802109584324117865579697438348312253356175803502453002554125029302975456138342346182276606694224950361457617839612752634863974869653107121441472512\n", + "5227383310686152284887902875205920686184111067074868856114057819938761754270708950452617080141428249132391850837604110466515913642440787744572426803186230638327295170788491715841673717336732612889126282101091418381020023831437093238869085106320776710378946409448834051994161509271912287497529259055027050262151704955129781915385697780467114879801188729330168474356104790078661417194249922855274878701694889400338672250854660139938671553152060731466217791852915794962786587186093058987605246107169304361068213323912177209651738238204922264573641361382990176113409468637771471809296511146187398043263426011948627566102515050240609867661130540158674757683964347070486634577733232528378051803695924447494012947152266862945478700126711419793623349295846996667422196875882265274949304609415870215896846751031086475564257602460207589928583882889973504580367797350244673466630227837576717634030723923846637431997334066492479271055375596613981616089604219168648235731159394876696624506712351607004906005108250058605950912276684692364553213388449900722915235679225505269727949739306214242882945024\n", + "10454766621372304569775805750411841372368222134149737712228115639877523508541417900905234160282856498264783701675208220933031827284881575489144853606372461276654590341576983431683347434673465225778252564202182836762040047662874186477738170212641553420757892818897668103988323018543824574995058518110054100524303409910259563830771395560934229759602377458660336948712209580157322834388499845710549757403389778800677344501709320279877343106304121462932435583705831589925573174372186117975210492214338608722136426647824354419303476476409844529147282722765980352226818937275542943618593022292374796086526852023897255132205030100481219735322261080317349515367928694140973269155466465056756103607391848894988025894304533725890957400253422839587246698591693993334844393751764530549898609218831740431793693502062172951128515204920415179857167765779947009160735594700489346933260455675153435268061447847693274863994668132984958542110751193227963232179208438337296471462318789753393249013424703214009812010216500117211901824553369384729106426776899801445830471358451010539455899478612428485765890048\n", + "20909533242744609139551611500823682744736444268299475424456231279755047017082835801810468320565712996529567403350416441866063654569763150978289707212744922553309180683153966863366694869346930451556505128404365673524080095325748372955476340425283106841515785637795336207976646037087649149990117036220108201048606819820519127661542791121868459519204754917320673897424419160314645668776999691421099514806779557601354689003418640559754686212608242925864871167411663179851146348744372235950420984428677217444272853295648708838606952952819689058294565445531960704453637874551085887237186044584749592173053704047794510264410060200962439470644522160634699030735857388281946538310932930113512207214783697789976051788609067451781914800506845679174493397183387986669688787503529061099797218437663480863587387004124345902257030409840830359714335531559894018321471189400978693866520911350306870536122895695386549727989336265969917084221502386455926464358416876674592942924637579506786498026849406428019624020433000234423803649106738769458212853553799602891660942716902021078911798957224856971531780096\n", + "41819066485489218279103223001647365489472888536598950848912462559510094034165671603620936641131425993059134806700832883732127309139526301956579414425489845106618361366307933726733389738693860903113010256808731347048160190651496745910952680850566213683031571275590672415953292074175298299980234072440216402097213639641038255323085582243736919038409509834641347794848838320629291337553999382842199029613559115202709378006837281119509372425216485851729742334823326359702292697488744471900841968857354434888545706591297417677213905905639378116589130891063921408907275749102171774474372089169499184346107408095589020528820120401924878941289044321269398061471714776563893076621865860227024414429567395579952103577218134903563829601013691358348986794366775973339377575007058122199594436875326961727174774008248691804514060819681660719428671063119788036642942378801957387733041822700613741072245791390773099455978672531939834168443004772911852928716833753349185885849275159013572996053698812856039248040866000468847607298213477538916425707107599205783321885433804042157823597914449713943063560192\n", + "83638132970978436558206446003294730978945777073197901697824925119020188068331343207241873282262851986118269613401665767464254618279052603913158828850979690213236722732615867453466779477387721806226020513617462694096320381302993491821905361701132427366063142551181344831906584148350596599960468144880432804194427279282076510646171164487473838076819019669282695589697676641258582675107998765684398059227118230405418756013674562239018744850432971703459484669646652719404585394977488943801683937714708869777091413182594835354427811811278756233178261782127842817814551498204343548948744178338998368692214816191178041057640240803849757882578088642538796122943429553127786153243731720454048828859134791159904207154436269807127659202027382716697973588733551946678755150014116244399188873750653923454349548016497383609028121639363321438857342126239576073285884757603914775466083645401227482144491582781546198911957345063879668336886009545823705857433667506698371771698550318027145992107397625712078496081732000937695214596426955077832851414215198411566643770867608084315647195828899427886127120384\n", + "167276265941956873116412892006589461957891554146395803395649850238040376136662686414483746564525703972236539226803331534928509236558105207826317657701959380426473445465231734906933558954775443612452041027234925388192640762605986983643810723402264854732126285102362689663813168296701193199920936289760865608388854558564153021292342328974947676153638039338565391179395353282517165350215997531368796118454236460810837512027349124478037489700865943406918969339293305438809170789954977887603367875429417739554182826365189670708855623622557512466356523564255685635629102996408687097897488356677996737384429632382356082115280481607699515765156177285077592245886859106255572306487463440908097657718269582319808414308872539614255318404054765433395947177467103893357510300028232488798377747501307846908699096032994767218056243278726642877714684252479152146571769515207829550932167290802454964288983165563092397823914690127759336673772019091647411714867335013396743543397100636054291984214795251424156992163464001875390429192853910155665702828430396823133287541735216168631294391657798855772254240768\n", + "334552531883913746232825784013178923915783108292791606791299700476080752273325372828967493129051407944473078453606663069857018473116210415652635315403918760852946890930463469813867117909550887224904082054469850776385281525211973967287621446804529709464252570204725379327626336593402386399841872579521731216777709117128306042584684657949895352307276078677130782358790706565034330700431995062737592236908472921621675024054698248956074979401731886813837938678586610877618341579909955775206735750858835479108365652730379341417711247245115024932713047128511371271258205992817374195794976713355993474768859264764712164230560963215399031530312354570155184491773718212511144612974926881816195315436539164639616828617745079228510636808109530866791894354934207786715020600056464977596755495002615693817398192065989534436112486557453285755429368504958304293143539030415659101864334581604909928577966331126184795647829380255518673347544038183294823429734670026793487086794201272108583968429590502848313984326928003750780858385707820311331405656860793646266575083470432337262588783315597711544508481536\n", + "669105063767827492465651568026357847831566216585583213582599400952161504546650745657934986258102815888946156907213326139714036946232420831305270630807837521705893781860926939627734235819101774449808164108939701552770563050423947934575242893609059418928505140409450758655252673186804772799683745159043462433555418234256612085169369315899790704614552157354261564717581413130068661400863990125475184473816945843243350048109396497912149958803463773627675877357173221755236683159819911550413471501717670958216731305460758682835422494490230049865426094257022742542516411985634748391589953426711986949537718529529424328461121926430798063060624709140310368983547436425022289225949853763632390630873078329279233657235490158457021273616219061733583788709868415573430041200112929955193510990005231387634796384131979068872224973114906571510858737009916608586287078060831318203728669163209819857155932662252369591295658760511037346695088076366589646859469340053586974173588402544217167936859181005696627968653856007501561716771415640622662811313721587292533150166940864674525177566631195423089016963072\n", + "1338210127535654984931303136052715695663132433171166427165198801904323009093301491315869972516205631777892313814426652279428073892464841662610541261615675043411787563721853879255468471638203548899616328217879403105541126100847895869150485787218118837857010280818901517310505346373609545599367490318086924867110836468513224170338738631799581409229104314708523129435162826260137322801727980250950368947633891686486700096218792995824299917606927547255351754714346443510473366319639823100826943003435341916433462610921517365670844988980460099730852188514045485085032823971269496783179906853423973899075437059058848656922243852861596126121249418280620737967094872850044578451899707527264781261746156658558467314470980316914042547232438123467167577419736831146860082400225859910387021980010462775269592768263958137744449946229813143021717474019833217172574156121662636407457338326419639714311865324504739182591317521022074693390176152733179293718938680107173948347176805088434335873718362011393255937307712015003123433542831281245325622627443174585066300333881729349050355133262390846178033926144\n", + "2676420255071309969862606272105431391326264866342332854330397603808646018186602982631739945032411263555784627628853304558856147784929683325221082523231350086823575127443707758510936943276407097799232656435758806211082252201695791738300971574436237675714020561637803034621010692747219091198734980636173849734221672937026448340677477263599162818458208629417046258870325652520274645603455960501900737895267783372973400192437585991648599835213855094510703509428692887020946732639279646201653886006870683832866925221843034731341689977960920199461704377028090970170065647942538993566359813706847947798150874118117697313844487705723192252242498836561241475934189745700089156903799415054529562523492313317116934628941960633828085094464876246934335154839473662293720164800451719820774043960020925550539185536527916275488899892459626286043434948039666434345148312243325272814914676652839279428623730649009478365182635042044149386780352305466358587437877360214347896694353610176868671747436724022786511874615424030006246867085662562490651245254886349170132600667763458698100710266524781692356067852288\n", + "5352840510142619939725212544210862782652529732684665708660795207617292036373205965263479890064822527111569255257706609117712295569859366650442165046462700173647150254887415517021873886552814195598465312871517612422164504403391583476601943148872475351428041123275606069242021385494438182397469961272347699468443345874052896681354954527198325636916417258834092517740651305040549291206911921003801475790535566745946800384875171983297199670427710189021407018857385774041893465278559292403307772013741367665733850443686069462683379955921840398923408754056181940340131295885077987132719627413695895596301748236235394627688975411446384504484997673122482951868379491400178313807598830109059125046984626634233869257883921267656170188929752493868670309678947324587440329600903439641548087920041851101078371073055832550977799784919252572086869896079332868690296624486650545629829353305678558857247461298018956730365270084088298773560704610932717174875754720428695793388707220353737343494873448045573023749230848060012493734171325124981302490509772698340265201335526917396201420533049563384712135704576\n", + "10705681020285239879450425088421725565305059465369331417321590415234584072746411930526959780129645054223138510515413218235424591139718733300884330092925400347294300509774831034043747773105628391196930625743035224844329008806783166953203886297744950702856082246551212138484042770988876364794939922544695398936886691748105793362709909054396651273832834517668185035481302610081098582413823842007602951581071133491893600769750343966594399340855420378042814037714771548083786930557118584806615544027482735331467700887372138925366759911843680797846817508112363880680262591770155974265439254827391791192603496472470789255377950822892769008969995346244965903736758982800356627615197660218118250093969253268467738515767842535312340377859504987737340619357894649174880659201806879283096175840083702202156742146111665101955599569838505144173739792158665737380593248973301091259658706611357117714494922596037913460730540168176597547121409221865434349751509440857391586777414440707474686989746896091146047498461696120024987468342650249962604981019545396680530402671053834792402841066099126769424271409152\n", + "21411362040570479758900850176843451130610118930738662834643180830469168145492823861053919560259290108446277021030826436470849182279437466601768660185850800694588601019549662068087495546211256782393861251486070449688658017613566333906407772595489901405712164493102424276968085541977752729589879845089390797873773383496211586725419818108793302547665669035336370070962605220162197164827647684015205903162142266983787201539500687933188798681710840756085628075429543096167573861114237169613231088054965470662935401774744277850733519823687361595693635016224727761360525183540311948530878509654783582385206992944941578510755901645785538017939990692489931807473517965600713255230395320436236500187938506536935477031535685070624680755719009975474681238715789298349761318403613758566192351680167404404313484292223330203911199139677010288347479584317331474761186497946602182519317413222714235428989845192075826921461080336353195094242818443730868699503018881714783173554828881414949373979493792182292094996923392240049974936685300499925209962039090793361060805342107669584805682132198253538848542818304\n", + "42822724081140959517801700353686902261220237861477325669286361660938336290985647722107839120518580216892554042061652872941698364558874933203537320371701601389177202039099324136174991092422513564787722502972140899377316035227132667812815545190979802811424328986204848553936171083955505459179759690178781595747546766992423173450839636217586605095331338070672740141925210440324394329655295368030411806324284533967574403079001375866377597363421681512171256150859086192335147722228474339226462176109930941325870803549488555701467039647374723191387270032449455522721050367080623897061757019309567164770413985889883157021511803291571076035879981384979863614947035931201426510460790640872473000375877013073870954063071370141249361511438019950949362477431578596699522636807227517132384703360334808808626968584446660407822398279354020576694959168634662949522372995893204365038634826445428470857979690384151653842922160672706390188485636887461737399006037763429566347109657762829898747958987584364584189993846784480099949873370600999850419924078181586722121610684215339169611364264396507077697085636608\n", + "85645448162281919035603400707373804522440475722954651338572723321876672581971295444215678241037160433785108084123305745883396729117749866407074640743403202778354404078198648272349982184845027129575445005944281798754632070454265335625631090381959605622848657972409697107872342167911010918359519380357563191495093533984846346901679272435173210190662676141345480283850420880648788659310590736060823612648569067935148806158002751732755194726843363024342512301718172384670295444456948678452924352219861882651741607098977111402934079294749446382774540064898911045442100734161247794123514038619134329540827971779766314043023606583142152071759962769959727229894071862402853020921581281744946000751754026147741908126142740282498723022876039901898724954863157193399045273614455034264769406720669617617253937168893320815644796558708041153389918337269325899044745991786408730077269652890856941715959380768303307685844321345412780376971273774923474798012075526859132694219315525659797495917975168729168379987693568960199899746741201999700839848156363173444243221368430678339222728528793014155394171273216\n", + "171290896324563838071206801414747609044880951445909302677145446643753345163942590888431356482074320867570216168246611491766793458235499732814149281486806405556708808156397296544699964369690054259150890011888563597509264140908530671251262180763919211245697315944819394215744684335822021836719038760715126382990187067969692693803358544870346420381325352282690960567700841761297577318621181472121647225297138135870297612316005503465510389453686726048685024603436344769340590888913897356905848704439723765303483214197954222805868158589498892765549080129797822090884201468322495588247028077238268659081655943559532628086047213166284304143519925539919454459788143724805706041843162563489892001503508052295483816252285480564997446045752079803797449909726314386798090547228910068529538813441339235234507874337786641631289593117416082306779836674538651798089491983572817460154539305781713883431918761536606615371688642690825560753942547549846949596024151053718265388438631051319594991835950337458336759975387137920399799493482403999401679696312726346888486442736861356678445457057586028310788342546432\n", + "342581792649127676142413602829495218089761902891818605354290893287506690327885181776862712964148641735140432336493222983533586916470999465628298562973612811113417616312794593089399928739380108518301780023777127195018528281817061342502524361527838422491394631889638788431489368671644043673438077521430252765980374135939385387606717089740692840762650704565381921135401683522595154637242362944243294450594276271740595224632011006931020778907373452097370049206872689538681181777827794713811697408879447530606966428395908445611736317178997785531098160259595644181768402936644991176494056154476537318163311887119065256172094426332568608287039851079838908919576287449611412083686325126979784003007016104590967632504570961129994892091504159607594899819452628773596181094457820137059077626882678470469015748675573283262579186234832164613559673349077303596178983967145634920309078611563427766863837523073213230743377285381651121507885095099693899192048302107436530776877262102639189983671900674916673519950774275840799598986964807998803359392625452693776972885473722713356890914115172056621576685092864\n", + "685163585298255352284827205658990436179523805783637210708581786575013380655770363553725425928297283470280864672986445967067173832941998931256597125947225622226835232625589186178799857478760217036603560047554254390037056563634122685005048723055676844982789263779277576862978737343288087346876155042860505531960748271878770775213434179481385681525301409130763842270803367045190309274484725888486588901188552543481190449264022013862041557814746904194740098413745379077362363555655589427623394817758895061213932856791816891223472634357995571062196320519191288363536805873289982352988112308953074636326623774238130512344188852665137216574079702159677817839152574899222824167372650253959568006014032209181935265009141922259989784183008319215189799638905257547192362188915640274118155253765356940938031497351146566525158372469664329227119346698154607192357967934291269840618157223126855533727675046146426461486754570763302243015770190199387798384096604214873061553754524205278379967343801349833347039901548551681599197973929615997606718785250905387553945770947445426713781828230344113243153370185728\n", + "1370327170596510704569654411317980872359047611567274421417163573150026761311540727107450851856594566940561729345972891934134347665883997862513194251894451244453670465251178372357599714957520434073207120095108508780074113127268245370010097446111353689965578527558555153725957474686576174693752310085721011063921496543757541550426868358962771363050602818261527684541606734090380618548969451776973177802377105086962380898528044027724083115629493808389480196827490758154724727111311178855246789635517790122427865713583633782446945268715991142124392641038382576727073611746579964705976224617906149272653247548476261024688377705330274433148159404319355635678305149798445648334745300507919136012028064418363870530018283844519979568366016638430379599277810515094384724377831280548236310507530713881876062994702293133050316744939328658454238693396309214384715935868582539681236314446253711067455350092292852922973509141526604486031540380398775596768193208429746123107509048410556759934687602699666694079803097103363198395947859231995213437570501810775107891541894890853427563656460688226486306740371456\n", + "2740654341193021409139308822635961744718095223134548842834327146300053522623081454214901703713189133881123458691945783868268695331767995725026388503788902488907340930502356744715199429915040868146414240190217017560148226254536490740020194892222707379931157055117110307451914949373152349387504620171442022127842993087515083100853736717925542726101205636523055369083213468180761237097938903553946355604754210173924761797056088055448166231258987616778960393654981516309449454222622357710493579271035580244855731427167267564893890537431982284248785282076765153454147223493159929411952449235812298545306495096952522049376755410660548866296318808638711271356610299596891296669490601015838272024056128836727741060036567689039959136732033276860759198555621030188769448755662561096472621015061427763752125989404586266100633489878657316908477386792618428769431871737165079362472628892507422134910700184585705845947018283053208972063080760797551193536386416859492246215018096821113519869375205399333388159606194206726396791895718463990426875141003621550215783083789781706855127312921376452972613480742912\n", + "5481308682386042818278617645271923489436190446269097685668654292600107045246162908429803407426378267762246917383891567736537390663535991450052777007577804977814681861004713489430398859830081736292828480380434035120296452509072981480040389784445414759862314110234220614903829898746304698775009240342884044255685986175030166201707473435851085452202411273046110738166426936361522474195877807107892711209508420347849523594112176110896332462517975233557920787309963032618898908445244715420987158542071160489711462854334535129787781074863964568497570564153530306908294446986319858823904898471624597090612990193905044098753510821321097732592637617277422542713220599193782593338981202031676544048112257673455482120073135378079918273464066553721518397111242060377538897511325122192945242030122855527504251978809172532201266979757314633816954773585236857538863743474330158724945257785014844269821400369171411691894036566106417944126161521595102387072772833718984492430036193642227039738750410798666776319212388413452793583791436927980853750282007243100431566167579563413710254625842752905945226961485824\n", + "10962617364772085636557235290543846978872380892538195371337308585200214090492325816859606814852756535524493834767783135473074781327071982900105554015155609955629363722009426978860797719660163472585656960760868070240592905018145962960080779568890829519724628220468441229807659797492609397550018480685768088511371972350060332403414946871702170904404822546092221476332853872723044948391755614215785422419016840695699047188224352221792664925035950467115841574619926065237797816890489430841974317084142320979422925708669070259575562149727929136995141128307060613816588893972639717647809796943249194181225980387810088197507021642642195465185275234554845085426441198387565186677962404063353088096224515346910964240146270756159836546928133107443036794222484120755077795022650244385890484060245711055008503957618345064402533959514629267633909547170473715077727486948660317449890515570029688539642800738342823383788073132212835888252323043190204774145545667437968984860072387284454079477500821597333552638424776826905587167582873855961707500564014486200863132335159126827420509251685505811890453922971648\n", + "21925234729544171273114470581087693957744761785076390742674617170400428180984651633719213629705513071048987669535566270946149562654143965800211108030311219911258727444018853957721595439320326945171313921521736140481185810036291925920161559137781659039449256440936882459615319594985218795100036961371536177022743944700120664806829893743404341808809645092184442952665707745446089896783511228431570844838033681391398094376448704443585329850071900934231683149239852130475595633780978861683948634168284641958845851417338140519151124299455858273990282256614121227633177787945279435295619593886498388362451960775620176395014043285284390930370550469109690170852882396775130373355924808126706176192449030693821928480292541512319673093856266214886073588444968241510155590045300488771780968120491422110017007915236690128805067919029258535267819094340947430155454973897320634899781031140059377079285601476685646767576146264425671776504646086380409548291091334875937969720144774568908158955001643194667105276849553653811174335165747711923415001128028972401726264670318253654841018503371011623780907845943296\n", + "43850469459088342546228941162175387915489523570152781485349234340800856361969303267438427259411026142097975339071132541892299125308287931600422216060622439822517454888037707915443190878640653890342627843043472280962371620072583851840323118275563318078898512881873764919230639189970437590200073922743072354045487889400241329613659787486808683617619290184368885905331415490892179793567022456863141689676067362782796188752897408887170659700143801868463366298479704260951191267561957723367897268336569283917691702834676281038302248598911716547980564513228242455266355575890558870591239187772996776724903921551240352790028086570568781860741100938219380341705764793550260746711849616253412352384898061387643856960585083024639346187712532429772147176889936483020311180090600977543561936240982844220034015830473380257610135838058517070535638188681894860310909947794641269799562062280118754158571202953371293535152292528851343553009292172760819096582182669751875939440289549137816317910003286389334210553699107307622348670331495423846830002256057944803452529340636507309682037006742023247561815691886592\n", + "87700938918176685092457882324350775830979047140305562970698468681601712723938606534876854518822052284195950678142265083784598250616575863200844432121244879645034909776075415830886381757281307780685255686086944561924743240145167703680646236551126636157797025763747529838461278379940875180400147845486144708090975778800482659227319574973617367235238580368737771810662830981784359587134044913726283379352134725565592377505794817774341319400287603736926732596959408521902382535123915446735794536673138567835383405669352562076604497197823433095961129026456484910532711151781117741182478375545993553449807843102480705580056173141137563721482201876438760683411529587100521493423699232506824704769796122775287713921170166049278692375425064859544294353779872966040622360181201955087123872481965688440068031660946760515220271676117034141071276377363789720621819895589282539599124124560237508317142405906742587070304585057702687106018584345521638193164365339503751878880579098275632635820006572778668421107398214615244697340662990847693660004512115889606905058681273014619364074013484046495123631383773184\n", + "175401877836353370184915764648701551661958094280611125941396937363203425447877213069753709037644104568391901356284530167569196501233151726401688864242489759290069819552150831661772763514562615561370511372173889123849486480290335407361292473102253272315594051527495059676922556759881750360800295690972289416181951557600965318454639149947234734470477160737475543621325661963568719174268089827452566758704269451131184755011589635548682638800575207473853465193918817043804765070247830893471589073346277135670766811338705124153208994395646866191922258052912969821065422303562235482364956751091987106899615686204961411160112346282275127442964403752877521366823059174201042986847398465013649409539592245550575427842340332098557384750850129719088588707559745932081244720362403910174247744963931376880136063321893521030440543352234068282142552754727579441243639791178565079198248249120475016634284811813485174140609170115405374212037168691043276386328730679007503757761158196551265271640013145557336842214796429230489394681325981695387320009024231779213810117362546029238728148026968092990247262767546368\n", + "350803755672706740369831529297403103323916188561222251882793874726406850895754426139507418075288209136783802712569060335138393002466303452803377728484979518580139639104301663323545527029125231122741022744347778247698972960580670814722584946204506544631188103054990119353845113519763500721600591381944578832363903115201930636909278299894469468940954321474951087242651323927137438348536179654905133517408538902262369510023179271097365277601150414947706930387837634087609530140495661786943178146692554271341533622677410248306417988791293732383844516105825939642130844607124470964729913502183974213799231372409922822320224692564550254885928807505755042733646118348402085973694796930027298819079184491101150855684680664197114769501700259438177177415119491864162489440724807820348495489927862753760272126643787042060881086704468136564285105509455158882487279582357130158396496498240950033268569623626970348281218340230810748424074337382086552772657461358015007515522316393102530543280026291114673684429592858460978789362651963390774640018048463558427620234725092058477456296053936185980494525535092736\n", + "701607511345413480739663058594806206647832377122444503765587749452813701791508852279014836150576418273567605425138120670276786004932606905606755456969959037160279278208603326647091054058250462245482045488695556495397945921161341629445169892409013089262376206109980238707690227039527001443201182763889157664727806230403861273818556599788938937881908642949902174485302647854274876697072359309810267034817077804524739020046358542194730555202300829895413860775675268175219060280991323573886356293385108542683067245354820496612835977582587464767689032211651879284261689214248941929459827004367948427598462744819845644640449385129100509771857615011510085467292236696804171947389593860054597638158368982202301711369361328394229539003400518876354354830238983728324978881449615640696990979855725507520544253287574084121762173408936273128570211018910317764974559164714260316792992996481900066537139247253940696562436680461621496848148674764173105545314922716030015031044632786205061086560052582229347368859185716921957578725303926781549280036096927116855240469450184116954912592107872371960989051070185472\n", + "1403215022690826961479326117189612413295664754244889007531175498905627403583017704558029672301152836547135210850276241340553572009865213811213510913939918074320558556417206653294182108116500924490964090977391112990795891842322683258890339784818026178524752412219960477415380454079054002886402365527778315329455612460807722547637113199577877875763817285899804348970605295708549753394144718619620534069634155609049478040092717084389461110404601659790827721551350536350438120561982647147772712586770217085366134490709640993225671955165174929535378064423303758568523378428497883858919654008735896855196925489639691289280898770258201019543715230023020170934584473393608343894779187720109195276316737964404603422738722656788459078006801037752708709660477967456649957762899231281393981959711451015041088506575148168243524346817872546257140422037820635529949118329428520633585985992963800133074278494507881393124873360923242993696297349528346211090629845432060030062089265572410122173120105164458694737718371433843915157450607853563098560072193854233710480938900368233909825184215744743921978102140370944\n", + "2806430045381653922958652234379224826591329508489778015062350997811254807166035409116059344602305673094270421700552482681107144019730427622427021827879836148641117112834413306588364216233001848981928181954782225981591783684645366517780679569636052357049504824439920954830760908158108005772804731055556630658911224921615445095274226399155755751527634571799608697941210591417099506788289437239241068139268311218098956080185434168778922220809203319581655443102701072700876241123965294295545425173540434170732268981419281986451343910330349859070756128846607517137046756856995767717839308017471793710393850979279382578561797540516402039087430460046040341869168946787216687789558375440218390552633475928809206845477445313576918156013602075505417419320955934913299915525798462562787963919422902030082177013150296336487048693635745092514280844075641271059898236658857041267171971985927600266148556989015762786249746721846485987392594699056692422181259690864120060124178531144820244346240210328917389475436742867687830314901215707126197120144387708467420961877800736467819650368431489487843956204280741888\n", + "5612860090763307845917304468758449653182659016979556030124701995622509614332070818232118689204611346188540843401104965362214288039460855244854043655759672297282234225668826613176728432466003697963856363909564451963183567369290733035561359139272104714099009648879841909661521816316216011545609462111113261317822449843230890190548452798311511503055269143599217395882421182834199013576578874478482136278536622436197912160370868337557844441618406639163310886205402145401752482247930588591090850347080868341464537962838563972902687820660699718141512257693215034274093513713991535435678616034943587420787701958558765157123595081032804078174860920092080683738337893574433375579116750880436781105266951857618413690954890627153836312027204151010834838641911869826599831051596925125575927838845804060164354026300592672974097387271490185028561688151282542119796473317714082534343943971855200532297113978031525572499493443692971974785189398113384844362519381728240120248357062289640488692480420657834778950873485735375660629802431414252394240288775416934841923755601472935639300736862978975687912408561483776\n", + "11225720181526615691834608937516899306365318033959112060249403991245019228664141636464237378409222692377081686802209930724428576078921710489708087311519344594564468451337653226353456864932007395927712727819128903926367134738581466071122718278544209428198019297759683819323043632632432023091218924222226522635644899686461780381096905596623023006110538287198434791764842365668398027153157748956964272557073244872395824320741736675115688883236813278326621772410804290803504964495861177182181700694161736682929075925677127945805375641321399436283024515386430068548187027427983070871357232069887174841575403917117530314247190162065608156349721840184161367476675787148866751158233501760873562210533903715236827381909781254307672624054408302021669677283823739653199662103193850251151855677691608120328708052601185345948194774542980370057123376302565084239592946635428165068687887943710401064594227956063051144998986887385943949570378796226769688725038763456480240496714124579280977384960841315669557901746971470751321259604862828504788480577550833869683847511202945871278601473725957951375824817122967552\n", + "22451440363053231383669217875033798612730636067918224120498807982490038457328283272928474756818445384754163373604419861448857152157843420979416174623038689189128936902675306452706913729864014791855425455638257807852734269477162932142245436557088418856396038595519367638646087265264864046182437848444453045271289799372923560762193811193246046012221076574396869583529684731336796054306315497913928545114146489744791648641483473350231377766473626556653243544821608581607009928991722354364363401388323473365858151851354255891610751282642798872566049030772860137096374054855966141742714464139774349683150807834235060628494380324131216312699443680368322734953351574297733502316467003521747124421067807430473654763819562508615345248108816604043339354567647479306399324206387700502303711355383216240657416105202370691896389549085960740114246752605130168479185893270856330137375775887420802129188455912126102289997973774771887899140757592453539377450077526912960480993428249158561954769921682631339115803493942941502642519209725657009576961155101667739367695022405891742557202947451915902751649634245935104\n", + "44902880726106462767338435750067597225461272135836448240997615964980076914656566545856949513636890769508326747208839722897714304315686841958832349246077378378257873805350612905413827459728029583710850911276515615705468538954325864284490873114176837712792077191038735277292174530529728092364875696888906090542579598745847121524387622386492092024442153148793739167059369462673592108612630995827857090228292979489583297282966946700462755532947253113306487089643217163214019857983444708728726802776646946731716303702708511783221502565285597745132098061545720274192748109711932283485428928279548699366301615668470121256988760648262432625398887360736645469906703148595467004632934007043494248842135614860947309527639125017230690496217633208086678709135294958612798648412775401004607422710766432481314832210404741383792779098171921480228493505210260336958371786541712660274751551774841604258376911824252204579995947549543775798281515184907078754900155053825920961986856498317123909539843365262678231606987885883005285038419451314019153922310203335478735390044811783485114405894903831805503299268491870208\n", + "89805761452212925534676871500135194450922544271672896481995231929960153829313133091713899027273781539016653494417679445795428608631373683917664698492154756756515747610701225810827654919456059167421701822553031231410937077908651728568981746228353675425584154382077470554584349061059456184729751393777812181085159197491694243048775244772984184048884306297587478334118738925347184217225261991655714180456585958979166594565933893400925511065894506226612974179286434326428039715966889417457453605553293893463432607405417023566443005130571195490264196123091440548385496219423864566970857856559097398732603231336940242513977521296524865250797774721473290939813406297190934009265868014086988497684271229721894619055278250034461380992435266416173357418270589917225597296825550802009214845421532864962629664420809482767585558196343842960456987010420520673916743573083425320549503103549683208516753823648504409159991895099087551596563030369814157509800310107651841923973712996634247819079686730525356463213975771766010570076838902628038307844620406670957470780089623566970228811789807663611006598536983740416\n", + "179611522904425851069353743000270388901845088543345792963990463859920307658626266183427798054547563078033306988835358891590857217262747367835329396984309513513031495221402451621655309838912118334843403645106062462821874155817303457137963492456707350851168308764154941109168698122118912369459502787555624362170318394983388486097550489545968368097768612595174956668237477850694368434450523983311428360913171917958333189131867786801851022131789012453225948358572868652856079431933778834914907211106587786926865214810834047132886010261142390980528392246182881096770992438847729133941715713118194797465206462673880485027955042593049730501595549442946581879626812594381868018531736028173976995368542459443789238110556500068922761984870532832346714836541179834451194593651101604018429690843065729925259328841618965535171116392687685920913974020841041347833487146166850641099006207099366417033507647297008818319983790198175103193126060739628315019600620215303683847947425993268495638159373461050712926427951543532021140153677805256076615689240813341914941560179247133940457623579615327222013197073967480832\n", + "359223045808851702138707486000540777803690177086691585927980927719840615317252532366855596109095126156066613977670717783181714434525494735670658793968619027026062990442804903243310619677824236669686807290212124925643748311634606914275926984913414701702336617528309882218337396244237824738919005575111248724340636789966776972195100979091936736195537225190349913336474955701388736868901047966622856721826343835916666378263735573603702044263578024906451896717145737305712158863867557669829814422213175573853730429621668094265772020522284781961056784492365762193541984877695458267883431426236389594930412925347760970055910085186099461003191098885893163759253625188763736037063472056347953990737084918887578476221113000137845523969741065664693429673082359668902389187302203208036859381686131459850518657683237931070342232785375371841827948041682082695666974292333701282198012414198732834067015294594017636639967580396350206386252121479256630039201240430607367695894851986536991276318746922101425852855903087064042280307355610512153231378481626683829883120358494267880915247159230654444026394147934961664\n", + "718446091617703404277414972001081555607380354173383171855961855439681230634505064733711192218190252312133227955341435566363428869050989471341317587937238054052125980885609806486621239355648473339373614580424249851287496623269213828551853969826829403404673235056619764436674792488475649477838011150222497448681273579933553944390201958183873472391074450380699826672949911402777473737802095933245713443652687671833332756527471147207404088527156049812903793434291474611424317727735115339659628844426351147707460859243336188531544041044569563922113568984731524387083969755390916535766862852472779189860825850695521940111820170372198922006382197771786327518507250377527472074126944112695907981474169837775156952442226000275691047939482131329386859346164719337804778374604406416073718763372262919701037315366475862140684465570750743683655896083364165391333948584667402564396024828397465668134030589188035273279935160792700412772504242958513260078402480861214735391789703973073982552637493844202851705711806174128084560614711221024306462756963253367659766240716988535761830494318461308888052788295869923328\n", + "1436892183235406808554829944002163111214760708346766343711923710879362461269010129467422384436380504624266455910682871132726857738101978942682635175874476108104251961771219612973242478711296946678747229160848499702574993246538427657103707939653658806809346470113239528873349584976951298955676022300444994897362547159867107888780403916367746944782148900761399653345899822805554947475604191866491426887305375343666665513054942294414808177054312099625807586868582949222848635455470230679319257688852702295414921718486672377063088082089139127844227137969463048774167939510781833071533725704945558379721651701391043880223640340744397844012764395543572655037014500755054944148253888225391815962948339675550313904884452000551382095878964262658773718692329438675609556749208812832147437526744525839402074630732951724281368931141501487367311792166728330782667897169334805128792049656794931336268061178376070546559870321585400825545008485917026520156804961722429470783579407946147965105274987688405703411423612348256169121229422442048612925513926506735319532481433977071523660988636922617776105576591739846656\n", + "2873784366470813617109659888004326222429521416693532687423847421758724922538020258934844768872761009248532911821365742265453715476203957885365270351748952216208503923542439225946484957422593893357494458321696999405149986493076855314207415879307317613618692940226479057746699169953902597911352044600889989794725094319734215777560807832735493889564297801522799306691799645611109894951208383732982853774610750687333331026109884588829616354108624199251615173737165898445697270910940461358638515377705404590829843436973344754126176164178278255688454275938926097548335879021563666143067451409891116759443303402782087760447280681488795688025528791087145310074029001510109888296507776450783631925896679351100627809768904001102764191757928525317547437384658877351219113498417625664294875053489051678804149261465903448562737862283002974734623584333456661565335794338669610257584099313589862672536122356752141093119740643170801651090016971834053040313609923444858941567158815892295930210549975376811406822847224696512338242458844884097225851027853013470639064962867954143047321977273845235552211153183479693312\n", + "5747568732941627234219319776008652444859042833387065374847694843517449845076040517869689537745522018497065823642731484530907430952407915770730540703497904432417007847084878451892969914845187786714988916643393998810299972986153710628414831758614635227237385880452958115493398339907805195822704089201779979589450188639468431555121615665470987779128595603045598613383599291222219789902416767465965707549221501374666662052219769177659232708217248398503230347474331796891394541821880922717277030755410809181659686873946689508252352328356556511376908551877852195096671758043127332286134902819782233518886606805564175520894561362977591376051057582174290620148058003020219776593015552901567263851793358702201255619537808002205528383515857050635094874769317754702438226996835251328589750106978103357608298522931806897125475724566005949469247168666913323130671588677339220515168198627179725345072244713504282186239481286341603302180033943668106080627219846889717883134317631784591860421099950753622813645694449393024676484917689768194451702055706026941278129925735908286094643954547690471104422306366959386624\n", + "11495137465883254468438639552017304889718085666774130749695389687034899690152081035739379075491044036994131647285462969061814861904815831541461081406995808864834015694169756903785939829690375573429977833286787997620599945972307421256829663517229270454474771760905916230986796679815610391645408178403559959178900377278936863110243231330941975558257191206091197226767198582444439579804833534931931415098443002749333324104439538355318465416434496797006460694948663593782789083643761845434554061510821618363319373747893379016504704656713113022753817103755704390193343516086254664572269805639564467037773213611128351041789122725955182752102115164348581240296116006040439553186031105803134527703586717404402511239075616004411056767031714101270189749538635509404876453993670502657179500213956206715216597045863613794250951449132011898938494337333826646261343177354678441030336397254359450690144489427008564372478962572683206604360067887336212161254439693779435766268635263569183720842199901507245627291388898786049352969835379536388903404111412053882556259851471816572189287909095380942208844612733918773248\n", + "22990274931766508936877279104034609779436171333548261499390779374069799380304162071478758150982088073988263294570925938123629723809631663082922162813991617729668031388339513807571879659380751146859955666573575995241199891944614842513659327034458540908949543521811832461973593359631220783290816356807119918357800754557873726220486462661883951116514382412182394453534397164888879159609667069863862830196886005498666648208879076710636930832868993594012921389897327187565578167287523690869108123021643236726638747495786758033009409313426226045507634207511408780386687032172509329144539611279128934075546427222256702083578245451910365504204230328697162480592232012080879106372062211606269055407173434808805022478151232008822113534063428202540379499077271018809752907987341005314359000427912413430433194091727227588501902898264023797876988674667653292522686354709356882060672794508718901380288978854017128744957925145366413208720135774672424322508879387558871532537270527138367441684399803014491254582777797572098705939670759072777806808222824107765112519702943633144378575818190761884417689225467837546496\n", + "45980549863533017873754558208069219558872342667096522998781558748139598760608324142957516301964176147976526589141851876247259447619263326165844325627983235459336062776679027615143759318761502293719911333147151990482399783889229685027318654068917081817899087043623664923947186719262441566581632713614239836715601509115747452440972925323767902233028764824364788907068794329777758319219334139727725660393772010997333296417758153421273861665737987188025842779794654375131156334575047381738216246043286473453277494991573516066018818626852452091015268415022817560773374064345018658289079222558257868151092854444513404167156490903820731008408460657394324961184464024161758212744124423212538110814346869617610044956302464017644227068126856405080758998154542037619505815974682010628718000855824826860866388183454455177003805796528047595753977349335306585045372709418713764121345589017437802760577957708034257489915850290732826417440271549344848645017758775117743065074541054276734883368799606028982509165555595144197411879341518145555613616445648215530225039405887266288757151636381523768835378450935675092992\n", + "91961099727066035747509116416138439117744685334193045997563117496279197521216648285915032603928352295953053178283703752494518895238526652331688651255966470918672125553358055230287518637523004587439822666294303980964799567778459370054637308137834163635798174087247329847894373438524883133163265427228479673431203018231494904881945850647535804466057529648729577814137588659555516638438668279455451320787544021994666592835516306842547723331475974376051685559589308750262312669150094763476432492086572946906554989983147032132037637253704904182030536830045635121546748128690037316578158445116515736302185708889026808334312981807641462016816921314788649922368928048323516425488248846425076221628693739235220089912604928035288454136253712810161517996309084075239011631949364021257436001711649653721732776366908910354007611593056095191507954698670613170090745418837427528242691178034875605521155915416068514979831700581465652834880543098689697290035517550235486130149082108553469766737599212057965018331111190288394823758683036291111227232891296431060450078811774532577514303272763047537670756901871350185984\n", + "183922199454132071495018232832276878235489370668386091995126234992558395042433296571830065207856704591906106356567407504989037790477053304663377302511932941837344251106716110460575037275046009174879645332588607961929599135556918740109274616275668327271596348174494659695788746877049766266326530854456959346862406036462989809763891701295071608932115059297459155628275177319111033276877336558910902641575088043989333185671032613685095446662951948752103371119178617500524625338300189526952864984173145893813109979966294064264075274507409808364061073660091270243093496257380074633156316890233031472604371417778053616668625963615282924033633842629577299844737856096647032850976497692850152443257387478470440179825209856070576908272507425620323035992618168150478023263898728042514872003423299307443465552733817820708015223186112190383015909397341226340181490837674855056485382356069751211042311830832137029959663401162931305669761086197379394580071035100470972260298164217106939533475198424115930036662222380576789647517366072582222454465782592862120900157623549065155028606545526095075341513803742700371968\n", + "367844398908264142990036465664553756470978741336772183990252469985116790084866593143660130415713409183812212713134815009978075580954106609326754605023865883674688502213432220921150074550092018349759290665177215923859198271113837480218549232551336654543192696348989319391577493754099532532653061708913918693724812072925979619527783402590143217864230118594918311256550354638222066553754673117821805283150176087978666371342065227370190893325903897504206742238357235001049250676600379053905729968346291787626219959932588128528150549014819616728122147320182540486186992514760149266312633780466062945208742835556107233337251927230565848067267685259154599689475712193294065701952995385700304886514774956940880359650419712141153816545014851240646071985236336300956046527797456085029744006846598614886931105467635641416030446372224380766031818794682452680362981675349710112970764712139502422084623661664274059919326802325862611339522172394758789160142070200941944520596328434213879066950396848231860073324444761153579295034732145164444908931565185724241800315247098130310057213091052190150683027607485400743936\n", + "735688797816528285980072931329107512941957482673544367980504939970233580169733186287320260831426818367624425426269630019956151161908213218653509210047731767349377004426864441842300149100184036699518581330354431847718396542227674960437098465102673309086385392697978638783154987508199065065306123417827837387449624145851959239055566805180286435728460237189836622513100709276444133107509346235643610566300352175957332742684130454740381786651807795008413484476714470002098501353200758107811459936692583575252439919865176257056301098029639233456244294640365080972373985029520298532625267560932125890417485671112214466674503854461131696134535370518309199378951424386588131403905990771400609773029549913881760719300839424282307633090029702481292143970472672601912093055594912170059488013693197229773862210935271282832060892744448761532063637589364905360725963350699420225941529424279004844169247323328548119838653604651725222679044344789517578320284140401883889041192656868427758133900793696463720146648889522307158590069464290328889817863130371448483600630494196260620114426182104380301366055214970801487872\n", + "1471377595633056571960145862658215025883914965347088735961009879940467160339466372574640521662853636735248850852539260039912302323816426437307018420095463534698754008853728883684600298200368073399037162660708863695436793084455349920874196930205346618172770785395957277566309975016398130130612246835655674774899248291703918478111133610360572871456920474379673245026201418552888266215018692471287221132600704351914665485368260909480763573303615590016826968953428940004197002706401516215622919873385167150504879839730352514112602196059278466912488589280730161944747970059040597065250535121864251780834971342224428933349007708922263392269070741036618398757902848773176262807811981542801219546059099827763521438601678848564615266180059404962584287940945345203824186111189824340118976027386394459547724421870542565664121785488897523064127275178729810721451926701398840451883058848558009688338494646657096239677307209303450445358088689579035156640568280803767778082385313736855516267801587392927440293297779044614317180138928580657779635726260742896967201260988392521240228852364208760602732110429941602975744\n", + "2942755191266113143920291725316430051767829930694177471922019759880934320678932745149281043325707273470497701705078520079824604647632852874614036840190927069397508017707457767369200596400736146798074325321417727390873586168910699841748393860410693236345541570791914555132619950032796260261224493671311349549798496583407836956222267220721145742913840948759346490052402837105776532430037384942574442265201408703829330970736521818961527146607231180033653937906857880008394005412803032431245839746770334301009759679460705028225204392118556933824977178561460323889495940118081194130501070243728503561669942684448857866698015417844526784538141482073236797515805697546352525615623963085602439092118199655527042877203357697129230532360118809925168575881890690407648372222379648680237952054772788919095448843741085131328243570977795046128254550357459621442903853402797680903766117697116019376676989293314192479354614418606900890716177379158070313281136561607535556164770627473711032535603174785854880586595558089228634360277857161315559271452521485793934402521976785042480457704728417521205464220859883205951488\n", + "5885510382532226287840583450632860103535659861388354943844039519761868641357865490298562086651414546940995403410157040159649209295265705749228073680381854138795016035414915534738401192801472293596148650642835454781747172337821399683496787720821386472691083141583829110265239900065592520522448987342622699099596993166815673912444534441442291485827681897518692980104805674211553064860074769885148884530402817407658661941473043637923054293214462360067307875813715760016788010825606064862491679493540668602019519358921410056450408784237113867649954357122920647778991880236162388261002140487457007123339885368897715733396030835689053569076282964146473595031611395092705051231247926171204878184236399311054085754406715394258461064720237619850337151763781380815296744444759297360475904109545577838190897687482170262656487141955590092256509100714919242885807706805595361807532235394232038753353978586628384958709228837213801781432354758316140626562273123215071112329541254947422065071206349571709761173191116178457268720555714322631118542905042971587868805043953570084960915409456835042410928441719766411902976\n", + "11771020765064452575681166901265720207071319722776709887688079039523737282715730980597124173302829093881990806820314080319298418590531411498456147360763708277590032070829831069476802385602944587192297301285670909563494344675642799366993575441642772945382166283167658220530479800131185041044897974685245398199193986333631347824889068882884582971655363795037385960209611348423106129720149539770297769060805634815317323882946087275846108586428924720134615751627431520033576021651212129724983358987081337204039038717842820112900817568474227735299908714245841295557983760472324776522004280974914014246679770737795431466792061671378107138152565928292947190063222790185410102462495852342409756368472798622108171508813430788516922129440475239700674303527562761630593488889518594720951808219091155676381795374964340525312974283911180184513018201429838485771615413611190723615064470788464077506707957173256769917418457674427603562864709516632281253124546246430142224659082509894844130142412699143419522346382232356914537441111428645262237085810085943175737610087907140169921830818913670084821856883439532823805952\n", + "23542041530128905151362333802531440414142639445553419775376158079047474565431461961194248346605658187763981613640628160638596837181062822996912294721527416555180064141659662138953604771205889174384594602571341819126988689351285598733987150883285545890764332566335316441060959600262370082089795949370490796398387972667262695649778137765769165943310727590074771920419222696846212259440299079540595538121611269630634647765892174551692217172857849440269231503254863040067152043302424259449966717974162674408078077435685640225801635136948455470599817428491682591115967520944649553044008561949828028493359541475590862933584123342756214276305131856585894380126445580370820204924991704684819512736945597244216343017626861577033844258880950479401348607055125523261186977779037189441903616438182311352763590749928681050625948567822360369026036402859676971543230827222381447230128941576928155013415914346513539834836915348855207125729419033264562506249092492860284449318165019789688260284825398286839044692764464713829074882222857290524474171620171886351475220175814280339843661637827340169643713766879065647611904\n", + "47084083060257810302724667605062880828285278891106839550752316158094949130862923922388496693211316375527963227281256321277193674362125645993824589443054833110360128283319324277907209542411778348769189205142683638253977378702571197467974301766571091781528665132670632882121919200524740164179591898740981592796775945334525391299556275531538331886621455180149543840838445393692424518880598159081191076243222539261269295531784349103384434345715698880538463006509726080134304086604848518899933435948325348816156154871371280451603270273896910941199634856983365182231935041889299106088017123899656056986719082951181725867168246685512428552610263713171788760252891160741640409849983409369639025473891194488432686035253723154067688517761900958802697214110251046522373955558074378883807232876364622705527181499857362101251897135644720738052072805719353943086461654444762894460257883153856310026831828693027079669673830697710414251458838066529125012498184985720568898636330039579376520569650796573678089385528929427658149764445714581048948343240343772702950440351628560679687323275654680339287427533758131295223808\n", + "94168166120515620605449335210125761656570557782213679101504632316189898261725847844776993386422632751055926454562512642554387348724251291987649178886109666220720256566638648555814419084823556697538378410285367276507954757405142394935948603533142183563057330265341265764243838401049480328359183797481963185593551890669050782599112551063076663773242910360299087681676890787384849037761196318162382152486445078522538591063568698206768868691431397761076926013019452160268608173209697037799866871896650697632312309742742560903206540547793821882399269713966730364463870083778598212176034247799312113973438165902363451734336493371024857105220527426343577520505782321483280819699966818739278050947782388976865372070507446308135377035523801917605394428220502093044747911116148757767614465752729245411054362999714724202503794271289441476104145611438707886172923308889525788920515766307712620053663657386054159339347661395420828502917676133058250024996369971441137797272660079158753041139301593147356178771057858855316299528891429162097896686480687545405900880703257121359374646551309360678574855067516262590447616\n", + "188336332241031241210898670420251523313141115564427358203009264632379796523451695689553986772845265502111852909125025285108774697448502583975298357772219332441440513133277297111628838169647113395076756820570734553015909514810284789871897207066284367126114660530682531528487676802098960656718367594963926371187103781338101565198225102126153327546485820720598175363353781574769698075522392636324764304972890157045077182127137396413537737382862795522153852026038904320537216346419394075599733743793301395264624619485485121806413081095587643764798539427933460728927740167557196424352068495598624227946876331804726903468672986742049714210441054852687155041011564642966561639399933637478556101895564777953730744141014892616270754071047603835210788856441004186089495822232297515535228931505458490822108725999429448405007588542578882952208291222877415772345846617779051577841031532615425240107327314772108318678695322790841657005835352266116500049992739942882275594545320158317506082278603186294712357542115717710632599057782858324195793372961375090811801761406514242718749293102618721357149710135032525180895232\n", + "376672664482062482421797340840503046626282231128854716406018529264759593046903391379107973545690531004223705818250050570217549394897005167950596715544438664882881026266554594223257676339294226790153513641141469106031819029620569579743794414132568734252229321061365063056975353604197921313436735189927852742374207562676203130396450204252306655092971641441196350726707563149539396151044785272649528609945780314090154364254274792827075474765725591044307704052077808641074432692838788151199467487586602790529249238970970243612826162191175287529597078855866921457855480335114392848704136991197248455893752663609453806937345973484099428420882109705374310082023129285933123278799867274957112203791129555907461488282029785232541508142095207670421577712882008372178991644464595031070457863010916981644217451998858896810015177085157765904416582445754831544691693235558103155682063065230850480214654629544216637357390645581683314011670704532233000099985479885764551189090640316635012164557206372589424715084231435421265198115565716648391586745922750181623603522813028485437498586205237442714299420270065050361790464\n", + "753345328964124964843594681681006093252564462257709432812037058529519186093806782758215947091381062008447411636500101140435098789794010335901193431088877329765762052533109188446515352678588453580307027282282938212063638059241139159487588828265137468504458642122730126113950707208395842626873470379855705484748415125352406260792900408504613310185943282882392701453415126299078792302089570545299057219891560628180308728508549585654150949531451182088615408104155617282148865385677576302398934975173205581058498477941940487225652324382350575059194157711733842915710960670228785697408273982394496911787505327218907613874691946968198856841764219410748620164046258571866246557599734549914224407582259111814922976564059570465083016284190415340843155425764016744357983288929190062140915726021833963288434903997717793620030354170315531808833164891509663089383386471116206311364126130461700960429309259088433274714781291163366628023341409064466000199970959771529102378181280633270024329114412745178849430168462870842530396231131433296783173491845500363247207045626056970874997172410474885428598840540130100723580928\n", + "1506690657928249929687189363362012186505128924515418865624074117059038372187613565516431894182762124016894823273000202280870197579588020671802386862177754659531524105066218376893030705357176907160614054564565876424127276118482278318975177656530274937008917284245460252227901414416791685253746940759711410969496830250704812521585800817009226620371886565764785402906830252598157584604179141090598114439783121256360617457017099171308301899062902364177230816208311234564297730771355152604797869950346411162116996955883880974451304648764701150118388315423467685831421921340457571394816547964788993823575010654437815227749383893936397713683528438821497240328092517143732493115199469099828448815164518223629845953128119140930166032568380830681686310851528033488715966577858380124281831452043667926576869807995435587240060708340631063617666329783019326178766772942232412622728252260923401920858618518176866549429562582326733256046682818128932000399941919543058204756362561266540048658228825490357698860336925741685060792462262866593566346983691000726494414091252113941749994344820949770857197681080260201447161856\n", + "3013381315856499859374378726724024373010257849030837731248148234118076744375227131032863788365524248033789646546000404561740395159176041343604773724355509319063048210132436753786061410714353814321228109129131752848254552236964556637950355313060549874017834568490920504455802828833583370507493881519422821938993660501409625043171601634018453240743773131529570805813660505196315169208358282181196228879566242512721234914034198342616603798125804728354461632416622469128595461542710305209595739900692822324233993911767761948902609297529402300236776630846935371662843842680915142789633095929577987647150021308875630455498767787872795427367056877642994480656185034287464986230398938199656897630329036447259691906256238281860332065136761661363372621703056066977431933155716760248563662904087335853153739615990871174480121416681262127235332659566038652357533545884464825245456504521846803841717237036353733098859125164653466512093365636257864000799883839086116409512725122533080097316457650980715397720673851483370121584924525733187132693967382001452988828182504227883499988689641899541714395362160520402894323712\n", + "6026762631712999718748757453448048746020515698061675462496296468236153488750454262065727576731048496067579293092000809123480790318352082687209547448711018638126096420264873507572122821428707628642456218258263505696509104473929113275900710626121099748035669136981841008911605657667166741014987763038845643877987321002819250086343203268036906481487546263059141611627321010392630338416716564362392457759132485025442469828068396685233207596251609456708923264833244938257190923085420610419191479801385644648467987823535523897805218595058804600473553261693870743325687685361830285579266191859155975294300042617751260910997535575745590854734113755285988961312370068574929972460797876399313795260658072894519383812512476563720664130273523322726745243406112133954863866311433520497127325808174671706307479231981742348960242833362524254470665319132077304715067091768929650490913009043693607683434474072707466197718250329306933024186731272515728001599767678172232819025450245066160194632915301961430795441347702966740243169849051466374265387934764002905977656365008455766999977379283799083428790724321040805788647424\n", + "12053525263425999437497514906896097492041031396123350924992592936472306977500908524131455153462096992135158586184001618246961580636704165374419094897422037276252192840529747015144245642857415257284912436516527011393018208947858226551801421252242199496071338273963682017823211315334333482029975526077691287755974642005638500172686406536073812962975092526118283223254642020785260676833433128724784915518264970050884939656136793370466415192503218913417846529666489876514381846170841220838382959602771289296935975647071047795610437190117609200947106523387741486651375370723660571158532383718311950588600085235502521821995071151491181709468227510571977922624740137149859944921595752798627590521316145789038767625024953127441328260547046645453490486812224267909727732622867040994254651616349343412614958463963484697920485666725048508941330638264154609430134183537859300981826018087387215366868948145414932395436500658613866048373462545031456003199535356344465638050900490132320389265830603922861590882695405933480486339698102932748530775869528005811955312730016911533999954758567598166857581448642081611577294848\n", + "24107050526851998874995029813792194984082062792246701849985185872944613955001817048262910306924193984270317172368003236493923161273408330748838189794844074552504385681059494030288491285714830514569824873033054022786036417895716453103602842504484398992142676547927364035646422630668666964059951052155382575511949284011277000345372813072147625925950185052236566446509284041570521353666866257449569831036529940101769879312273586740932830385006437826835693059332979753028763692341682441676765919205542578593871951294142095591220874380235218401894213046775482973302750741447321142317064767436623901177200170471005043643990142302982363418936455021143955845249480274299719889843191505597255181042632291578077535250049906254882656521094093290906980973624448535819455465245734081988509303232698686825229916927926969395840971333450097017882661276528309218860268367075718601963652036174774430733737896290829864790873001317227732096746925090062912006399070712688931276101800980264640778531661207845723181765390811866960972679396205865497061551739056011623910625460033823067999909517135196333715162897284163223154589696\n", + "48214101053703997749990059627584389968164125584493403699970371745889227910003634096525820613848387968540634344736006472987846322546816661497676379589688149105008771362118988060576982571429661029139649746066108045572072835791432906207205685008968797984285353095854728071292845261337333928119902104310765151023898568022554000690745626144295251851900370104473132893018568083141042707333732514899139662073059880203539758624547173481865660770012875653671386118665959506057527384683364883353531838411085157187743902588284191182441748760470436803788426093550965946605501482894642284634129534873247802354400340942010087287980284605964726837872910042287911690498960548599439779686383011194510362085264583156155070500099812509765313042188186581813961947248897071638910930491468163977018606465397373650459833855853938791681942666900194035765322553056618437720536734151437203927304072349548861467475792581659729581746002634455464193493850180125824012798141425377862552203601960529281557063322415691446363530781623733921945358792411730994123103478112023247821250920067646135999819034270392667430325794568326446309179392\n", + "96428202107407995499980119255168779936328251168986807399940743491778455820007268193051641227696775937081268689472012945975692645093633322995352759179376298210017542724237976121153965142859322058279299492132216091144145671582865812414411370017937595968570706191709456142585690522674667856239804208621530302047797136045108001381491252288590503703800740208946265786037136166282085414667465029798279324146119760407079517249094346963731321540025751307342772237331919012115054769366729766707063676822170314375487805176568382364883497520940873607576852187101931893211002965789284569268259069746495604708800681884020174575960569211929453675745820084575823380997921097198879559372766022389020724170529166312310141000199625019530626084376373163627923894497794143277821860982936327954037212930794747300919667711707877583363885333800388071530645106113236875441073468302874407854608144699097722934951585163319459163492005268910928386987700360251648025596282850755725104407203921058563114126644831382892727061563247467843890717584823461988246206956224046495642501840135292271999638068540785334860651589136652892618358784\n", + "192856404214815990999960238510337559872656502337973614799881486983556911640014536386103282455393551874162537378944025891951385290187266645990705518358752596420035085448475952242307930285718644116558598984264432182288291343165731624828822740035875191937141412383418912285171381045349335712479608417243060604095594272090216002762982504577181007407601480417892531572074272332564170829334930059596558648292239520814159034498188693927462643080051502614685544474663838024230109538733459533414127353644340628750975610353136764729766995041881747215153704374203863786422005931578569138536518139492991209417601363768040349151921138423858907351491640169151646761995842194397759118745532044778041448341058332624620282000399250039061252168752746327255847788995588286555643721965872655908074425861589494601839335423415755166727770667600776143061290212226473750882146936605748815709216289398195445869903170326638918326984010537821856773975400720503296051192565701511450208814407842117126228253289662765785454123126494935687781435169646923976492413912448092991285003680270584543999276137081570669721303178273305785236717568\n", + "385712808429631981999920477020675119745313004675947229599762973967113823280029072772206564910787103748325074757888051783902770580374533291981411036717505192840070170896951904484615860571437288233117197968528864364576582686331463249657645480071750383874282824766837824570342762090698671424959216834486121208191188544180432005525965009154362014815202960835785063144148544665128341658669860119193117296584479041628318068996377387854925286160103005229371088949327676048460219077466919066828254707288681257501951220706273529459533990083763494430307408748407727572844011863157138277073036278985982418835202727536080698303842276847717814702983280338303293523991684388795518237491064089556082896682116665249240564000798500078122504337505492654511695577991176573111287443931745311816148851723178989203678670846831510333455541335201552286122580424452947501764293873211497631418432578796390891739806340653277836653968021075643713547950801441006592102385131403022900417628815684234252456506579325531570908246252989871375562870339293847952984827824896185982570007360541169087998552274163141339442606356546611570473435136\n", + "771425616859263963999840954041350239490626009351894459199525947934227646560058145544413129821574207496650149515776103567805541160749066583962822073435010385680140341793903808969231721142874576466234395937057728729153165372662926499315290960143500767748565649533675649140685524181397342849918433668972242416382377088360864011051930018308724029630405921671570126288297089330256683317339720238386234593168958083256636137992754775709850572320206010458742177898655352096920438154933838133656509414577362515003902441412547058919067980167526988860614817496815455145688023726314276554146072557971964837670405455072161396607684553695435629405966560676606587047983368777591036474982128179112165793364233330498481128001597000156245008675010985309023391155982353146222574887863490623632297703446357978407357341693663020666911082670403104572245160848905895003528587746422995262836865157592781783479612681306555673307936042151287427095901602882013184204770262806045800835257631368468504913013158651063141816492505979742751125740678587695905969655649792371965140014721082338175997104548326282678885212713093223140946870272\n", + "1542851233718527927999681908082700478981252018703788918399051895868455293120116291088826259643148414993300299031552207135611082321498133167925644146870020771360280683587807617938463442285749152932468791874115457458306330745325852998630581920287001535497131299067351298281371048362794685699836867337944484832764754176721728022103860036617448059260811843343140252576594178660513366634679440476772469186337916166513272275985509551419701144640412020917484355797310704193840876309867676267313018829154725030007804882825094117838135960335053977721229634993630910291376047452628553108292145115943929675340810910144322793215369107390871258811933121353213174095966737555182072949964256358224331586728466660996962256003194000312490017350021970618046782311964706292445149775726981247264595406892715956814714683387326041333822165340806209144490321697811790007057175492845990525673730315185563566959225362613111346615872084302574854191803205764026368409540525612091601670515262736937009826026317302126283632985011959485502251481357175391811939311299584743930280029442164676351994209096652565357770425426186446281893740544\n", + "3085702467437055855999363816165400957962504037407577836798103791736910586240232582177652519286296829986600598063104414271222164642996266335851288293740041542720561367175615235876926884571498305864937583748230914916612661490651705997261163840574003070994262598134702596562742096725589371399673734675888969665529508353443456044207720073234896118521623686686280505153188357321026733269358880953544938372675832333026544551971019102839402289280824041834968711594621408387681752619735352534626037658309450060015609765650188235676271920670107955442459269987261820582752094905257106216584290231887859350681621820288645586430738214781742517623866242706426348191933475110364145899928512716448663173456933321993924512006388000624980034700043941236093564623929412584890299551453962494529190813785431913629429366774652082667644330681612418288980643395623580014114350985691981051347460630371127133918450725226222693231744168605149708383606411528052736819081051224183203341030525473874019652052634604252567265970023918971004502962714350783623878622599169487860560058884329352703988418193305130715540850852372892563787481088\n", + "6171404934874111711998727632330801915925008074815155673596207583473821172480465164355305038572593659973201196126208828542444329285992532671702576587480083085441122734351230471753853769142996611729875167496461829833225322981303411994522327681148006141988525196269405193125484193451178742799347469351777939331059016706886912088415440146469792237043247373372561010306376714642053466538717761907089876745351664666053089103942038205678804578561648083669937423189242816775363505239470705069252075316618900120031219531300376471352543841340215910884918539974523641165504189810514212433168580463775718701363243640577291172861476429563485035247732485412852696383866950220728291799857025432897326346913866643987849024012776001249960069400087882472187129247858825169780599102907924989058381627570863827258858733549304165335288661363224836577961286791247160028228701971383962102694921260742254267836901450452445386463488337210299416767212823056105473638162102448366406682061050947748039304105269208505134531940047837942009005925428701567247757245198338975721120117768658705407976836386610261431081701704745785127574962176\n", + "12342809869748223423997455264661603831850016149630311347192415166947642344960930328710610077145187319946402392252417657084888658571985065343405153174960166170882245468702460943507707538285993223459750334992923659666450645962606823989044655362296012283977050392538810386250968386902357485598694938703555878662118033413773824176830880292939584474086494746745122020612753429284106933077435523814179753490703329332106178207884076411357609157123296167339874846378485633550727010478941410138504150633237800240062439062600752942705087682680431821769837079949047282331008379621028424866337160927551437402726487281154582345722952859126970070495464970825705392767733900441456583599714050865794652693827733287975698048025552002499920138800175764944374258495717650339561198205815849978116763255141727654517717467098608330670577322726449673155922573582494320056457403942767924205389842521484508535673802900904890772926976674420598833534425646112210947276324204896732813364122101895496078608210538417010269063880095675884018011850857403134495514490396677951442240235537317410815953672773220522862163403409491570255149924352\n", + "24685619739496446847994910529323207663700032299260622694384830333895284689921860657421220154290374639892804784504835314169777317143970130686810306349920332341764490937404921887015415076571986446919500669985847319332901291925213647978089310724592024567954100785077620772501936773804714971197389877407111757324236066827547648353661760585879168948172989493490244041225506858568213866154871047628359506981406658664212356415768152822715218314246592334679749692756971267101454020957882820277008301266475600480124878125201505885410175365360863643539674159898094564662016759242056849732674321855102874805452974562309164691445905718253940140990929941651410785535467800882913167199428101731589305387655466575951396096051104004999840277600351529888748516991435300679122396411631699956233526510283455309035434934197216661341154645452899346311845147164988640112914807885535848410779685042969017071347605801809781545853953348841197667068851292224421894552648409793465626728244203790992157216421076834020538127760191351768036023701714806268991028980793355902884480471074634821631907345546441045724326806818983140510299848704\n", + "49371239478992893695989821058646415327400064598521245388769660667790569379843721314842440308580749279785609569009670628339554634287940261373620612699840664683528981874809843774030830153143972893839001339971694638665802583850427295956178621449184049135908201570155241545003873547609429942394779754814223514648472133655095296707323521171758337896345978986980488082451013717136427732309742095256719013962813317328424712831536305645430436628493184669359499385513942534202908041915765640554016602532951200960249756250403011770820350730721727287079348319796189129324033518484113699465348643710205749610905949124618329382891811436507880281981859883302821571070935601765826334398856203463178610775310933151902792192102208009999680555200703059777497033982870601358244792823263399912467053020566910618070869868394433322682309290905798692623690294329977280225829615771071696821559370085938034142695211603619563091707906697682395334137702584448843789105296819586931253456488407581984314432842153668041076255520382703536072047403429612537982057961586711805768960942149269643263814691092882091448653613637966281020599697408\n", + "98742478957985787391979642117292830654800129197042490777539321335581138759687442629684880617161498559571219138019341256679109268575880522747241225399681329367057963749619687548061660306287945787678002679943389277331605167700854591912357242898368098271816403140310483090007747095218859884789559509628447029296944267310190593414647042343516675792691957973960976164902027434272855464619484190513438027925626634656849425663072611290860873256986369338718998771027885068405816083831531281108033205065902401920499512500806023541640701461443454574158696639592378258648067036968227398930697287420411499221811898249236658765783622873015760563963719766605643142141871203531652668797712406926357221550621866303805584384204416019999361110401406119554994067965741202716489585646526799824934106041133821236141739736788866645364618581811597385247380588659954560451659231542143393643118740171876068285390423207239126183415813395364790668275405168897687578210593639173862506912976815163968628865684307336082152511040765407072144094806859225075964115923173423611537921884298539286527629382185764182897307227275932562041199394816\n", + "197484957915971574783959284234585661309600258394084981555078642671162277519374885259369761234322997119142438276038682513358218537151761045494482450799362658734115927499239375096123320612575891575356005359886778554663210335401709183824714485796736196543632806280620966180015494190437719769579119019256894058593888534620381186829294084687033351585383915947921952329804054868545710929238968381026876055851253269313698851326145222581721746513972738677437997542055770136811632167663062562216066410131804803840999025001612047083281402922886909148317393279184756517296134073936454797861394574840822998443623796498473317531567245746031521127927439533211286284283742407063305337595424813852714443101243732607611168768408832039998722220802812239109988135931482405432979171293053599649868212082267642472283479473577733290729237163623194770494761177319909120903318463084286787286237480343752136570780846414478252366831626790729581336550810337795375156421187278347725013825953630327937257731368614672164305022081530814144288189613718450151928231846346847223075843768597078573055258764371528365794614454551865124082398789632\n", + "394969915831943149567918568469171322619200516788169963110157285342324555038749770518739522468645994238284876552077365026716437074303522090988964901598725317468231854998478750192246641225151783150712010719773557109326420670803418367649428971593472393087265612561241932360030988380875439539158238038513788117187777069240762373658588169374066703170767831895843904659608109737091421858477936762053752111702506538627397702652290445163443493027945477354875995084111540273623264335326125124432132820263609607681998050003224094166562805845773818296634786558369513034592268147872909595722789149681645996887247592996946635063134491492063042255854879066422572568567484814126610675190849627705428886202487465215222337536817664079997444441605624478219976271862964810865958342586107199299736424164535284944566958947155466581458474327246389540989522354639818241806636926168573574572474960687504273141561692828956504733663253581459162673101620675590750312842374556695450027651907260655874515462737229344328610044163061628288576379227436900303856463692693694446151687537194157146110517528743056731589228909103730248164797579264\n", + "789939831663886299135837136938342645238401033576339926220314570684649110077499541037479044937291988476569753104154730053432874148607044181977929803197450634936463709996957500384493282450303566301424021439547114218652841341606836735298857943186944786174531225122483864720061976761750879078316476077027576234375554138481524747317176338748133406341535663791687809319216219474182843716955873524107504223405013077254795405304580890326886986055890954709751990168223080547246528670652250248864265640527219215363996100006448188333125611691547636593269573116739026069184536295745819191445578299363291993774495185993893270126268982984126084511709758132845145137134969628253221350381699255410857772404974930430444675073635328159994888883211248956439952543725929621731916685172214398599472848329070569889133917894310933162916948654492779081979044709279636483613273852337147149144949921375008546283123385657913009467326507162918325346203241351181500625684749113390900055303814521311749030925474458688657220088326123256577152758454873800607712927385387388892303375074388314292221035057486113463178457818207460496329595158528\n", + "1579879663327772598271674273876685290476802067152679852440629141369298220154999082074958089874583976953139506208309460106865748297214088363955859606394901269872927419993915000768986564900607132602848042879094228437305682683213673470597715886373889572349062450244967729440123953523501758156632952154055152468751108276963049494634352677496266812683071327583375618638432438948365687433911747048215008446810026154509590810609161780653773972111781909419503980336446161094493057341304500497728531281054438430727992200012896376666251223383095273186539146233478052138369072591491638382891156598726583987548990371987786540252537965968252169023419516265690290274269939256506442700763398510821715544809949860860889350147270656319989777766422497912879905087451859243463833370344428797198945696658141139778267835788621866325833897308985558163958089418559272967226547704674294298289899842750017092566246771315826018934653014325836650692406482702363001251369498226781800110607629042623498061850948917377314440176652246513154305516909747601215425854770774777784606750148776628584442070114972226926356915636414920992659190317056\n", + "3159759326655545196543348547753370580953604134305359704881258282738596440309998164149916179749167953906279012416618920213731496594428176727911719212789802539745854839987830001537973129801214265205696085758188456874611365366427346941195431772747779144698124900489935458880247907047003516313265904308110304937502216553926098989268705354992533625366142655166751237276864877896731374867823494096430016893620052309019181621218323561307547944223563818839007960672892322188986114682609000995457062562108876861455984400025792753332502446766190546373078292466956104276738145182983276765782313197453167975097980743975573080505075931936504338046839032531380580548539878513012885401526797021643431089619899721721778700294541312639979555532844995825759810174903718486927666740688857594397891393316282279556535671577243732651667794617971116327916178837118545934453095409348588596579799685500034185132493542631652037869306028651673301384812965404726002502738996453563600221215258085246996123701897834754628880353304493026308611033819495202430851709541549555569213500297553257168884140229944453852713831272829841985318380634112\n", + "6319518653311090393086697095506741161907208268610719409762516565477192880619996328299832359498335907812558024833237840427462993188856353455823438425579605079491709679975660003075946259602428530411392171516376913749222730732854693882390863545495558289396249800979870917760495814094007032626531808616220609875004433107852197978537410709985067250732285310333502474553729755793462749735646988192860033787240104618038363242436647122615095888447127637678015921345784644377972229365218001990914125124217753722911968800051585506665004893532381092746156584933912208553476290365966553531564626394906335950195961487951146161010151863873008676093678065062761161097079757026025770803053594043286862179239799443443557400589082625279959111065689991651519620349807436973855333481377715188795782786632564559113071343154487465303335589235942232655832357674237091868906190818697177193159599371000068370264987085263304075738612057303346602769625930809452005005477992907127200442430516170493992247403795669509257760706608986052617222067638990404861703419083099111138427000595106514337768280459888907705427662545659683970636761268224\n", + "12639037306622180786173394191013482323814416537221438819525033130954385761239992656599664718996671815625116049666475680854925986377712706911646876851159210158983419359951320006151892519204857060822784343032753827498445461465709387764781727090991116578792499601959741835520991628188014065253063617232441219750008866215704395957074821419970134501464570620667004949107459511586925499471293976385720067574480209236076726484873294245230191776894255275356031842691569288755944458730436003981828250248435507445823937600103171013330009787064762185492313169867824417106952580731933107063129252789812671900391922975902292322020303727746017352187356130125522322194159514052051541606107188086573724358479598886887114801178165250559918222131379983303039240699614873947710666962755430377591565573265129118226142686308974930606671178471884465311664715348474183737812381637394354386319198742000136740529974170526608151477224114606693205539251861618904010010955985814254400884861032340987984494807591339018515521413217972105234444135277980809723406838166198222276854001190213028675536560919777815410855325091319367941273522536448\n", + "25278074613244361572346788382026964647628833074442877639050066261908771522479985313199329437993343631250232099332951361709851972755425413823293753702318420317966838719902640012303785038409714121645568686065507654996890922931418775529563454181982233157584999203919483671041983256376028130506127234464882439500017732431408791914149642839940269002929141241334009898214919023173850998942587952771440135148960418472153452969746588490460383553788510550712063685383138577511888917460872007963656500496871014891647875200206342026660019574129524370984626339735648834213905161463866214126258505579625343800783845951804584644040607455492034704374712260251044644388319028104103083212214376173147448716959197773774229602356330501119836444262759966606078481399229747895421333925510860755183131146530258236452285372617949861213342356943768930623329430696948367475624763274788708772638397484000273481059948341053216302954448229213386411078503723237808020021911971628508801769722064681975968989615182678037031042826435944210468888270555961619446813676332396444553708002380426057351073121839555630821710650182638735882547045072896\n", + "50556149226488723144693576764053929295257666148885755278100132523817543044959970626398658875986687262500464198665902723419703945510850827646587507404636840635933677439805280024607570076819428243291137372131015309993781845862837551059126908363964466315169998407838967342083966512752056261012254468929764879000035464862817583828299285679880538005858282482668019796429838046347701997885175905542880270297920836944306905939493176980920767107577021101424127370766277155023777834921744015927313000993742029783295750400412684053320039148259048741969252679471297668427810322927732428252517011159250687601567691903609169288081214910984069408749424520502089288776638056208206166424428752346294897433918395547548459204712661002239672888525519933212156962798459495790842667851021721510366262293060516472904570745235899722426684713887537861246658861393896734951249526549577417545276794968000546962119896682106432605908896458426772822157007446475616040043823943257017603539444129363951937979230365356074062085652871888420937776541111923238893627352664792889107416004760852114702146243679111261643421300365277471765094090145792\n", + "101112298452977446289387153528107858590515332297771510556200265047635086089919941252797317751973374525000928397331805446839407891021701655293175014809273681271867354879610560049215140153638856486582274744262030619987563691725675102118253816727928932630339996815677934684167933025504112522024508937859529758000070929725635167656598571359761076011716564965336039592859676092695403995770351811085760540595841673888613811878986353961841534215154042202848254741532554310047555669843488031854626001987484059566591500800825368106640078296518097483938505358942595336855620645855464856505034022318501375203135383807218338576162429821968138817498849041004178577553276112416412332848857504692589794867836791095096918409425322004479345777051039866424313925596918991581685335702043443020732524586121032945809141490471799444853369427775075722493317722787793469902499053099154835090553589936001093924239793364212865211817792916853545644314014892951232080087647886514035207078888258727903875958460730712148124171305743776841875553082223846477787254705329585778214832009521704229404292487358222523286842600730554943530188180291584\n", + "202224596905954892578774307056215717181030664595543021112400530095270172179839882505594635503946749050001856794663610893678815782043403310586350029618547362543734709759221120098430280307277712973164549488524061239975127383451350204236507633455857865260679993631355869368335866051008225044049017875719059516000141859451270335313197142719522152023433129930672079185719352185390807991540703622171521081191683347777227623757972707923683068430308084405696509483065108620095111339686976063709252003974968119133183001601650736213280156593036194967877010717885190673711241291710929713010068044637002750406270767614436677152324859643936277634997698082008357155106552224832824665697715009385179589735673582190193836818850644008958691554102079732848627851193837983163370671404086886041465049172242065891618282980943598889706738855550151444986635445575586939804998106198309670181107179872002187848479586728425730423635585833707091288628029785902464160175295773028070414157776517455807751916921461424296248342611487553683751106164447692955574509410659171556429664019043408458808584974716445046573685201461109887060376360583168\n", + "404449193811909785157548614112431434362061329191086042224801060190540344359679765011189271007893498100003713589327221787357631564086806621172700059237094725087469419518442240196860560614555425946329098977048122479950254766902700408473015266911715730521359987262711738736671732102016450088098035751438119032000283718902540670626394285439044304046866259861344158371438704370781615983081407244343042162383366695554455247515945415847366136860616168811393018966130217240190222679373952127418504007949936238266366003203301472426560313186072389935754021435770381347422482583421859426020136089274005500812541535228873354304649719287872555269995396164016714310213104449665649331395430018770359179471347164380387673637701288017917383108204159465697255702387675966326741342808173772082930098344484131783236565961887197779413477711100302889973270891151173879609996212396619340362214359744004375696959173456851460847271171667414182577256059571804928320350591546056140828315553034911615503833842922848592496685222975107367502212328895385911149018821318343112859328038086816917617169949432890093147370402922219774120752721166336\n", + "808898387623819570315097228224862868724122658382172084449602120381080688719359530022378542015786996200007427178654443574715263128173613242345400118474189450174938839036884480393721121229110851892658197954096244959900509533805400816946030533823431461042719974525423477473343464204032900176196071502876238064000567437805081341252788570878088608093732519722688316742877408741563231966162814488686084324766733391108910495031890831694732273721232337622786037932260434480380445358747904254837008015899872476532732006406602944853120626372144779871508042871540762694844965166843718852040272178548011001625083070457746708609299438575745110539990792328033428620426208899331298662790860037540718358942694328760775347275402576035834766216408318931394511404775351932653482685616347544165860196688968263566473131923774395558826955422200605779946541782302347759219992424793238680724428719488008751393918346913702921694542343334828365154512119143609856640701183092112281656631106069823231007667685845697184993370445950214735004424657790771822298037642636686225718656076173633835234339898865780186294740805844439548241505442332672\n", + "1617796775247639140630194456449725737448245316764344168899204240762161377438719060044757084031573992400014854357308887149430526256347226484690800236948378900349877678073768960787442242458221703785316395908192489919801019067610801633892061067646862922085439949050846954946686928408065800352392143005752476128001134875610162682505577141756177216187465039445376633485754817483126463932325628977372168649533466782217820990063781663389464547442464675245572075864520868960760890717495808509674016031799744953065464012813205889706241252744289559743016085743081525389689930333687437704080544357096022003250166140915493417218598877151490221079981584656066857240852417798662597325581720075081436717885388657521550694550805152071669532432816637862789022809550703865306965371232695088331720393377936527132946263847548791117653910844401211559893083564604695518439984849586477361448857438976017502787836693827405843389084686669656730309024238287219713281402366184224563313262212139646462015335371691394369986740891900429470008849315581543644596075285273372451437312152347267670468679797731560372589481611688879096483010884665344\n", + "3235593550495278281260388912899451474896490633528688337798408481524322754877438120089514168063147984800029708714617774298861052512694452969381600473896757800699755356147537921574884484916443407570632791816384979839602038135221603267784122135293725844170879898101693909893373856816131600704784286011504952256002269751220325365011154283512354432374930078890753266971509634966252927864651257954744337299066933564435641980127563326778929094884929350491144151729041737921521781434991617019348032063599489906130928025626411779412482505488579119486032171486163050779379860667374875408161088714192044006500332281830986834437197754302980442159963169312133714481704835597325194651163440150162873435770777315043101389101610304143339064865633275725578045619101407730613930742465390176663440786755873054265892527695097582235307821688802423119786167129209391036879969699172954722897714877952035005575673387654811686778169373339313460618048476574439426562804732368449126626524424279292924030670743382788739973481783800858940017698631163087289192150570546744902874624304694535340937359595463120745178963223377758192966021769330688\n", + "6471187100990556562520777825798902949792981267057376675596816963048645509754876240179028336126295969600059417429235548597722105025388905938763200947793515601399510712295075843149768969832886815141265583632769959679204076270443206535568244270587451688341759796203387819786747713632263201409568572023009904512004539502440650730022308567024708864749860157781506533943019269932505855729302515909488674598133867128871283960255126653557858189769858700982288303458083475843043562869983234038696064127198979812261856051252823558824965010977158238972064342972326101558759721334749750816322177428384088013000664563661973668874395508605960884319926338624267428963409671194650389302326880300325746871541554630086202778203220608286678129731266551451156091238202815461227861484930780353326881573511746108531785055390195164470615643377604846239572334258418782073759939398345909445795429755904070011151346775309623373556338746678626921236096953148878853125609464736898253253048848558585848061341486765577479946963567601717880035397262326174578384301141093489805749248609389070681874719190926241490357926446755516385932043538661376\n", + "12942374201981113125041555651597805899585962534114753351193633926097291019509752480358056672252591939200118834858471097195444210050777811877526401895587031202799021424590151686299537939665773630282531167265539919358408152540886413071136488541174903376683519592406775639573495427264526402819137144046019809024009079004881301460044617134049417729499720315563013067886038539865011711458605031818977349196267734257742567920510253307115716379539717401964576606916166951686087125739966468077392128254397959624523712102505647117649930021954316477944128685944652203117519442669499501632644354856768176026001329127323947337748791017211921768639852677248534857926819342389300778604653760600651493743083109260172405556406441216573356259462533102902312182476405630922455722969861560706653763147023492217063570110780390328941231286755209692479144668516837564147519878796691818891590859511808140022302693550619246747112677493357253842472193906297757706251218929473796506506097697117171696122682973531154959893927135203435760070794524652349156768602282186979611498497218778141363749438381852482980715852893511032771864087077322752\n", + "25884748403962226250083111303195611799171925068229506702387267852194582039019504960716113344505183878400237669716942194390888420101555623755052803791174062405598042849180303372599075879331547260565062334531079838716816305081772826142272977082349806753367039184813551279146990854529052805638274288092039618048018158009762602920089234268098835458999440631126026135772077079730023422917210063637954698392535468515485135841020506614231432759079434803929153213832333903372174251479932936154784256508795919249047424205011294235299860043908632955888257371889304406235038885338999003265288709713536352052002658254647894675497582034423843537279705354497069715853638684778601557209307521201302987486166218520344811112812882433146712518925066205804624364952811261844911445939723121413307526294046984434127140221560780657882462573510419384958289337033675128295039757593383637783181719023616280044605387101238493494225354986714507684944387812595515412502437858947593013012195394234343392245365947062309919787854270406871520141589049304698313537204564373959222996994437556282727498876763704965961431705787022065543728174154645504\n", + "51769496807924452500166222606391223598343850136459013404774535704389164078039009921432226689010367756800475339433884388781776840203111247510105607582348124811196085698360606745198151758663094521130124669062159677433632610163545652284545954164699613506734078369627102558293981709058105611276548576184079236096036316019525205840178468536197670917998881262252052271544154159460046845834420127275909396785070937030970271682041013228462865518158869607858306427664667806744348502959865872309568513017591838498094848410022588470599720087817265911776514743778608812470077770677998006530577419427072704104005316509295789350995164068847687074559410708994139431707277369557203114418615042402605974972332437040689622225625764866293425037850132411609248729905622523689822891879446242826615052588093968868254280443121561315764925147020838769916578674067350256590079515186767275566363438047232560089210774202476986988450709973429015369888775625191030825004875717895186026024390788468686784490731894124619839575708540813743040283178098609396627074409128747918445993988875112565454997753527409931922863411574044131087456348309291008\n", + "103538993615848905000332445212782447196687700272918026809549071408778328156078019842864453378020735513600950678867768777563553680406222495020211215164696249622392171396721213490396303517326189042260249338124319354867265220327091304569091908329399227013468156739254205116587963418116211222553097152368158472192072632039050411680356937072395341835997762524504104543088308318920093691668840254551818793570141874061940543364082026456925731036317739215716612855329335613488697005919731744619137026035183676996189696820045176941199440175634531823553029487557217624940155541355996013061154838854145408208010633018591578701990328137695374149118821417988278863414554739114406228837230084805211949944664874081379244451251529732586850075700264823218497459811245047379645783758892485653230105176187937736508560886243122631529850294041677539833157348134700513180159030373534551132726876094465120178421548404953973976901419946858030739777551250382061650009751435790372052048781576937373568981463788249239679151417081627486080566356197218793254148818257495836891987977750225130909995507054819863845726823148088262174912696618582016\n", + "207077987231697810000664890425564894393375400545836053619098142817556656312156039685728906756041471027201901357735537555127107360812444990040422430329392499244784342793442426980792607034652378084520498676248638709734530440654182609138183816658798454026936313478508410233175926836232422445106194304736316944384145264078100823360713874144790683671995525049008209086176616637840187383337680509103637587140283748123881086728164052913851462072635478431433225710658671226977394011839463489238274052070367353992379393640090353882398880351269063647106058975114435249880311082711992026122309677708290816416021266037183157403980656275390748298237642835976557726829109478228812457674460169610423899889329748162758488902503059465173700151400529646436994919622490094759291567517784971306460210352375875473017121772486245263059700588083355079666314696269401026360318060747069102265453752188930240356843096809907947953802839893716061479555102500764123300019502871580744104097563153874747137962927576498479358302834163254972161132712394437586508297636514991673783975955500450261819991014109639727691453646296176524349825393237164032\n", + "414155974463395620001329780851129788786750801091672107238196285635113312624312079371457813512082942054403802715471075110254214721624889980080844860658784998489568685586884853961585214069304756169040997352497277419469060881308365218276367633317596908053872626957016820466351853672464844890212388609472633888768290528156201646721427748289581367343991050098016418172353233275680374766675361018207275174280567496247762173456328105827702924145270956862866451421317342453954788023678926978476548104140734707984758787280180707764797760702538127294212117950228870499760622165423984052244619355416581632832042532074366314807961312550781496596475285671953115453658218956457624915348920339220847799778659496325516977805006118930347400302801059292873989839244980189518583135035569942612920420704751750946034243544972490526119401176166710159332629392538802052720636121494138204530907504377860480713686193619815895907605679787432122959110205001528246600039005743161488208195126307749494275925855152996958716605668326509944322265424788875173016595273029983347567951911000900523639982028219279455382907292592353048699650786474328064\n", + "828311948926791240002659561702259577573501602183344214476392571270226625248624158742915627024165884108807605430942150220508429443249779960161689721317569996979137371173769707923170428138609512338081994704994554838938121762616730436552735266635193816107745253914033640932703707344929689780424777218945267777536581056312403293442855496579162734687982100196032836344706466551360749533350722036414550348561134992495524346912656211655405848290541913725732902842634684907909576047357853956953096208281469415969517574560361415529595521405076254588424235900457740999521244330847968104489238710833163265664085064148732629615922625101562993192950571343906230907316437912915249830697840678441695599557318992651033955610012237860694800605602118585747979678489960379037166270071139885225840841409503501892068487089944981052238802352333420318665258785077604105441272242988276409061815008755720961427372387239631791815211359574864245918220410003056493200078011486322976416390252615498988551851710305993917433211336653019888644530849577750346033190546059966695135903822001801047279964056438558910765814585184706097399301572948656128\n", + "1656623897853582480005319123404519155147003204366688428952785142540453250497248317485831254048331768217615210861884300441016858886499559920323379442635139993958274742347539415846340856277219024676163989409989109677876243525233460873105470533270387632215490507828067281865407414689859379560849554437890535555073162112624806586885710993158325469375964200392065672689412933102721499066701444072829100697122269984991048693825312423310811696581083827451465805685269369815819152094715707913906192416562938831939035149120722831059191042810152509176848471800915481999042488661695936208978477421666326531328170128297465259231845250203125986385901142687812461814632875825830499661395681356883391199114637985302067911220024475721389601211204237171495959356979920758074332540142279770451681682819007003784136974179889962104477604704666840637330517570155208210882544485976552818123630017511441922854744774479263583630422719149728491836440820006112986400156022972645952832780505230997977103703420611987834866422673306039777289061699155500692066381092119933390271807644003602094559928112877117821531629170369412194798603145897312256\n", + "3313247795707164960010638246809038310294006408733376857905570285080906500994496634971662508096663536435230421723768600882033717772999119840646758885270279987916549484695078831692681712554438049352327978819978219355752487050466921746210941066540775264430981015656134563730814829379718759121699108875781071110146324225249613173771421986316650938751928400784131345378825866205442998133402888145658201394244539969982097387650624846621623393162167654902931611370538739631638304189431415827812384833125877663878070298241445662118382085620305018353696943601830963998084977323391872417956954843332653062656340256594930518463690500406251972771802285375624923629265751651660999322791362713766782398229275970604135822440048951442779202422408474342991918713959841516148665080284559540903363365638014007568273948359779924208955209409333681274661035140310416421765088971953105636247260035022883845709489548958527167260845438299456983672881640012225972800312045945291905665561010461995954207406841223975669732845346612079554578123398311001384132762184239866780543615288007204189119856225754235643063258340738824389597206291794624512\n", + "6626495591414329920021276493618076620588012817466753715811140570161813001988993269943325016193327072870460843447537201764067435545998239681293517770540559975833098969390157663385363425108876098704655957639956438711504974100933843492421882133081550528861962031312269127461629658759437518243398217751562142220292648450499226347542843972633301877503856801568262690757651732410885996266805776291316402788489079939964194775301249693243246786324335309805863222741077479263276608378862831655624769666251755327756140596482891324236764171240610036707393887203661927996169954646783744835913909686665306125312680513189861036927381000812503945543604570751249847258531503303321998645582725427533564796458551941208271644880097902885558404844816948685983837427919683032297330160569119081806726731276028015136547896719559848417910418818667362549322070280620832843530177943906211272494520070045767691418979097917054334521690876598913967345763280024451945600624091890583811331122020923991908414813682447951339465690693224159109156246796622002768265524368479733561087230576014408378239712451508471286126516681477648779194412583589249024\n", + "13252991182828659840042552987236153241176025634933507431622281140323626003977986539886650032386654145740921686895074403528134871091996479362587035541081119951666197938780315326770726850217752197409311915279912877423009948201867686984843764266163101057723924062624538254923259317518875036486796435503124284440585296900998452695085687945266603755007713603136525381515303464821771992533611552582632805576978159879928389550602499386486493572648670619611726445482154958526553216757725663311249539332503510655512281192965782648473528342481220073414787774407323855992339909293567489671827819373330612250625361026379722073854762001625007891087209141502499694517063006606643997291165450855067129592917103882416543289760195805771116809689633897371967674855839366064594660321138238163613453462552056030273095793439119696835820837637334725098644140561241665687060355887812422544989040140091535382837958195834108669043381753197827934691526560048903891201248183781167622662244041847983816829627364895902678931381386448318218312493593244005536531048736959467122174461152028816756479424903016942572253033362955297558388825167178498048\n", + "26505982365657319680085105974472306482352051269867014863244562280647252007955973079773300064773308291481843373790148807056269742183992958725174071082162239903332395877560630653541453700435504394818623830559825754846019896403735373969687528532326202115447848125249076509846518635037750072973592871006248568881170593801996905390171375890533207510015427206273050763030606929643543985067223105165265611153956319759856779101204998772972987145297341239223452890964309917053106433515451326622499078665007021311024562385931565296947056684962440146829575548814647711984679818587134979343655638746661224501250722052759444147709524003250015782174418283004999389034126013213287994582330901710134259185834207764833086579520391611542233619379267794743935349711678732129189320642276476327226906925104112060546191586878239393671641675274669450197288281122483331374120711775624845089978080280183070765675916391668217338086763506395655869383053120097807782402496367562335245324488083695967633659254729791805357862762772896636436624987186488011073062097473918934244348922304057633512958849806033885144506066725910595116777650334356996096\n", + "53011964731314639360170211948944612964704102539734029726489124561294504015911946159546600129546616582963686747580297614112539484367985917450348142164324479806664791755121261307082907400871008789637247661119651509692039792807470747939375057064652404230895696250498153019693037270075500145947185742012497137762341187603993810780342751781066415020030854412546101526061213859287087970134446210330531222307912639519713558202409997545945974290594682478446905781928619834106212867030902653244998157330014042622049124771863130593894113369924880293659151097629295423969359637174269958687311277493322449002501444105518888295419048006500031564348836566009998778068252026426575989164661803420268518371668415529666173159040783223084467238758535589487870699423357464258378641284552952654453813850208224121092383173756478787343283350549338900394576562244966662748241423551249690179956160560366141531351832783336434676173527012791311738766106240195615564804992735124670490648976167391935267318509459583610715725525545793272873249974372976022146124194947837868488697844608115267025917699612067770289012133451821190233555300668713992192\n", + "106023929462629278720340423897889225929408205079468059452978249122589008031823892319093200259093233165927373495160595228225078968735971834900696284328648959613329583510242522614165814801742017579274495322239303019384079585614941495878750114129304808461791392500996306039386074540151000291894371484024994275524682375207987621560685503562132830040061708825092203052122427718574175940268892420661062444615825279039427116404819995091891948581189364956893811563857239668212425734061805306489996314660028085244098249543726261187788226739849760587318302195258590847938719274348539917374622554986644898005002888211037776590838096013000063128697673132019997556136504052853151978329323606840537036743336831059332346318081566446168934477517071178975741398846714928516757282569105905308907627700416448242184766347512957574686566701098677800789153124489933325496482847102499380359912321120732283062703665566672869352347054025582623477532212480391231129609985470249340981297952334783870534637018919167221431451051091586545746499948745952044292248389895675736977395689216230534051835399224135540578024266903642380467110601337427984384\n", + "212047858925258557440680847795778451858816410158936118905956498245178016063647784638186400518186466331854746990321190456450157937471943669801392568657297919226659167020485045228331629603484035158548990644478606038768159171229882991757500228258609616923582785001992612078772149080302000583788742968049988551049364750415975243121371007124265660080123417650184406104244855437148351880537784841322124889231650558078854232809639990183783897162378729913787623127714479336424851468123610612979992629320056170488196499087452522375576453479699521174636604390517181695877438548697079834749245109973289796010005776422075553181676192026000126257395346264039995112273008105706303956658647213681074073486673662118664692636163132892337868955034142357951482797693429857033514565138211810617815255400832896484369532695025915149373133402197355601578306248979866650992965694204998760719824642241464566125407331133345738704694108051165246955064424960782462259219970940498681962595904669567741069274037838334442862902102183173091492999897491904088584496779791351473954791378432461068103670798448271081156048533807284760934221202674855968768\n", + "424095717850517114881361695591556903717632820317872237811912996490356032127295569276372801036372932663709493980642380912900315874943887339602785137314595838453318334040970090456663259206968070317097981288957212077536318342459765983515000456517219233847165570003985224157544298160604001167577485936099977102098729500831950486242742014248531320160246835300368812208489710874296703761075569682644249778463301116157708465619279980367567794324757459827575246255428958672849702936247221225959985258640112340976392998174905044751152906959399042349273208781034363391754877097394159669498490219946579592020011552844151106363352384052000252514790692528079990224546016211412607913317294427362148146973347324237329385272326265784675737910068284715902965595386859714067029130276423621235630510801665792968739065390051830298746266804394711203156612497959733301985931388409997521439649284482929132250814662266691477409388216102330493910128849921564924518439941880997363925191809339135482138548075676668885725804204366346182985999794983808177168993559582702947909582756864922136207341596896542162312097067614569521868442405349711937536\n", + "848191435701034229762723391183113807435265640635744475623825992980712064254591138552745602072745865327418987961284761825800631749887774679205570274629191676906636668081940180913326518413936140634195962577914424155072636684919531967030000913034438467694331140007970448315088596321208002335154971872199954204197459001663900972485484028497062640320493670600737624416979421748593407522151139365288499556926602232315416931238559960735135588649514919655150492510857917345699405872494442451919970517280224681952785996349810089502305813918798084698546417562068726783509754194788319338996980439893159184040023105688302212726704768104000505029581385056159980449092032422825215826634588854724296293946694648474658770544652531569351475820136569431805931190773719428134058260552847242471261021603331585937478130780103660597492533608789422406313224995919466603971862776819995042879298568965858264501629324533382954818776432204660987820257699843129849036879883761994727850383618678270964277096151353337771451608408732692365971999589967616354337987119165405895819165513729844272414683193793084324624194135229139043736884810699423875072\n", + "1696382871402068459525446782366227614870531281271488951247651985961424128509182277105491204145491730654837975922569523651601263499775549358411140549258383353813273336163880361826653036827872281268391925155828848310145273369839063934060001826068876935388662280015940896630177192642416004670309943744399908408394918003327801944970968056994125280640987341201475248833958843497186815044302278730576999113853204464630833862477119921470271177299029839310300985021715834691398811744988884903839941034560449363905571992699620179004611627837596169397092835124137453567019508389576638677993960879786318368080046211376604425453409536208001010059162770112319960898184064845650431653269177709448592587893389296949317541089305063138702951640273138863611862381547438856268116521105694484942522043206663171874956261560207321194985067217578844812626449991838933207943725553639990085758597137931716529003258649066765909637552864409321975640515399686259698073759767523989455700767237356541928554192302706675542903216817465384731943999179935232708675974238330811791638331027459688544829366387586168649248388270458278087473769621398847750144\n", + "3392765742804136919050893564732455229741062562542977902495303971922848257018364554210982408290983461309675951845139047303202526999551098716822281098516766707626546672327760723653306073655744562536783850311657696620290546739678127868120003652137753870777324560031881793260354385284832009340619887488799816816789836006655603889941936113988250561281974682402950497667917686994373630088604557461153998227706408929261667724954239842940542354598059678620601970043431669382797623489977769807679882069120898727811143985399240358009223255675192338794185670248274907134039016779153277355987921759572636736160092422753208850906819072416002020118325540224639921796368129691300863306538355418897185175786778593898635082178610126277405903280546277727223724763094877712536233042211388969885044086413326343749912523120414642389970134435157689625252899983677866415887451107279980171517194275863433058006517298133531819275105728818643951281030799372519396147519535047978911401534474713083857108384605413351085806433634930769463887998359870465417351948476661623583276662054919377089658732775172337298496776540916556174947539242797695500288\n", + "6785531485608273838101787129464910459482125125085955804990607943845696514036729108421964816581966922619351903690278094606405053999102197433644562197033533415253093344655521447306612147311489125073567700623315393240581093479356255736240007304275507741554649120063763586520708770569664018681239774977599633633579672013311207779883872227976501122563949364805900995335835373988747260177209114922307996455412817858523335449908479685881084709196119357241203940086863338765595246979955539615359764138241797455622287970798480716018446511350384677588371340496549814268078033558306554711975843519145273472320184845506417701813638144832004040236651080449279843592736259382601726613076710837794370351573557187797270164357220252554811806561092555454447449526189755425072466084422777939770088172826652687499825046240829284779940268870315379250505799967355732831774902214559960343034388551726866116013034596267063638550211457637287902562061598745038792295039070095957822803068949426167714216769210826702171612867269861538927775996719740930834703896953323247166553324109838754179317465550344674596993553081833112349895078485595391000576\n", + "13571062971216547676203574258929820918964250250171911609981215887691393028073458216843929633163933845238703807380556189212810107998204394867289124394067066830506186689311042894613224294622978250147135401246630786481162186958712511472480014608551015483109298240127527173041417541139328037362479549955199267267159344026622415559767744455953002245127898729611801990671670747977494520354418229844615992910825635717046670899816959371762169418392238714482407880173726677531190493959911079230719528276483594911244575941596961432036893022700769355176742680993099628536156067116613109423951687038290546944640369691012835403627276289664008080473302160898559687185472518765203453226153421675588740703147114375594540328714440505109623613122185110908894899052379510850144932168845555879540176345653305374999650092481658569559880537740630758501011599934711465663549804429119920686068777103453732232026069192534127277100422915274575805124123197490077584590078140191915645606137898852335428433538421653404343225734539723077855551993439481861669407793906646494333106648219677508358634931100689349193987106163666224699790156971190782001152\n", + "27142125942433095352407148517859641837928500500343823219962431775382786056146916433687859266327867690477407614761112378425620215996408789734578248788134133661012373378622085789226448589245956500294270802493261572962324373917425022944960029217102030966218596480255054346082835082278656074724959099910398534534318688053244831119535488911906004490255797459223603981343341495954989040708836459689231985821651271434093341799633918743524338836784477428964815760347453355062380987919822158461439056552967189822489151883193922864073786045401538710353485361986199257072312134233226218847903374076581093889280739382025670807254552579328016160946604321797119374370945037530406906452306843351177481406294228751189080657428881010219247226244370221817789798104759021700289864337691111759080352691306610749999300184963317139119761075481261517002023199869422931327099608858239841372137554206907464464052138385068254554200845830549151610248246394980155169180156280383831291212275797704670856867076843306808686451469079446155711103986878963723338815587813292988666213296439355016717269862201378698387974212327332449399580313942381564002304\n", + "54284251884866190704814297035719283675857001000687646439924863550765572112293832867375718532655735380954815229522224756851240431992817579469156497576268267322024746757244171578452897178491913000588541604986523145924648747834850045889920058434204061932437192960510108692165670164557312149449918199820797069068637376106489662239070977823812008980511594918447207962686682991909978081417672919378463971643302542868186683599267837487048677673568954857929631520694906710124761975839644316922878113105934379644978303766387845728147572090803077420706970723972398514144624268466452437695806748153162187778561478764051341614509105158656032321893208643594238748741890075060813812904613686702354962812588457502378161314857762020438494452488740443635579596209518043400579728675382223518160705382613221499998600369926634278239522150962523034004046399738845862654199217716479682744275108413814928928104276770136509108401691661098303220496492789960310338360312560767662582424551595409341713734153686613617372902938158892311422207973757927446677631175626585977332426592878710033434539724402757396775948424654664898799160627884763128004608\n", + "108568503769732381409628594071438567351714002001375292879849727101531144224587665734751437065311470761909630459044449513702480863985635158938312995152536534644049493514488343156905794356983826001177083209973046291849297495669700091779840116868408123864874385921020217384331340329114624298899836399641594138137274752212979324478141955647624017961023189836894415925373365983819956162835345838756927943286605085736373367198535674974097355347137909715859263041389813420249523951679288633845756226211868759289956607532775691456295144181606154841413941447944797028289248536932904875391613496306324375557122957528102683229018210317312064643786417287188477497483780150121627625809227373404709925625176915004756322629715524040876988904977480887271159192419036086801159457350764447036321410765226442999997200739853268556479044301925046068008092799477691725308398435432959365488550216827629857856208553540273018216803383322196606440992985579920620676720625121535325164849103190818683427468307373227234745805876317784622844415947515854893355262351253171954664853185757420066869079448805514793551896849309329797598321255769526256009216\n", + "217137007539464762819257188142877134703428004002750585759699454203062288449175331469502874130622941523819260918088899027404961727971270317876625990305073069288098987028976686313811588713967652002354166419946092583698594991339400183559680233736816247729748771842040434768662680658229248597799672799283188276274549504425958648956283911295248035922046379673788831850746731967639912325670691677513855886573210171472746734397071349948194710694275819431718526082779626840499047903358577267691512452423737518579913215065551382912590288363212309682827882895889594056578497073865809750783226992612648751114245915056205366458036420634624129287572834574376954994967560300243255251618454746809419851250353830009512645259431048081753977809954961774542318384838072173602318914701528894072642821530452885999994401479706537112958088603850092136016185598955383450616796870865918730977100433655259715712417107080546036433606766644393212881985971159841241353441250243070650329698206381637366854936614746454469491611752635569245688831895031709786710524702506343909329706371514840133738158897611029587103793698618659595196642511539052512018432\n", + "434274015078929525638514376285754269406856008005501171519398908406124576898350662939005748261245883047638521836177798054809923455942540635753251980610146138576197974057953372627623177427935304004708332839892185167397189982678800367119360467473632495459497543684080869537325361316458497195599345598566376552549099008851917297912567822590496071844092759347577663701493463935279824651341383355027711773146420342945493468794142699896389421388551638863437052165559253680998095806717154535383024904847475037159826430131102765825180576726424619365655765791779188113156994147731619501566453985225297502228491830112410732916072841269248258575145669148753909989935120600486510503236909493618839702500707660019025290518862096163507955619909923549084636769676144347204637829403057788145285643060905771999988802959413074225916177207700184272032371197910766901233593741731837461954200867310519431424834214161092072867213533288786425763971942319682482706882500486141300659396412763274733709873229492908938983223505271138491377663790063419573421049405012687818659412743029680267476317795222059174207587397237319190393285023078105024036864\n", + "868548030157859051277028752571508538813712016011002343038797816812249153796701325878011496522491766095277043672355596109619846911885081271506503961220292277152395948115906745255246354855870608009416665679784370334794379965357600734238720934947264990918995087368161739074650722632916994391198691197132753105098198017703834595825135645180992143688185518695155327402986927870559649302682766710055423546292840685890986937588285399792778842777103277726874104331118507361996191613434309070766049809694950074319652860262205531650361153452849238731311531583558376226313988295463239003132907970450595004456983660224821465832145682538496517150291338297507819979870241200973021006473818987237679405001415320038050581037724192327015911239819847098169273539352288694409275658806115576290571286121811543999977605918826148451832354415400368544064742395821533802467187483463674923908401734621038862849668428322184145734427066577572851527943884639364965413765000972282601318792825526549467419746458985817877966447010542276982755327580126839146842098810025375637318825486059360534952635590444118348415174794474638380786570046156210048073728\n", + "1737096060315718102554057505143017077627424032022004686077595633624498307593402651756022993044983532190554087344711192219239693823770162543013007922440584554304791896231813490510492709711741216018833331359568740669588759930715201468477441869894529981837990174736323478149301445265833988782397382394265506210196396035407669191650271290361984287376371037390310654805973855741119298605365533420110847092585681371781973875176570799585557685554206555453748208662237014723992383226868618141532099619389900148639305720524411063300722306905698477462623063167116752452627976590926478006265815940901190008913967320449642931664291365076993034300582676595015639959740482401946042012947637974475358810002830640076101162075448384654031822479639694196338547078704577388818551317612231152581142572243623087999955211837652296903664708830800737088129484791643067604934374966927349847816803469242077725699336856644368291468854133155145703055887769278729930827530001944565202637585651053098934839492917971635755932894021084553965510655160253678293684197620050751274637650972118721069905271180888236696830349588949276761573140092312420096147456\n", + "3474192120631436205108115010286034155254848064044009372155191267248996615186805303512045986089967064381108174689422384438479387647540325086026015844881169108609583792463626981020985419423482432037666662719137481339177519861430402936954883739789059963675980349472646956298602890531667977564794764788531012420392792070815338383300542580723968574752742074780621309611947711482238597210731066840221694185171362743563947750353141599171115371108413110907496417324474029447984766453737236283064199238779800297278611441048822126601444613811396954925246126334233504905255953181852956012531631881802380017827934640899285863328582730153986068601165353190031279919480964803892084025895275948950717620005661280152202324150896769308063644959279388392677094157409154777637102635224462305162285144487246175999910423675304593807329417661601474176258969583286135209868749933854699695633606938484155451398673713288736582937708266310291406111775538557459861655060003889130405275171302106197869678985835943271511865788042169107931021310320507356587368395240101502549275301944237442139810542361776473393660699177898553523146280184624840192294912\n", + "6948384241262872410216230020572068310509696128088018744310382534497993230373610607024091972179934128762216349378844768876958775295080650172052031689762338217219167584927253962041970838846964864075333325438274962678355039722860805873909767479578119927351960698945293912597205781063335955129589529577062024840785584141630676766601085161447937149505484149561242619223895422964477194421462133680443388370342725487127895500706283198342230742216826221814992834648948058895969532907474472566128398477559600594557222882097644253202889227622793909850492252668467009810511906363705912025063263763604760035655869281798571726657165460307972137202330706380062559838961929607784168051790551897901435240011322560304404648301793538616127289918558776785354188314818309555274205270448924610324570288974492351999820847350609187614658835323202948352517939166572270419737499867709399391267213876968310902797347426577473165875416532620582812223551077114919723310120007778260810550342604212395739357971671886543023731576084338215862042620641014713174736790480203005098550603888474884279621084723552946787321398355797107046292560369249680384589824\n", + "13896768482525744820432460041144136621019392256176037488620765068995986460747221214048183944359868257524432698757689537753917550590161300344104063379524676434438335169854507924083941677693929728150666650876549925356710079445721611747819534959156239854703921397890587825194411562126671910259179059154124049681571168283261353533202170322895874299010968299122485238447790845928954388842924267360886776740685450974255791001412566396684461484433652443629985669297896117791939065814948945132256796955119201189114445764195288506405778455245587819700984505336934019621023812727411824050126527527209520071311738563597143453314330920615944274404661412760125119677923859215568336103581103795802870480022645120608809296603587077232254579837117553570708376629636619110548410540897849220649140577948984703999641694701218375229317670646405896705035878333144540839474999735418798782534427753936621805594694853154946331750833065241165624447102154229839446620240015556521621100685208424791478715943343773086047463152168676431724085241282029426349473580960406010197101207776949768559242169447105893574642796711594214092585120738499360769179648\n", + "27793536965051489640864920082288273242038784512352074977241530137991972921494442428096367888719736515048865397515379075507835101180322600688208126759049352868876670339709015848167883355387859456301333301753099850713420158891443223495639069918312479709407842795781175650388823124253343820518358118308248099363142336566522707066404340645791748598021936598244970476895581691857908777685848534721773553481370901948511582002825132793368922968867304887259971338595792235583878131629897890264513593910238402378228891528390577012811556910491175639401969010673868039242047625454823648100253055054419040142623477127194286906628661841231888548809322825520250239355847718431136672207162207591605740960045290241217618593207174154464509159674235107141416753259273238221096821081795698441298281155897969407999283389402436750458635341292811793410071756666289081678949999470837597565068855507873243611189389706309892663501666130482331248894204308459678893240480031113043242201370416849582957431886687546172094926304337352863448170482564058852698947161920812020394202415553899537118484338894211787149285593423188428185170241476998721538359296\n", + "55587073930102979281729840164576546484077569024704149954483060275983945842988884856192735777439473030097730795030758151015670202360645201376416253518098705737753340679418031696335766710775718912602666603506199701426840317782886446991278139836624959418815685591562351300777646248506687641036716236616496198726284673133045414132808681291583497196043873196489940953791163383715817555371697069443547106962741803897023164005650265586737845937734609774519942677191584471167756263259795780529027187820476804756457783056781154025623113820982351278803938021347736078484095250909647296200506110108838080285246954254388573813257323682463777097618645651040500478711695436862273344414324415183211481920090580482435237186414348308929018319348470214282833506518546476442193642163591396882596562311795938815998566778804873500917270682585623586820143513332578163357899998941675195130137711015746487222378779412619785327003332260964662497788408616919357786480960062226086484402740833699165914863773375092344189852608674705726896340965128117705397894323841624040788404831107799074236968677788423574298571186846376856370340482953997443076718592\n", + "111174147860205958563459680329153092968155138049408299908966120551967891685977769712385471554878946060195461590061516302031340404721290402752832507036197411475506681358836063392671533421551437825205333207012399402853680635565772893982556279673249918837631371183124702601555292497013375282073432473232992397452569346266090828265617362583166994392087746392979881907582326767431635110743394138887094213925483607794046328011300531173475691875469219549039885354383168942335512526519591561058054375640953609512915566113562308051246227641964702557607876042695472156968190501819294592401012220217676160570493908508777147626514647364927554195237291302081000957423390873724546688828648830366422963840181160964870474372828696617858036638696940428565667013037092952884387284327182793765193124623591877631997133557609747001834541365171247173640287026665156326715799997883350390260275422031492974444757558825239570654006664521929324995576817233838715572961920124452172968805481667398331829727546750184688379705217349411453792681930256235410795788647683248081576809662215598148473937355576847148597142373692753712740680965907994886153437184\n", + "222348295720411917126919360658306185936310276098816599817932241103935783371955539424770943109757892120390923180123032604062680809442580805505665014072394822951013362717672126785343066843102875650410666414024798805707361271131545787965112559346499837675262742366249405203110584994026750564146864946465984794905138692532181656531234725166333988784175492785959763815164653534863270221486788277774188427850967215588092656022601062346951383750938439098079770708766337884671025053039183122116108751281907219025831132227124616102492455283929405115215752085390944313936381003638589184802024440435352321140987817017554295253029294729855108390474582604162001914846781747449093377657297660732845927680362321929740948745657393235716073277393880857131334026074185905768774568654365587530386249247183755263994267115219494003669082730342494347280574053330312653431599995766700780520550844062985948889515117650479141308013329043858649991153634467677431145923840248904345937610963334796663659455093500369376759410434698822907585363860512470821591577295366496163153619324431196296947874711153694297194284747385507425481361931815989772306874368\n", + "444696591440823834253838721316612371872620552197633199635864482207871566743911078849541886219515784240781846360246065208125361618885161611011330028144789645902026725435344253570686133686205751300821332828049597611414722542263091575930225118692999675350525484732498810406221169988053501128293729892931969589810277385064363313062469450332667977568350985571919527630329307069726540442973576555548376855701934431176185312045202124693902767501876878196159541417532675769342050106078366244232217502563814438051662264454249232204984910567858810230431504170781888627872762007277178369604048880870704642281975634035108590506058589459710216780949165208324003829693563494898186755314595321465691855360724643859481897491314786471432146554787761714262668052148371811537549137308731175060772498494367510527988534230438988007338165460684988694561148106660625306863199991533401561041101688125971897779030235300958282616026658087717299982307268935354862291847680497808691875221926669593327318910187000738753518820869397645815170727721024941643183154590732992326307238648862392593895749422307388594388569494771014850962723863631979544613748736\n", + "889393182881647668507677442633224743745241104395266399271728964415743133487822157699083772439031568481563692720492130416250723237770323222022660056289579291804053450870688507141372267372411502601642665656099195222829445084526183151860450237385999350701050969464997620812442339976107002256587459785863939179620554770128726626124938900665335955136701971143839055260658614139453080885947153111096753711403868862352370624090404249387805535003753756392319082835065351538684100212156732488464435005127628876103324528908498464409969821135717620460863008341563777255745524014554356739208097761741409284563951268070217181012117178919420433561898330416648007659387126989796373510629190642931383710721449287718963794982629572942864293109575523428525336104296743623075098274617462350121544996988735021055977068460877976014676330921369977389122296213321250613726399983066803122082203376251943795558060470601916565232053316175434599964614537870709724583695360995617383750443853339186654637820374001477507037641738795291630341455442049883286366309181465984652614477297724785187791498844614777188777138989542029701925447727263959089227497472\n", + "1778786365763295337015354885266449487490482208790532798543457928831486266975644315398167544878063136963127385440984260832501446475540646444045320112579158583608106901741377014282744534744823005203285331312198390445658890169052366303720900474771998701402101938929995241624884679952214004513174919571727878359241109540257453252249877801330671910273403942287678110521317228278906161771894306222193507422807737724704741248180808498775611070007507512784638165670130703077368200424313464976928870010255257752206649057816996928819939642271435240921726016683127554511491048029108713478416195523482818569127902536140434362024234357838840867123796660833296015318774253979592747021258381285862767421442898575437927589965259145885728586219151046857050672208593487246150196549234924700243089993977470042111954136921755952029352661842739954778244592426642501227452799966133606244164406752503887591116120941203833130464106632350869199929229075741419449167390721991234767500887706678373309275640748002955014075283477590583260682910884099766572732618362931969305228954595449570375582997689229554377554277979084059403850895454527918178454994944\n", + "3557572731526590674030709770532898974980964417581065597086915857662972533951288630796335089756126273926254770881968521665002892951081292888090640225158317167216213803482754028565489069489646010406570662624396780891317780338104732607441800949543997402804203877859990483249769359904428009026349839143455756718482219080514906504499755602661343820546807884575356221042634456557812323543788612444387014845615475449409482496361616997551222140015015025569276331340261406154736400848626929953857740020510515504413298115633993857639879284542870481843452033366255109022982096058217426956832391046965637138255805072280868724048468715677681734247593321666592030637548507959185494042516762571725534842885797150875855179930518291771457172438302093714101344417186974492300393098469849400486179987954940084223908273843511904058705323685479909556489184853285002454905599932267212488328813505007775182232241882407666260928213264701738399858458151482838898334781443982469535001775413356746618551281496005910028150566955181166521365821768199533145465236725863938610457909190899140751165995378459108755108555958168118807701790909055836356909989888\n", + "7115145463053181348061419541065797949961928835162131194173831715325945067902577261592670179512252547852509541763937043330005785902162585776181280450316634334432427606965508057130978138979292020813141325248793561782635560676209465214883601899087994805608407755719980966499538719808856018052699678286911513436964438161029813008999511205322687641093615769150712442085268913115624647087577224888774029691230950898818964992723233995102444280030030051138552662680522812309472801697253859907715480041021031008826596231267987715279758569085740963686904066732510218045964192116434853913664782093931274276511610144561737448096937431355363468495186643333184061275097015918370988085033525143451069685771594301751710359861036583542914344876604187428202688834373948984600786196939698800972359975909880168447816547687023808117410647370959819112978369706570004909811199864534424976657627010015550364464483764815332521856426529403476799716916302965677796669562887964939070003550826713493237102562992011820056301133910362333042731643536399066290930473451727877220915818381798281502331990756918217510217111916336237615403581818111672713819979776\n", + "14230290926106362696122839082131595899923857670324262388347663430651890135805154523185340359024505095705019083527874086660011571804325171552362560900633268668864855213931016114261956277958584041626282650497587123565271121352418930429767203798175989611216815511439961932999077439617712036105399356573823026873928876322059626017999022410645375282187231538301424884170537826231249294175154449777548059382461901797637929985446467990204888560060060102277105325361045624618945603394507719815430960082042062017653192462535975430559517138171481927373808133465020436091928384232869707827329564187862548553023220289123474896193874862710726936990373286666368122550194031836741976170067050286902139371543188603503420719722073167085828689753208374856405377668747897969201572393879397601944719951819760336895633095374047616234821294741919638225956739413140009819622399729068849953315254020031100728928967529630665043712853058806953599433832605931355593339125775929878140007101653426986474205125984023640112602267820724666085463287072798132581860946903455754441831636763596563004663981513836435020434223832672475230807163636223345427639959552\n", + "28460581852212725392245678164263191799847715340648524776695326861303780271610309046370680718049010191410038167055748173320023143608650343104725121801266537337729710427862032228523912555917168083252565300995174247130542242704837860859534407596351979222433631022879923865998154879235424072210798713147646053747857752644119252035998044821290750564374463076602849768341075652462498588350308899555096118764923803595275859970892935980409777120120120204554210650722091249237891206789015439630861920164084124035306384925071950861119034276342963854747616266930040872183856768465739415654659128375725097106046440578246949792387749725421453873980746573332736245100388063673483952340134100573804278743086377207006841439444146334171657379506416749712810755337495795938403144787758795203889439903639520673791266190748095232469642589483839276451913478826280019639244799458137699906630508040062201457857935059261330087425706117613907198867665211862711186678251551859756280014203306853972948410251968047280225204535641449332170926574145596265163721893806911508883663273527193126009327963027672870040868447665344950461614327272446690855279919104\n", + "56921163704425450784491356328526383599695430681297049553390653722607560543220618092741361436098020382820076334111496346640046287217300686209450243602533074675459420855724064457047825111834336166505130601990348494261084485409675721719068815192703958444867262045759847731996309758470848144421597426295292107495715505288238504071996089642581501128748926153205699536682151304924997176700617799110192237529847607190551719941785871960819554240240240409108421301444182498475782413578030879261723840328168248070612769850143901722238068552685927709495232533860081744367713536931478831309318256751450194212092881156493899584775499450842907747961493146665472490200776127346967904680268201147608557486172754414013682878888292668343314759012833499425621510674991591876806289575517590407778879807279041347582532381496190464939285178967678552903826957652560039278489598916275399813261016080124402915715870118522660174851412235227814397735330423725422373356503103719512560028406613707945896820503936094560450409071282898664341853148291192530327443787613823017767326547054386252018655926055345740081736895330689900923228654544893381710559838208\n", + "113842327408850901568982712657052767199390861362594099106781307445215121086441236185482722872196040765640152668222992693280092574434601372418900487205066149350918841711448128914095650223668672333010261203980696988522168970819351443438137630385407916889734524091519695463992619516941696288843194852590584214991431010576477008143992179285163002257497852306411399073364302609849994353401235598220384475059695214381103439883571743921639108480480480818216842602888364996951564827156061758523447680656336496141225539700287803444476137105371855418990465067720163488735427073862957662618636513502900388424185762312987799169550998901685815495922986293330944980401552254693935809360536402295217114972345508828027365757776585336686629518025666998851243021349983183753612579151035180815557759614558082695165064762992380929878570357935357105807653915305120078556979197832550799626522032160248805831431740237045320349702824470455628795470660847450844746713006207439025120056813227415891793641007872189120900818142565797328683706296582385060654887575227646035534653094108772504037311852110691480163473790661379801846457309089786763421119676416\n", + "227684654817701803137965425314105534398781722725188198213562614890430242172882472370965445744392081531280305336445985386560185148869202744837800974410132298701837683422896257828191300447337344666020522407961393977044337941638702886876275260770815833779469048183039390927985239033883392577686389705181168429982862021152954016287984358570326004514995704612822798146728605219699988706802471196440768950119390428762206879767143487843278216960960961636433685205776729993903129654312123517046895361312672992282451079400575606888952274210743710837980930135440326977470854147725915325237273027005800776848371524625975598339101997803371630991845972586661889960803104509387871618721072804590434229944691017656054731515553170673373259036051333997702486042699966367507225158302070361631115519229116165390330129525984761859757140715870714211615307830610240157113958395665101599253044064320497611662863480474090640699405648940911257590941321694901689493426012414878050240113626454831783587282015744378241801636285131594657367412593164770121309775150455292071069306188217545008074623704221382960326947581322759603692914618179573526842239352832\n", + "455369309635403606275930850628211068797563445450376396427125229780860484345764944741930891488784163062560610672891970773120370297738405489675601948820264597403675366845792515656382600894674689332041044815922787954088675883277405773752550521541631667558938096366078781855970478067766785155372779410362336859965724042305908032575968717140652009029991409225645596293457210439399977413604942392881537900238780857524413759534286975686556433921921923272867370411553459987806259308624247034093790722625345984564902158801151213777904548421487421675961860270880653954941708295451830650474546054011601553696743049251951196678203995606743261983691945173323779921606209018775743237442145609180868459889382035312109463031106341346746518072102667995404972085399932735014450316604140723262231038458232330780660259051969523719514281431741428423230615661220480314227916791330203198506088128640995223325726960948181281398811297881822515181882643389803378986852024829756100480227252909663567174564031488756483603272570263189314734825186329540242619550300910584142138612376435090016149247408442765920653895162645519207385829236359147053684478705664\n", + "910738619270807212551861701256422137595126890900752792854250459561720968691529889483861782977568326125121221345783941546240740595476810979351203897640529194807350733691585031312765201789349378664082089631845575908177351766554811547505101043083263335117876192732157563711940956135533570310745558820724673719931448084611816065151937434281304018059982818451291192586914420878799954827209884785763075800477561715048827519068573951373112867843843846545734740823106919975612518617248494068187581445250691969129804317602302427555809096842974843351923720541761307909883416590903661300949092108023203107393486098503902393356407991213486523967383890346647559843212418037551486474884291218361736919778764070624218926062212682693493036144205335990809944170799865470028900633208281446524462076916464661561320518103939047439028562863482856846461231322440960628455833582660406397012176257281990446651453921896362562797622595763645030363765286779606757973704049659512200960454505819327134349128062977512967206545140526378629469650372659080485239100601821168284277224752870180032298494816885531841307790325291038414771658472718294107368957411328\n", + "1821477238541614425103723402512844275190253781801505585708500919123441937383059778967723565955136652250242442691567883092481481190953621958702407795281058389614701467383170062625530403578698757328164179263691151816354703533109623095010202086166526670235752385464315127423881912271067140621491117641449347439862896169223632130303874868562608036119965636902582385173828841757599909654419769571526151600955123430097655038137147902746225735687687693091469481646213839951225037234496988136375162890501383938259608635204604855111618193685949686703847441083522615819766833181807322601898184216046406214786972197007804786712815982426973047934767780693295119686424836075102972949768582436723473839557528141248437852124425365386986072288410671981619888341599730940057801266416562893048924153832929323122641036207878094878057125726965713692922462644881921256911667165320812794024352514563980893302907843792725125595245191527290060727530573559213515947408099319024401920909011638654268698256125955025934413090281052757258939300745318160970478201203642336568554449505740360064596989633771063682615580650582076829543316945436588214737914822656\n", + "3642954477083228850207446805025688550380507563603011171417001838246883874766119557935447131910273304500484885383135766184962962381907243917404815590562116779229402934766340125251060807157397514656328358527382303632709407066219246190020404172333053340471504770928630254847763824542134281242982235282898694879725792338447264260607749737125216072239931273805164770347657683515199819308839539143052303201910246860195310076274295805492451471375375386182938963292427679902450074468993976272750325781002767876519217270409209710223236387371899373407694882167045231639533666363614645203796368432092812429573944394015609573425631964853946095869535561386590239372849672150205945899537164873446947679115056282496875704248850730773972144576821343963239776683199461880115602532833125786097848307665858646245282072415756189756114251453931427385844925289763842513823334330641625588048705029127961786605815687585450251190490383054580121455061147118427031894816198638048803841818023277308537396512251910051868826180562105514517878601490636321940956402407284673137108899011480720129193979267542127365231161301164153659086633890873176429475829645312\n", + "7285908954166457700414893610051377100761015127206022342834003676493767749532239115870894263820546609000969770766271532369925924763814487834809631181124233558458805869532680250502121614314795029312656717054764607265418814132438492380040808344666106680943009541857260509695527649084268562485964470565797389759451584676894528521215499474250432144479862547610329540695315367030399638617679078286104606403820493720390620152548591610984902942750750772365877926584855359804900148937987952545500651562005535753038434540818419420446472774743798746815389764334090463279067332727229290407592736864185624859147888788031219146851263929707892191739071122773180478745699344300411891799074329746893895358230112564993751408497701461547944289153642687926479553366398923760231205065666251572195696615331717292490564144831512379512228502907862854771689850579527685027646668661283251176097410058255923573211631375170900502380980766109160242910122294236854063789632397276097607683636046554617074793024503820103737652361124211029035757202981272643881912804814569346274217798022961440258387958535084254730462322602328307318173267781746352858951659290624\n", + "14571817908332915400829787220102754201522030254412044685668007352987535499064478231741788527641093218001939541532543064739851849527628975669619262362248467116917611739065360501004243228629590058625313434109529214530837628264876984760081616689332213361886019083714521019391055298168537124971928941131594779518903169353789057042430998948500864288959725095220659081390630734060799277235358156572209212807640987440781240305097183221969805885501501544731755853169710719609800297875975905091001303124011071506076869081636838840892945549487597493630779528668180926558134665454458580815185473728371249718295777576062438293702527859415784383478142245546360957491398688600823783598148659493787790716460225129987502816995402923095888578307285375852959106732797847520462410131332503144391393230663434584981128289663024759024457005815725709543379701159055370055293337322566502352194820116511847146423262750341801004761961532218320485820244588473708127579264794552195215367272093109234149586049007640207475304722248422058071514405962545287763825609629138692548435596045922880516775917070168509460924645204656614636346535563492705717903318581248\n", + "29143635816665830801659574440205508403044060508824089371336014705975070998128956463483577055282186436003879083065086129479703699055257951339238524724496934233835223478130721002008486457259180117250626868219058429061675256529753969520163233378664426723772038167429042038782110596337074249943857882263189559037806338707578114084861997897001728577919450190441318162781261468121598554470716313144418425615281974881562480610194366443939611771003003089463511706339421439219600595751951810182002606248022143012153738163273677681785891098975194987261559057336361853116269330908917161630370947456742499436591555152124876587405055718831568766956284491092721914982797377201647567196297318987575581432920450259975005633990805846191777156614570751705918213465595695040924820262665006288782786461326869169962256579326049518048914011631451419086759402318110740110586674645133004704389640233023694292846525500683602009523923064436640971640489176947416255158529589104390430734544186218468299172098015280414950609444496844116143028811925090575527651219258277385096871192091845761033551834140337018921849290409313229272693071126985411435806637162496\n", + "58287271633331661603319148880411016806088121017648178742672029411950141996257912926967154110564372872007758166130172258959407398110515902678477049448993868467670446956261442004016972914518360234501253736438116858123350513059507939040326466757328853447544076334858084077564221192674148499887715764526379118075612677415156228169723995794003457155838900380882636325562522936243197108941432626288836851230563949763124961220388732887879223542006006178927023412678842878439201191503903620364005212496044286024307476326547355363571782197950389974523118114672723706232538661817834323260741894913484998873183110304249753174810111437663137533912568982185443829965594754403295134392594637975151162865840900519950011267981611692383554313229141503411836426931191390081849640525330012577565572922653738339924513158652099036097828023262902838173518804636221480221173349290266009408779280466047388585693051001367204019047846128873281943280978353894832510317059178208780861469088372436936598344196030560829901218888993688232286057623850181151055302438516554770193742384183691522067103668280674037843698580818626458545386142253970822871613274324992\n", + "116574543266663323206638297760822033612176242035296357485344058823900283992515825853934308221128745744015516332260344517918814796221031805356954098897987736935340893912522884008033945829036720469002507472876233716246701026119015878080652933514657706895088152669716168155128442385348296999775431529052758236151225354830312456339447991588006914311677800761765272651125045872486394217882865252577673702461127899526249922440777465775758447084012012357854046825357685756878402383007807240728010424992088572048614952653094710727143564395900779949046236229345447412465077323635668646521483789826969997746366220608499506349620222875326275067825137964370887659931189508806590268785189275950302325731681801039900022535963223384767108626458283006823672853862382780163699281050660025155131145845307476679849026317304198072195656046525805676347037609272442960442346698580532018817558560932094777171386102002734408038095692257746563886561956707789665020634118356417561722938176744873873196688392061121659802437777987376464572115247700362302110604877033109540387484768367383044134207336561348075687397161637252917090772284507941645743226548649984\n", + "233149086533326646413276595521644067224352484070592714970688117647800567985031651707868616442257491488031032664520689035837629592442063610713908197795975473870681787825045768016067891658073440938005014945752467432493402052238031756161305867029315413790176305339432336310256884770696593999550863058105516472302450709660624912678895983176013828623355601523530545302250091744972788435765730505155347404922255799052499844881554931551516894168024024715708093650715371513756804766015614481456020849984177144097229905306189421454287128791801559898092472458690894824930154647271337293042967579653939995492732441216999012699240445750652550135650275928741775319862379017613180537570378551900604651463363602079800045071926446769534217252916566013647345707724765560327398562101320050310262291690614953359698052634608396144391312093051611352694075218544885920884693397161064037635117121864189554342772204005468816076191384515493127773123913415579330041268236712835123445876353489747746393376784122243319604875555974752929144230495400724604221209754066219080774969536734766088268414673122696151374794323274505834181544569015883291486453097299968\n", + "466298173066653292826553191043288134448704968141185429941376235295601135970063303415737232884514982976062065329041378071675259184884127221427816395591950947741363575650091536032135783316146881876010029891504934864986804104476063512322611734058630827580352610678864672620513769541393187999101726116211032944604901419321249825357791966352027657246711203047061090604500183489945576871531461010310694809844511598104999689763109863103033788336048049431416187301430743027513609532031228962912041699968354288194459810612378842908574257583603119796184944917381789649860309294542674586085935159307879990985464882433998025398480891501305100271300551857483550639724758035226361075140757103801209302926727204159600090143852893539068434505833132027294691415449531120654797124202640100620524583381229906719396105269216792288782624186103222705388150437089771841769386794322128075270234243728379108685544408010937632152382769030986255546247826831158660082536473425670246891752706979495492786753568244486639209751111949505858288460990801449208442419508132438161549939073469532176536829346245392302749588646549011668363089138031766582972906194599936\n", + "932596346133306585653106382086576268897409936282370859882752470591202271940126606831474465769029965952124130658082756143350518369768254442855632791183901895482727151300183072064271566632293763752020059783009869729973608208952127024645223468117261655160705221357729345241027539082786375998203452232422065889209802838642499650715583932704055314493422406094122181209000366979891153743062922020621389619689023196209999379526219726206067576672096098862832374602861486055027219064062457925824083399936708576388919621224757685817148515167206239592369889834763579299720618589085349172171870318615759981970929764867996050796961783002610200542601103714967101279449516070452722150281514207602418605853454408319200180287705787078136869011666264054589382830899062241309594248405280201241049166762459813438792210538433584577565248372206445410776300874179543683538773588644256150540468487456758217371088816021875264304765538061972511092495653662317320165072946851340493783505413958990985573507136488973278419502223899011716576921981602898416884839016264876323099878146939064353073658692490784605499177293098023336726178276063533165945812389199872\n", + "1865192692266613171306212764173152537794819872564741719765504941182404543880253213662948931538059931904248261316165512286701036739536508885711265582367803790965454302600366144128543133264587527504040119566019739459947216417904254049290446936234523310321410442715458690482055078165572751996406904464844131778419605677284999301431167865408110628986844812188244362418000733959782307486125844041242779239378046392419998759052439452412135153344192197725664749205722972110054438128124915851648166799873417152777839242449515371634297030334412479184739779669527158599441237178170698344343740637231519963941859529735992101593923566005220401085202207429934202558899032140905444300563028415204837211706908816638400360575411574156273738023332528109178765661798124482619188496810560402482098333524919626877584421076867169155130496744412890821552601748359087367077547177288512301080936974913516434742177632043750528609531076123945022184991307324634640330145893702680987567010827917981971147014272977946556839004447798023433153843963205796833769678032529752646199756293878128706147317384981569210998354586196046673452356552127066331891624778399744\n", + "3730385384533226342612425528346305075589639745129483439531009882364809087760506427325897863076119863808496522632331024573402073479073017771422531164735607581930908605200732288257086266529175055008080239132039478919894432835808508098580893872469046620642820885430917380964110156331145503992813808929688263556839211354569998602862335730816221257973689624376488724836001467919564614972251688082485558478756092784839997518104878904824270306688384395451329498411445944220108876256249831703296333599746834305555678484899030743268594060668824958369479559339054317198882474356341396688687481274463039927883719059471984203187847132010440802170404414859868405117798064281810888601126056830409674423413817633276800721150823148312547476046665056218357531323596248965238376993621120804964196667049839253755168842153734338310260993488825781643105203496718174734155094354577024602161873949827032869484355264087501057219062152247890044369982614649269280660291787405361975134021655835963942294028545955893113678008895596046866307687926411593667539356065059505292399512587756257412294634769963138421996709172392093346904713104254132663783249556799488\n", + "7460770769066452685224851056692610151179279490258966879062019764729618175521012854651795726152239727616993045264662049146804146958146035542845062329471215163861817210401464576514172533058350110016160478264078957839788865671617016197161787744938093241285641770861834761928220312662291007985627617859376527113678422709139997205724671461632442515947379248752977449672002935839129229944503376164971116957512185569679995036209757809648540613376768790902658996822891888440217752512499663406592667199493668611111356969798061486537188121337649916738959118678108634397764948712682793377374962548926079855767438118943968406375694264020881604340808829719736810235596128563621777202252113660819348846827635266553601442301646296625094952093330112436715062647192497930476753987242241609928393334099678507510337684307468676620521986977651563286210406993436349468310188709154049204323747899654065738968710528175002114438124304495780088739965229298538561320583574810723950268043311671927884588057091911786227356017791192093732615375852823187335078712130119010584799025175512514824589269539926276843993418344784186693809426208508265327566499113598976\n", + "14921541538132905370449702113385220302358558980517933758124039529459236351042025709303591452304479455233986090529324098293608293916292071085690124658942430327723634420802929153028345066116700220032320956528157915679577731343234032394323575489876186482571283541723669523856440625324582015971255235718753054227356845418279994411449342923264885031894758497505954899344005871678258459889006752329942233915024371139359990072419515619297081226753537581805317993645783776880435505024999326813185334398987337222222713939596122973074376242675299833477918237356217268795529897425365586754749925097852159711534876237887936812751388528041763208681617659439473620471192257127243554404504227321638697693655270533107202884603292593250189904186660224873430125294384995860953507974484483219856786668199357015020675368614937353241043973955303126572420813986872698936620377418308098408647495799308131477937421056350004228876248608991560177479930458597077122641167149621447900536086623343855769176114183823572454712035582384187465230751705646374670157424260238021169598050351025029649178539079852553687986836689568373387618852417016530655132998227197952\n", + "29843083076265810740899404226770440604717117961035867516248079058918472702084051418607182904608958910467972181058648196587216587832584142171380249317884860655447268841605858306056690132233400440064641913056315831359155462686468064788647150979752372965142567083447339047712881250649164031942510471437506108454713690836559988822898685846529770063789516995011909798688011743356516919778013504659884467830048742278719980144839031238594162453507075163610635987291567553760871010049998653626370668797974674444445427879192245946148752485350599666955836474712434537591059794850731173509499850195704319423069752475775873625502777056083526417363235318878947240942384514254487108809008454643277395387310541066214405769206585186500379808373320449746860250588769991721907015948968966439713573336398714030041350737229874706482087947910606253144841627973745397873240754836616196817294991598616262955874842112700008457752497217983120354959860917194154245282334299242895801072173246687711538352228367647144909424071164768374930461503411292749340314848520476042339196100702050059298357078159705107375973673379136746775237704834033061310265996454395904\n", + "59686166152531621481798808453540881209434235922071735032496158117836945404168102837214365809217917820935944362117296393174433175665168284342760498635769721310894537683211716612113380264466800880129283826112631662718310925372936129577294301959504745930285134166894678095425762501298328063885020942875012216909427381673119977645797371693059540127579033990023819597376023486713033839556027009319768935660097484557439960289678062477188324907014150327221271974583135107521742020099997307252741337595949348888890855758384491892297504970701199333911672949424869075182119589701462347018999700391408638846139504951551747251005554112167052834726470637757894481884769028508974217618016909286554790774621082132428811538413170373000759616746640899493720501177539983443814031897937932879427146672797428060082701474459749412964175895821212506289683255947490795746481509673232393634589983197232525911749684225400016915504994435966240709919721834388308490564668598485791602144346493375423076704456735294289818848142329536749860923006822585498680629697040952084678392201404100118596714156319410214751947346758273493550475409668066122620531992908791808\n", + "119372332305063242963597616907081762418868471844143470064992316235673890808336205674428731618435835641871888724234592786348866351330336568685520997271539442621789075366423433224226760528933601760258567652225263325436621850745872259154588603919009491860570268333789356190851525002596656127770041885750024433818854763346239955291594743386119080255158067980047639194752046973426067679112054018639537871320194969114879920579356124954376649814028300654442543949166270215043484040199994614505482675191898697777781711516768983784595009941402398667823345898849738150364239179402924694037999400782817277692279009903103494502011108224334105669452941275515788963769538057017948435236033818573109581549242164264857623076826340746001519233493281798987441002355079966887628063795875865758854293345594856120165402948919498825928351791642425012579366511894981591492963019346464787269179966394465051823499368450800033831009988871932481419839443668776616981129337196971583204288692986750846153408913470588579637696284659073499721846013645170997361259394081904169356784402808200237193428312638820429503894693516546987100950819336132245241063985817583616\n", + "238744664610126485927195233814163524837736943688286940129984632471347781616672411348857463236871671283743777448469185572697732702660673137371041994543078885243578150732846866448453521057867203520517135304450526650873243701491744518309177207838018983721140536667578712381703050005193312255540083771500048867637709526692479910583189486772238160510316135960095278389504093946852135358224108037279075742640389938229759841158712249908753299628056601308885087898332540430086968080399989229010965350383797395555563423033537967569190019882804797335646691797699476300728478358805849388075998801565634555384558019806206989004022216448668211338905882551031577927539076114035896870472067637146219163098484328529715246153652681492003038466986563597974882004710159933775256127591751731517708586691189712240330805897838997651856703583284850025158733023789963182985926038692929574538359932788930103646998736901600067662019977743864962839678887337553233962258674393943166408577385973501692306817826941177159275392569318146999443692027290341994722518788163808338713568805616400474386856625277640859007789387033093974201901638672264490482127971635167232\n", + "477489329220252971854390467628327049675473887376573880259969264942695563233344822697714926473743342567487554896938371145395465405321346274742083989086157770487156301465693732896907042115734407041034270608901053301746487402983489036618354415676037967442281073335157424763406100010386624511080167543000097735275419053384959821166378973544476321020632271920190556779008187893704270716448216074558151485280779876459519682317424499817506599256113202617770175796665080860173936160799978458021930700767594791111126846067075935138380039765609594671293383595398952601456956717611698776151997603131269110769116039612413978008044432897336422677811765102063155855078152228071793740944135274292438326196968657059430492307305362984006076933973127195949764009420319867550512255183503463035417173382379424480661611795677995303713407166569700050317466047579926365971852077385859149076719865577860207293997473803200135324039955487729925679357774675106467924517348787886332817154771947003384613635653882354318550785138636293998887384054580683989445037576327616677427137611232800948773713250555281718015578774066187948403803277344528980964255943270334464\n", + "954978658440505943708780935256654099350947774753147760519938529885391126466689645395429852947486685134975109793876742290790930810642692549484167978172315540974312602931387465793814084231468814082068541217802106603492974805966978073236708831352075934884562146670314849526812200020773249022160335086000195470550838106769919642332757947088952642041264543840381113558016375787408541432896432149116302970561559752919039364634848999635013198512226405235540351593330161720347872321599956916043861401535189582222253692134151870276760079531219189342586767190797905202913913435223397552303995206262538221538232079224827956016088865794672845355623530204126311710156304456143587481888270548584876652393937314118860984614610725968012153867946254391899528018840639735101024510367006926070834346764758848961323223591355990607426814333139400100634932095159852731943704154771718298153439731155720414587994947606400270648079910975459851358715549350212935849034697575772665634309543894006769227271307764708637101570277272587997774768109161367978890075152655233354854275222465601897547426501110563436031157548132375896807606554689057961928511886540668928\n", + "1909957316881011887417561870513308198701895549506295521039877059770782252933379290790859705894973370269950219587753484581581861621285385098968335956344631081948625205862774931587628168462937628164137082435604213206985949611933956146473417662704151869769124293340629699053624400041546498044320670172000390941101676213539839284665515894177905284082529087680762227116032751574817082865792864298232605941123119505838078729269697999270026397024452810471080703186660323440695744643199913832087722803070379164444507384268303740553520159062438378685173534381595810405827826870446795104607990412525076443076464158449655912032177731589345690711247060408252623420312608912287174963776541097169753304787874628237721969229221451936024307735892508783799056037681279470202049020734013852141668693529517697922646447182711981214853628666278800201269864190319705463887408309543436596306879462311440829175989895212800541296159821950919702717431098700425871698069395151545331268619087788013538454542615529417274203140554545175995549536218322735957780150305310466709708550444931203795094853002221126872062315096264751793615213109378115923857023773081337856\n", + "3819914633762023774835123741026616397403791099012591042079754119541564505866758581581719411789946740539900439175506969163163723242570770197936671912689262163897250411725549863175256336925875256328274164871208426413971899223867912292946835325408303739538248586681259398107248800083092996088641340344000781882203352427079678569331031788355810568165058175361524454232065503149634165731585728596465211882246239011676157458539395998540052794048905620942161406373320646881391489286399827664175445606140758328889014768536607481107040318124876757370347068763191620811655653740893590209215980825050152886152928316899311824064355463178691381422494120816505246840625217824574349927553082194339506609575749256475443938458442903872048615471785017567598112075362558940404098041468027704283337387059035395845292894365423962429707257332557600402539728380639410927774816619086873192613758924622881658351979790425601082592319643901839405434862197400851743396138790303090662537238175576027076909085231058834548406281109090351991099072436645471915560300610620933419417100889862407590189706004442253744124630192529503587230426218756231847714047546162675712\n", + "7639829267524047549670247482053232794807582198025182084159508239083129011733517163163438823579893481079800878351013938326327446485141540395873343825378524327794500823451099726350512673851750512656548329742416852827943798447735824585893670650816607479076497173362518796214497600166185992177282680688001563764406704854159357138662063576711621136330116350723048908464131006299268331463171457192930423764492478023352314917078791997080105588097811241884322812746641293762782978572799655328350891212281516657778029537073214962214080636249753514740694137526383241623311307481787180418431961650100305772305856633798623648128710926357382762844988241633010493681250435649148699855106164388679013219151498512950887876916885807744097230943570035135196224150725117880808196082936055408566674774118070791690585788730847924859414514665115200805079456761278821855549633238173746385227517849245763316703959580851202165184639287803678810869724394801703486792277580606181325074476351152054153818170462117669096812562218180703982198144873290943831120601221241866838834201779724815180379412008884507488249260385059007174460852437512463695428095092325351424\n", + "15279658535048095099340494964106465589615164396050364168319016478166258023467034326326877647159786962159601756702027876652654892970283080791746687650757048655589001646902199452701025347703501025313096659484833705655887596895471649171787341301633214958152994346725037592428995200332371984354565361376003127528813409708318714277324127153423242272660232701446097816928262012598536662926342914385860847528984956046704629834157583994160211176195622483768645625493282587525565957145599310656701782424563033315556059074146429924428161272499507029481388275052766483246622614963574360836863923300200611544611713267597247296257421852714765525689976483266020987362500871298297399710212328777358026438302997025901775753833771615488194461887140070270392448301450235761616392165872110817133349548236141583381171577461695849718829029330230401610158913522557643711099266476347492770455035698491526633407919161702404330369278575607357621739448789603406973584555161212362650148952702304108307636340924235338193625124436361407964396289746581887662241202442483733677668403559449630360758824017769014976498520770118014348921704875024927390856190184650702848\n", + "30559317070096190198680989928212931179230328792100728336638032956332516046934068652653755294319573924319203513404055753305309785940566161583493375301514097311178003293804398905402050695407002050626193318969667411311775193790943298343574682603266429916305988693450075184857990400664743968709130722752006255057626819416637428554648254306846484545320465402892195633856524025197073325852685828771721695057969912093409259668315167988320422352391244967537291250986565175051131914291198621313403564849126066631112118148292859848856322544999014058962776550105532966493245229927148721673727846600401223089223426535194494592514843705429531051379952966532041974725001742596594799420424657554716052876605994051803551507667543230976388923774280140540784896602900471523232784331744221634266699096472283166762343154923391699437658058660460803220317827045115287422198532952694985540910071396983053266815838323404808660738557151214715243478897579206813947169110322424725300297905404608216615272681848470676387250248872722815928792579493163775324482404884967467355336807118899260721517648035538029952997041540236028697843409750049854781712380369301405696\n", + "61118634140192380397361979856425862358460657584201456673276065912665032093868137305307510588639147848638407026808111506610619571881132323166986750603028194622356006587608797810804101390814004101252386637939334822623550387581886596687149365206532859832611977386900150369715980801329487937418261445504012510115253638833274857109296508613692969090640930805784391267713048050394146651705371657543443390115939824186818519336630335976640844704782489935074582501973130350102263828582397242626807129698252133262224236296585719697712645089998028117925553100211065932986490459854297443347455693200802446178446853070388989185029687410859062102759905933064083949450003485193189598840849315109432105753211988103607103015335086461952777847548560281081569793205800943046465568663488443268533398192944566333524686309846783398875316117320921606440635654090230574844397065905389971081820142793966106533631676646809617321477114302429430486957795158413627894338220644849450600595810809216433230545363696941352774500497745445631857585158986327550648964809769934934710673614237798521443035296071076059905994083080472057395686819500099709563424760738602811392\n", + "122237268280384760794723959712851724716921315168402913346552131825330064187736274610615021177278295697276814053616223013221239143762264646333973501206056389244712013175217595621608202781628008202504773275878669645247100775163773193374298730413065719665223954773800300739431961602658975874836522891008025020230507277666549714218593017227385938181281861611568782535426096100788293303410743315086886780231879648373637038673260671953281689409564979870149165003946260700204527657164794485253614259396504266524448472593171439395425290179996056235851106200422131865972980919708594886694911386401604892356893706140777978370059374821718124205519811866128167898900006970386379197681698630218864211506423976207214206030670172923905555695097120562163139586411601886092931137326976886537066796385889132667049372619693566797750632234641843212881271308180461149688794131810779942163640285587932213067263353293619234642954228604858860973915590316827255788676441289698901201191621618432866461090727393882705549000995490891263715170317972655101297929619539869869421347228475597042886070592142152119811988166160944114791373639000199419126849521477205622784\n", + "244474536560769521589447919425703449433842630336805826693104263650660128375472549221230042354556591394553628107232446026442478287524529292667947002412112778489424026350435191243216405563256016405009546551757339290494201550327546386748597460826131439330447909547600601478863923205317951749673045782016050040461014555333099428437186034454771876362563723223137565070852192201576586606821486630173773560463759296747274077346521343906563378819129959740298330007892521400409055314329588970507228518793008533048896945186342878790850580359992112471702212400844263731945961839417189773389822772803209784713787412281555956740118749643436248411039623732256335797800013940772758395363397260437728423012847952414428412061340345847811111390194241124326279172823203772185862274653953773074133592771778265334098745239387133595501264469283686425762542616360922299377588263621559884327280571175864426134526706587238469285908457209717721947831180633654511577352882579397802402383243236865732922181454787765411098001990981782527430340635945310202595859239079739738842694456951194085772141184284304239623976332321888229582747278000398838253699042954411245568\n", + "488949073121539043178895838851406898867685260673611653386208527301320256750945098442460084709113182789107256214464892052884956575049058585335894004824225556978848052700870382486432811126512032810019093103514678580988403100655092773497194921652262878660895819095201202957727846410635903499346091564032100080922029110666198856874372068909543752725127446446275130141704384403153173213642973260347547120927518593494548154693042687813126757638259919480596660015785042800818110628659177941014457037586017066097793890372685757581701160719984224943404424801688527463891923678834379546779645545606419569427574824563111913480237499286872496822079247464512671595600027881545516790726794520875456846025695904828856824122680691695622222780388482248652558345646407544371724549307907546148267185543556530668197490478774267191002528938567372851525085232721844598755176527243119768654561142351728852269053413174476938571816914419435443895662361267309023154705765158795604804766486473731465844362909575530822196003981963565054860681271890620405191718478159479477685388913902388171544282368568608479247952664643776459165494556000797676507398085908822491136\n", + "977898146243078086357791677702813797735370521347223306772417054602640513501890196884920169418226365578214512428929784105769913150098117170671788009648451113957696105401740764972865622253024065620038186207029357161976806201310185546994389843304525757321791638190402405915455692821271806998692183128064200161844058221332397713748744137819087505450254892892550260283408768806306346427285946520695094241855037186989096309386085375626253515276519838961193320031570085601636221257318355882028914075172034132195587780745371515163402321439968449886808849603377054927783847357668759093559291091212839138855149649126223826960474998573744993644158494929025343191200055763091033581453589041750913692051391809657713648245361383391244445560776964497305116691292815088743449098615815092296534371087113061336394980957548534382005057877134745703050170465443689197510353054486239537309122284703457704538106826348953877143633828838870887791324722534618046309411530317591209609532972947462931688725819151061644392007963927130109721362543781240810383436956318958955370777827804776343088564737137216958495905329287552918330989112001595353014796171817644982272\n", + "1955796292486156172715583355405627595470741042694446613544834109205281027003780393769840338836452731156429024857859568211539826300196234341343576019296902227915392210803481529945731244506048131240076372414058714323953612402620371093988779686609051514643583276380804811830911385642543613997384366256128400323688116442664795427497488275638175010900509785785100520566817537612612692854571893041390188483710074373978192618772170751252507030553039677922386640063140171203272442514636711764057828150344068264391175561490743030326804642879936899773617699206754109855567694715337518187118582182425678277710299298252447653920949997147489987288316989858050686382400111526182067162907178083501827384102783619315427296490722766782488891121553928994610233382585630177486898197231630184593068742174226122672789961915097068764010115754269491406100340930887378395020706108972479074618244569406915409076213652697907754287267657677741775582649445069236092618823060635182419219065945894925863377451638302123288784015927854260219442725087562481620766873912637917910741555655609552686177129474274433916991810658575105836661978224003190706029592343635289964544\n", + "3911592584972312345431166710811255190941482085388893227089668218410562054007560787539680677672905462312858049715719136423079652600392468682687152038593804455830784421606963059891462489012096262480152744828117428647907224805240742187977559373218103029287166552761609623661822771285087227994768732512256800647376232885329590854994976551276350021801019571570201041133635075225225385709143786082780376967420148747956385237544341502505014061106079355844773280126280342406544885029273423528115656300688136528782351122981486060653609285759873799547235398413508219711135389430675036374237164364851356555420598596504895307841899994294979974576633979716101372764800223052364134325814356167003654768205567238630854592981445533564977782243107857989220466765171260354973796394463260369186137484348452245345579923830194137528020231508538982812200681861774756790041412217944958149236489138813830818152427305395815508574535315355483551165298890138472185237646121270364838438131891789851726754903276604246577568031855708520438885450175124963241533747825275835821483111311219105372354258948548867833983621317150211673323956448006381412059184687270579929088\n", + "7823185169944624690862333421622510381882964170777786454179336436821124108015121575079361355345810924625716099431438272846159305200784937365374304077187608911661568843213926119782924978024192524960305489656234857295814449610481484375955118746436206058574333105523219247323645542570174455989537465024513601294752465770659181709989953102552700043602039143140402082267270150450450771418287572165560753934840297495912770475088683005010028122212158711689546560252560684813089770058546847056231312601376273057564702245962972121307218571519747599094470796827016439422270778861350072748474328729702713110841197193009790615683799988589959949153267959432202745529600446104728268651628712334007309536411134477261709185962891067129955564486215715978440933530342520709947592788926520738372274968696904490691159847660388275056040463017077965624401363723549513580082824435889916298472978277627661636304854610791631017149070630710967102330597780276944370475292242540729676876263783579703453509806553208493155136063711417040877770900350249926483067495650551671642966222622438210744708517897097735667967242634300423346647912896012762824118369374541159858176\n", + "15646370339889249381724666843245020763765928341555572908358672873642248216030243150158722710691621849251432198862876545692318610401569874730748608154375217823323137686427852239565849956048385049920610979312469714591628899220962968751910237492872412117148666211046438494647291085140348911979074930049027202589504931541318363419979906205105400087204078286280804164534540300900901542836575144331121507869680594991825540950177366010020056244424317423379093120505121369626179540117093694112462625202752546115129404491925944242614437143039495198188941593654032878844541557722700145496948657459405426221682394386019581231367599977179919898306535918864405491059200892209456537303257424668014619072822268954523418371925782134259911128972431431956881867060685041419895185577853041476744549937393808981382319695320776550112080926034155931248802727447099027160165648871779832596945956555255323272609709221583262034298141261421934204661195560553888740950584485081459353752527567159406907019613106416986310272127422834081755541800700499852966134991301103343285932445244876421489417035794195471335934485268600846693295825792025525648236738749082319716352\n", + "31292740679778498763449333686490041527531856683111145816717345747284496432060486300317445421383243698502864397725753091384637220803139749461497216308750435646646275372855704479131699912096770099841221958624939429183257798441925937503820474985744824234297332422092876989294582170280697823958149860098054405179009863082636726839959812410210800174408156572561608329069080601801803085673150288662243015739361189983651081900354732020040112488848634846758186241010242739252359080234187388224925250405505092230258808983851888485228874286078990396377883187308065757689083115445400290993897314918810852443364788772039162462735199954359839796613071837728810982118401784418913074606514849336029238145644537909046836743851564268519822257944862863913763734121370082839790371155706082953489099874787617962764639390641553100224161852068311862497605454894198054320331297743559665193891913110510646545219418443166524068596282522843868409322391121107777481901168970162918707505055134318813814039226212833972620544254845668163511083601400999705932269982602206686571864890489752842978834071588390942671868970537201693386591651584051051296473477498164639432704\n", + "62585481359556997526898667372980083055063713366222291633434691494568992864120972600634890842766487397005728795451506182769274441606279498922994432617500871293292550745711408958263399824193540199682443917249878858366515596883851875007640949971489648468594664844185753978589164340561395647916299720196108810358019726165273453679919624820421600348816313145123216658138161203603606171346300577324486031478722379967302163800709464040080224977697269693516372482020485478504718160468374776449850500811010184460517617967703776970457748572157980792755766374616131515378166230890800581987794629837621704886729577544078324925470399908719679593226143675457621964236803568837826149213029698672058476291289075818093673487703128537039644515889725727827527468242740165679580742311412165906978199749575235925529278781283106200448323704136623724995210909788396108640662595487119330387783826221021293090438836886333048137192565045687736818644782242215554963802337940325837415010110268637627628078452425667945241088509691336327022167202801999411864539965204413373143729780979505685957668143176781885343737941074403386773183303168102102592946954996329278865408\n", + "125170962719113995053797334745960166110127426732444583266869382989137985728241945201269781685532974794011457590903012365538548883212558997845988865235001742586585101491422817916526799648387080399364887834499757716733031193767703750015281899942979296937189329688371507957178328681122791295832599440392217620716039452330546907359839249640843200697632626290246433316276322407207212342692601154648972062957444759934604327601418928080160449955394539387032744964040970957009436320936749552899701001622020368921035235935407553940915497144315961585511532749232263030756332461781601163975589259675243409773459155088156649850940799817439359186452287350915243928473607137675652298426059397344116952582578151636187346975406257074079289031779451455655054936485480331359161484622824331813956399499150471851058557562566212400896647408273247449990421819576792217281325190974238660775567652442042586180877673772666096274385130091375473637289564484431109927604675880651674830020220537275255256156904851335890482177019382672654044334405603998823729079930408826746287459561959011371915336286353563770687475882148806773546366606336204205185893909992658557730816\n", + "250341925438227990107594669491920332220254853464889166533738765978275971456483890402539563371065949588022915181806024731077097766425117995691977730470003485173170202982845635833053599296774160798729775668999515433466062387535407500030563799885958593874378659376743015914356657362245582591665198880784435241432078904661093814719678499281686401395265252580492866632552644814414424685385202309297944125914889519869208655202837856160320899910789078774065489928081941914018872641873499105799402003244040737842070471870815107881830994288631923171023065498464526061512664923563202327951178519350486819546918310176313299701881599634878718372904574701830487856947214275351304596852118794688233905165156303272374693950812514148158578063558902911310109872970960662718322969245648663627912798998300943702117115125132424801793294816546494899980843639153584434562650381948477321551135304884085172361755347545332192548770260182750947274579128968862219855209351761303349660040441074550510512313809702671780964354038765345308088668811207997647458159860817653492574919123918022743830672572707127541374951764297613547092733212672408410371787819985317115461632\n", + "500683850876455980215189338983840664440509706929778333067477531956551942912967780805079126742131899176045830363612049462154195532850235991383955460940006970346340405965691271666107198593548321597459551337999030866932124775070815000061127599771917187748757318753486031828713314724491165183330397761568870482864157809322187629439356998563372802790530505160985733265105289628828849370770404618595888251829779039738417310405675712320641799821578157548130979856163883828037745283746998211598804006488081475684140943741630215763661988577263846342046130996929052123025329847126404655902357038700973639093836620352626599403763199269757436745809149403660975713894428550702609193704237589376467810330312606544749387901625028296317156127117805822620219745941921325436645938491297327255825597996601887404234230250264849603586589633092989799961687278307168869125300763896954643102270609768170344723510695090664385097540520365501894549158257937724439710418703522606699320080882149101021024627619405343561928708077530690616177337622415995294916319721635306985149838247836045487661345145414255082749903528595227094185466425344816820743575639970634230923264\n", + "1001367701752911960430378677967681328881019413859556666134955063913103885825935561610158253484263798352091660727224098924308391065700471982767910921880013940692680811931382543332214397187096643194919102675998061733864249550141630000122255199543834375497514637506972063657426629448982330366660795523137740965728315618644375258878713997126745605581061010321971466530210579257657698741540809237191776503659558079476834620811351424641283599643156315096261959712327767656075490567493996423197608012976162951368281887483260431527323977154527692684092261993858104246050659694252809311804714077401947278187673240705253198807526398539514873491618298807321951427788857101405218387408475178752935620660625213089498775803250056592634312254235611645240439491883842650873291876982594654511651195993203774808468460500529699207173179266185979599923374556614337738250601527793909286204541219536340689447021390181328770195081040731003789098316515875448879420837407045213398640161764298202042049255238810687123857416155061381232354675244831990589832639443270613970299676495672090975322690290828510165499807057190454188370932850689633641487151279941268461846528\n", + "2002735403505823920860757355935362657762038827719113332269910127826207771651871123220316506968527596704183321454448197848616782131400943965535821843760027881385361623862765086664428794374193286389838205351996123467728499100283260000244510399087668750995029275013944127314853258897964660733321591046275481931456631237288750517757427994253491211162122020643942933060421158515315397483081618474383553007319116158953669241622702849282567199286312630192523919424655535312150981134987992846395216025952325902736563774966520863054647954309055385368184523987716208492101319388505618623609428154803894556375346481410506397615052797079029746983236597614643902855577714202810436774816950357505871241321250426178997551606500113185268624508471223290480878983767685301746583753965189309023302391986407549616936921001059398414346358532371959199846749113228675476501203055587818572409082439072681378894042780362657540390162081462007578196633031750897758841674814090426797280323528596404084098510477621374247714832310122762464709350489663981179665278886541227940599352991344181950645380581657020330999614114380908376741865701379267282974302559882536923693056\n", + "4005470807011647841721514711870725315524077655438226664539820255652415543303742246440633013937055193408366642908896395697233564262801887931071643687520055762770723247725530173328857588748386572779676410703992246935456998200566520000489020798175337501990058550027888254629706517795929321466643182092550963862913262474577501035514855988506982422324244041287885866120842317030630794966163236948767106014638232317907338483245405698565134398572625260385047838849311070624301962269975985692790432051904651805473127549933041726109295908618110770736369047975432416984202638777011237247218856309607789112750692962821012795230105594158059493966473195229287805711155428405620873549633900715011742482642500852357995103213000226370537249016942446580961757967535370603493167507930378618046604783972815099233873842002118796828692717064743918399693498226457350953002406111175637144818164878145362757788085560725315080780324162924015156393266063501795517683349628180853594560647057192808168197020955242748495429664620245524929418700979327962359330557773082455881198705982688363901290761163314040661999228228761816753483731402758534565948605119765073847386112\n", + "8010941614023295683443029423741450631048155310876453329079640511304831086607484492881266027874110386816733285817792791394467128525603775862143287375040111525541446495451060346657715177496773145559352821407984493870913996401133040000978041596350675003980117100055776509259413035591858642933286364185101927725826524949155002071029711977013964844648488082575771732241684634061261589932326473897534212029276464635814676966490811397130268797145250520770095677698622141248603924539951971385580864103809303610946255099866083452218591817236221541472738095950864833968405277554022474494437712619215578225501385925642025590460211188316118987932946390458575611422310856811241747099267801430023484965285001704715990206426000452741074498033884893161923515935070741206986335015860757236093209567945630198467747684004237593657385434129487836799386996452914701906004812222351274289636329756290725515576171121450630161560648325848030312786532127003591035366699256361707189121294114385616336394041910485496990859329240491049858837401958655924718661115546164911762397411965376727802581522326628081323998456457523633506967462805517069131897210239530147694772224\n", + "16021883228046591366886058847482901262096310621752906658159281022609662173214968985762532055748220773633466571635585582788934257051207551724286574750080223051082892990902120693315430354993546291118705642815968987741827992802266080001956083192701350007960234200111553018518826071183717285866572728370203855451653049898310004142059423954027929689296976165151543464483369268122523179864652947795068424058552929271629353932981622794260537594290501041540191355397244282497207849079903942771161728207618607221892510199732166904437183634472443082945476191901729667936810555108044948988875425238431156451002771851284051180920422376632237975865892780917151222844621713622483494198535602860046969930570003409431980412852000905482148996067769786323847031870141482413972670031721514472186419135891260396935495368008475187314770868258975673598773992905829403812009624444702548579272659512581451031152342242901260323121296651696060625573064254007182070733398512723414378242588228771232672788083820970993981718658480982099717674803917311849437322231092329823524794823930753455605163044653256162647996912915047267013934925611034138263794420479060295389544448\n", + "32043766456093182733772117694965802524192621243505813316318562045219324346429937971525064111496441547266933143271171165577868514102415103448573149500160446102165785981804241386630860709987092582237411285631937975483655985604532160003912166385402700015920468400223106037037652142367434571733145456740407710903306099796620008284118847908055859378593952330303086928966738536245046359729305895590136848117105858543258707865963245588521075188581002083080382710794488564994415698159807885542323456415237214443785020399464333808874367268944886165890952383803459335873621110216089897977750850476862312902005543702568102361840844753264475951731785561834302445689243427244966988397071205720093939861140006818863960825704001810964297992135539572647694063740282964827945340063443028944372838271782520793870990736016950374629541736517951347197547985811658807624019248889405097158545319025162902062304684485802520646242593303392121251146128508014364141466797025446828756485176457542465345576167641941987963437316961964199435349607834623698874644462184659647049589647861506911210326089306512325295993825830094534027869851222068276527588840958120590779088896\n", + "64087532912186365467544235389931605048385242487011626632637124090438648692859875943050128222992883094533866286542342331155737028204830206897146299000320892204331571963608482773261721419974185164474822571263875950967311971209064320007824332770805400031840936800446212074075304284734869143466290913480815421806612199593240016568237695816111718757187904660606173857933477072490092719458611791180273696234211717086517415731926491177042150377162004166160765421588977129988831396319615771084646912830474428887570040798928667617748734537889772331781904767606918671747242220432179795955501700953724625804011087405136204723681689506528951903463571123668604891378486854489933976794142411440187879722280013637727921651408003621928595984271079145295388127480565929655890680126886057888745676543565041587741981472033900749259083473035902694395095971623317615248038497778810194317090638050325804124609368971605041292485186606784242502292257016028728282933594050893657512970352915084930691152335283883975926874633923928398870699215669247397749288924369319294099179295723013822420652178613024650591987651660189068055739702444136553055177681916241181558177792\n", + "128175065824372730935088470779863210096770484974023253265274248180877297385719751886100256445985766189067732573084684662311474056409660413794292598000641784408663143927216965546523442839948370328949645142527751901934623942418128640015648665541610800063681873600892424148150608569469738286932581826961630843613224399186480033136475391632223437514375809321212347715866954144980185438917223582360547392468423434173034831463852982354084300754324008332321530843177954259977662792639231542169293825660948857775140081597857335235497469075779544663563809535213837343494484440864359591911003401907449251608022174810272409447363379013057903806927142247337209782756973708979867953588284822880375759444560027275455843302816007243857191968542158290590776254961131859311781360253772115777491353087130083175483962944067801498518166946071805388790191943246635230496076995557620388634181276100651608249218737943210082584970373213568485004584514032057456565867188101787315025940705830169861382304670567767951853749267847856797741398431338494795498577848738638588198358591446027644841304357226049301183975303320378136111479404888273106110355363832482363116355584\n", + "256350131648745461870176941559726420193540969948046506530548496361754594771439503772200512891971532378135465146169369324622948112819320827588585196001283568817326287854433931093046885679896740657899290285055503803869247884836257280031297331083221600127363747201784848296301217138939476573865163653923261687226448798372960066272950783264446875028751618642424695431733908289960370877834447164721094784936846868346069662927705964708168601508648016664643061686355908519955325585278463084338587651321897715550280163195714670470994938151559089327127619070427674686988968881728719183822006803814898503216044349620544818894726758026115807613854284494674419565513947417959735907176569645760751518889120054550911686605632014487714383937084316581181552509922263718623562720507544231554982706174260166350967925888135602997036333892143610777580383886493270460992153991115240777268362552201303216498437475886420165169940746427136970009169028064114913131734376203574630051881411660339722764609341135535903707498535695713595482796862676989590997155697477277176396717182892055289682608714452098602367950606640756272222958809776546212220710727664964726232711168\n", + "512700263297490923740353883119452840387081939896093013061096992723509189542879007544401025783943064756270930292338738649245896225638641655177170392002567137634652575708867862186093771359793481315798580570111007607738495769672514560062594662166443200254727494403569696592602434277878953147730327307846523374452897596745920132545901566528893750057503237284849390863467816579920741755668894329442189569873693736692139325855411929416337203017296033329286123372711817039910651170556926168677175302643795431100560326391429340941989876303118178654255238140855349373977937763457438367644013607629797006432088699241089637789453516052231615227708568989348839131027894835919471814353139291521503037778240109101823373211264028975428767874168633162363105019844527437247125441015088463109965412348520332701935851776271205994072667784287221555160767772986540921984307982230481554536725104402606432996874951772840330339881492854273940018338056128229826263468752407149260103762823320679445529218682271071807414997071391427190965593725353979181994311394954554352793434365784110579365217428904197204735901213281512544445917619553092424441421455329929452465422336\n", + "1025400526594981847480707766238905680774163879792186026122193985447018379085758015088802051567886129512541860584677477298491792451277283310354340784005134275269305151417735724372187542719586962631597161140222015215476991539345029120125189324332886400509454988807139393185204868555757906295460654615693046748905795193491840265091803133057787500115006474569698781726935633159841483511337788658884379139747387473384278651710823858832674406034592066658572246745423634079821302341113852337354350605287590862201120652782858681883979752606236357308510476281710698747955875526914876735288027215259594012864177398482179275578907032104463230455417137978697678262055789671838943628706278583043006075556480218203646746422528057950857535748337266324726210039689054874494250882030176926219930824697040665403871703552542411988145335568574443110321535545973081843968615964460963109073450208805212865993749903545680660679762985708547880036676112256459652526937504814298520207525646641358891058437364542143614829994142782854381931187450707958363988622789909108705586868731568221158730434857808394409471802426563025088891835239106184848882842910659858904930844672\n", + "2050801053189963694961415532477811361548327759584372052244387970894036758171516030177604103135772259025083721169354954596983584902554566620708681568010268550538610302835471448744375085439173925263194322280444030430953983078690058240250378648665772801018909977614278786370409737111515812590921309231386093497811590386983680530183606266115575000230012949139397563453871266319682967022675577317768758279494774946768557303421647717665348812069184133317144493490847268159642604682227704674708701210575181724402241305565717363767959505212472714617020952563421397495911751053829753470576054430519188025728354796964358551157814064208926460910834275957395356524111579343677887257412557166086012151112960436407293492845056115901715071496674532649452420079378109748988501764060353852439861649394081330807743407105084823976290671137148886220643071091946163687937231928921926218146900417610425731987499807091361321359525971417095760073352224512919305053875009628597040415051293282717782116874729084287229659988285565708763862374901415916727977245579818217411173737463136442317460869715616788818943604853126050177783670478212369697765685821319717809861689344\n", + "4101602106379927389922831064955622723096655519168744104488775941788073516343032060355208206271544518050167442338709909193967169805109133241417363136020537101077220605670942897488750170878347850526388644560888060861907966157380116480500757297331545602037819955228557572740819474223031625181842618462772186995623180773967361060367212532231150000460025898278795126907742532639365934045351154635537516558989549893537114606843295435330697624138368266634288986981694536319285209364455409349417402421150363448804482611131434727535919010424945429234041905126842794991823502107659506941152108861038376051456709593928717102315628128417852921821668551914790713048223158687355774514825114332172024302225920872814586985690112231803430142993349065298904840158756219497977003528120707704879723298788162661615486814210169647952581342274297772441286142183892327375874463857843852436293800835220851463974999614182722642719051942834191520146704449025838610107750019257194080830102586565435564233749458168574459319976571131417527724749802831833455954491159636434822347474926272884634921739431233577637887209706252100355567340956424739395531371642639435619723378688\n", + "8203204212759854779845662129911245446193311038337488208977551883576147032686064120710416412543089036100334884677419818387934339610218266482834726272041074202154441211341885794977500341756695701052777289121776121723815932314760232961001514594663091204075639910457115145481638948446063250363685236925544373991246361547934722120734425064462300000920051796557590253815485065278731868090702309271075033117979099787074229213686590870661395248276736533268577973963389072638570418728910818698834804842300726897608965222262869455071838020849890858468083810253685589983647004215319013882304217722076752102913419187857434204631256256835705843643337103829581426096446317374711549029650228664344048604451841745629173971380224463606860285986698130597809680317512438995954007056241415409759446597576325323230973628420339295905162684548595544882572284367784654751748927715687704872587601670441702927949999228365445285438103885668383040293408898051677220215500038514388161660205173130871128467498916337148918639953142262835055449499605663666911908982319272869644694949852545769269843478862467155275774419412504200711134681912849478791062743285278871239446757376\n", + "16406408425519709559691324259822490892386622076674976417955103767152294065372128241420832825086178072200669769354839636775868679220436532965669452544082148404308882422683771589955000683513391402105554578243552243447631864629520465922003029189326182408151279820914230290963277896892126500727370473851088747982492723095869444241468850128924600001840103593115180507630970130557463736181404618542150066235958199574148458427373181741322790496553473066537155947926778145277140837457821637397669609684601453795217930444525738910143676041699781716936167620507371179967294008430638027764608435444153504205826838375714868409262512513671411687286674207659162852192892634749423098059300457328688097208903683491258347942760448927213720571973396261195619360635024877991908014112482830819518893195152650646461947256840678591810325369097191089765144568735569309503497855431375409745175203340883405855899998456730890570876207771336766080586817796103354440431000077028776323320410346261742256934997832674297837279906284525670110898999211327333823817964638545739289389899705091538539686957724934310551548838825008401422269363825698957582125486570557742478893514752\n", + "32812816851039419119382648519644981784773244153349952835910207534304588130744256482841665650172356144401339538709679273551737358440873065931338905088164296808617764845367543179910001367026782804211109156487104486895263729259040931844006058378652364816302559641828460581926555793784253001454740947702177495964985446191738888482937700257849200003680207186230361015261940261114927472362809237084300132471916399148296916854746363482645580993106946133074311895853556290554281674915643274795339219369202907590435860889051477820287352083399563433872335241014742359934588016861276055529216870888307008411653676751429736818525025027342823374573348415318325704385785269498846196118600914657376194417807366982516695885520897854427441143946792522391238721270049755983816028224965661639037786390305301292923894513681357183620650738194382179530289137471138619006995710862750819490350406681766811711799996913461781141752415542673532161173635592206708880862000154057552646640820692523484513869995665348595674559812569051340221797998422654667647635929277091478578779799410183077079373915449868621103097677650016802844538727651397915164250973141115484957787029504\n", + "65625633702078838238765297039289963569546488306699905671820415068609176261488512965683331300344712288802679077419358547103474716881746131862677810176328593617235529690735086359820002734053565608422218312974208973790527458518081863688012116757304729632605119283656921163853111587568506002909481895404354991929970892383477776965875400515698400007360414372460722030523880522229854944725618474168600264943832798296593833709492726965291161986213892266148623791707112581108563349831286549590678438738405815180871721778102955640574704166799126867744670482029484719869176033722552111058433741776614016823307353502859473637050050054685646749146696830636651408771570538997692392237201829314752388835614733965033391771041795708854882287893585044782477442540099511967632056449931323278075572780610602585847789027362714367241301476388764359060578274942277238013991421725501638980700813363533623423599993826923562283504831085347064322347271184413417761724000308115105293281641385046969027739991330697191349119625138102680443595996845309335295271858554182957157559598820366154158747830899737242206195355300033605689077455302795830328501946282230969915574059008\n", + "131251267404157676477530594078579927139092976613399811343640830137218352522977025931366662600689424577605358154838717094206949433763492263725355620352657187234471059381470172719640005468107131216844436625948417947581054917036163727376024233514609459265210238567313842327706223175137012005818963790808709983859941784766955553931750801031396800014720828744921444061047761044459709889451236948337200529887665596593187667418985453930582323972427784532297247583414225162217126699662573099181356877476811630361743443556205911281149408333598253735489340964058969439738352067445104222116867483553228033646614707005718947274100100109371293498293393661273302817543141077995384784474403658629504777671229467930066783542083591417709764575787170089564954885080199023935264112899862646556151145561221205171695578054725428734482602952777528718121156549884554476027982843451003277961401626727067246847199987653847124567009662170694128644694542368826835523448000616230210586563282770093938055479982661394382698239250276205360887191993690618670590543717108365914315119197640732308317495661799474484412390710600067211378154910605591660657003892564461939831148118016\n", + "262502534808315352955061188157159854278185953226799622687281660274436705045954051862733325201378849155210716309677434188413898867526984527450711240705314374468942118762940345439280010936214262433688873251896835895162109834072327454752048467029218918530420477134627684655412446350274024011637927581617419967719883569533911107863501602062793600029441657489842888122095522088919419778902473896674401059775331193186375334837970907861164647944855569064594495166828450324434253399325146198362713754953623260723486887112411822562298816667196507470978681928117938879476704134890208444233734967106456067293229414011437894548200200218742586996586787322546605635086282155990769568948807317259009555342458935860133567084167182835419529151574340179129909770160398047870528225799725293112302291122442410343391156109450857468965205905555057436242313099769108952055965686902006555922803253454134493694399975307694249134019324341388257289389084737653671046896001232460421173126565540187876110959965322788765396478500552410721774383987381237341181087434216731828630238395281464616634991323598948968824781421200134422756309821211183321314007785128923879662296236032\n", + "525005069616630705910122376314319708556371906453599245374563320548873410091908103725466650402757698310421432619354868376827797735053969054901422481410628748937884237525880690878560021872428524867377746503793671790324219668144654909504096934058437837060840954269255369310824892700548048023275855163234839935439767139067822215727003204125587200058883314979685776244191044177838839557804947793348802119550662386372750669675941815722329295889711138129188990333656900648868506798650292396725427509907246521446973774224823645124597633334393014941957363856235877758953408269780416888467469934212912134586458828022875789096400400437485173993173574645093211270172564311981539137897614634518019110684917871720267134168334365670839058303148680358259819540320796095741056451599450586224604582244884820686782312218901714937930411811110114872484626199538217904111931373804013111845606506908268987388799950615388498268038648682776514578778169475307342093792002464920842346253131080375752221919930645577530792957001104821443548767974762474682362174868433463657260476790562929233269982647197897937649562842400268845512619642422366642628015570257847759324592472064\n", + "1050010139233261411820244752628639417112743812907198490749126641097746820183816207450933300805515396620842865238709736753655595470107938109802844962821257497875768475051761381757120043744857049734755493007587343580648439336289309819008193868116875674121681908538510738621649785401096096046551710326469679870879534278135644431454006408251174400117766629959371552488382088355677679115609895586697604239101324772745501339351883631444658591779422276258377980667313801297737013597300584793450855019814493042893947548449647290249195266668786029883914727712471755517906816539560833776934939868425824269172917656045751578192800800874970347986347149290186422540345128623963078275795229269036038221369835743440534268336668731341678116606297360716519639080641592191482112903198901172449209164489769641373564624437803429875860823622220229744969252399076435808223862747608026223691213013816537974777599901230776996536077297365553029157556338950614684187584004929841684692506262160751504443839861291155061585914002209642887097535949524949364724349736866927314520953581125858466539965294395795875299125684800537691025239284844733285256031140515695518649184944128\n", + "2100020278466522823640489505257278834225487625814396981498253282195493640367632414901866601611030793241685730477419473507311190940215876219605689925642514995751536950103522763514240087489714099469510986015174687161296878672578619638016387736233751348243363817077021477243299570802192192093103420652939359741759068556271288862908012816502348800235533259918743104976764176711355358231219791173395208478202649545491002678703767262889317183558844552516755961334627602595474027194601169586901710039628986085787895096899294580498390533337572059767829455424943511035813633079121667553869879736851648538345835312091503156385601601749940695972694298580372845080690257247926156551590458538072076442739671486881068536673337462683356233212594721433039278161283184382964225806397802344898418328979539282747129248875606859751721647244440459489938504798152871616447725495216052447382426027633075949555199802461553993072154594731106058315112677901229368375168009859683369385012524321503008887679722582310123171828004419285774195071899049898729448699473733854629041907162251716933079930588791591750598251369601075382050478569689466570512062281031391037298369888256\n", + "4200040556933045647280979010514557668450975251628793962996506564390987280735264829803733203222061586483371460954838947014622381880431752439211379851285029991503073900207045527028480174979428198939021972030349374322593757345157239276032775472467502696486727634154042954486599141604384384186206841305878719483518137112542577725816025633004697600471066519837486209953528353422710716462439582346790416956405299090982005357407534525778634367117689105033511922669255205190948054389202339173803420079257972171575790193798589160996781066675144119535658910849887022071627266158243335107739759473703297076691670624183006312771203203499881391945388597160745690161380514495852313103180917076144152885479342973762137073346674925366712466425189442866078556322566368765928451612795604689796836657959078565494258497751213719503443294488880918979877009596305743232895450990432104894764852055266151899110399604923107986144309189462212116630225355802458736750336019719366738770025048643006017775359445164620246343656008838571548390143798099797458897398947467709258083814324503433866159861177583183501196502739202150764100957139378933141024124562062782074596739776512\n", + "8400081113866091294561958021029115336901950503257587925993013128781974561470529659607466406444123172966742921909677894029244763760863504878422759702570059983006147800414091054056960349958856397878043944060698748645187514690314478552065550944935005392973455268308085908973198283208768768372413682611757438967036274225085155451632051266009395200942133039674972419907056706845421432924879164693580833912810598181964010714815069051557268734235378210067023845338510410381896108778404678347606840158515944343151580387597178321993562133350288239071317821699774044143254532316486670215479518947406594153383341248366012625542406406999762783890777194321491380322761028991704626206361834152288305770958685947524274146693349850733424932850378885732157112645132737531856903225591209379593673315918157130988516995502427439006886588977761837959754019192611486465790901980864209789529704110532303798220799209846215972288618378924424233260450711604917473500672039438733477540050097286012035550718890329240492687312017677143096780287596199594917794797894935418516167628649006867732319722355166367002393005478404301528201914278757866282048249124125564149193479553024\n", + "16800162227732182589123916042058230673803901006515175851986026257563949122941059319214932812888246345933485843819355788058489527521727009756845519405140119966012295600828182108113920699917712795756087888121397497290375029380628957104131101889870010785946910536616171817946396566417537536744827365223514877934072548450170310903264102532018790401884266079349944839814113413690842865849758329387161667825621196363928021429630138103114537468470756420134047690677020820763792217556809356695213680317031888686303160775194356643987124266700576478142635643399548088286509064632973340430959037894813188306766682496732025251084812813999525567781554388642982760645522057983409252412723668304576611541917371895048548293386699701466849865700757771464314225290265475063713806451182418759187346631836314261977033991004854878013773177955523675919508038385222972931581803961728419579059408221064607596441598419692431944577236757848848466520901423209834947001344078877466955080100194572024071101437780658480985374624035354286193560575192399189835589595789870837032335257298013735464639444710332734004786010956808603056403828557515732564096498248251128298386959106048\n", + "33600324455464365178247832084116461347607802013030351703972052515127898245882118638429865625776492691866971687638711576116979055043454019513691038810280239932024591201656364216227841399835425591512175776242794994580750058761257914208262203779740021571893821073232343635892793132835075073489654730447029755868145096900340621806528205064037580803768532158699889679628226827381685731699516658774323335651242392727856042859260276206229074936941512840268095381354041641527584435113618713390427360634063777372606321550388713287974248533401152956285271286799096176573018129265946680861918075789626376613533364993464050502169625627999051135563108777285965521291044115966818504825447336609153223083834743790097096586773399402933699731401515542928628450580530950127427612902364837518374693263672628523954067982009709756027546355911047351839016076770445945863163607923456839158118816442129215192883196839384863889154473515697696933041802846419669894002688157754933910160200389144048142202875561316961970749248070708572387121150384798379671179191579741674064670514596027470929278889420665468009572021913617206112807657115031465128192996496502256596773918212096\n", + "67200648910928730356495664168232922695215604026060703407944105030255796491764237276859731251552985383733943375277423152233958110086908039027382077620560479864049182403312728432455682799670851183024351552485589989161500117522515828416524407559480043143787642146464687271785586265670150146979309460894059511736290193800681243613056410128075161607537064317399779359256453654763371463399033317548646671302484785455712085718520552412458149873883025680536190762708083283055168870227237426780854721268127554745212643100777426575948497066802305912570542573598192353146036258531893361723836151579252753227066729986928101004339251255998102271126217554571931042582088231933637009650894673218306446167669487580194193173546798805867399462803031085857256901161061900254855225804729675036749386527345257047908135964019419512055092711822094703678032153540891891726327215846913678316237632884258430385766393678769727778308947031395393866083605692839339788005376315509867820320400778288096284405751122633923941498496141417144774242300769596759342358383159483348129341029192054941858557778841330936019144043827234412225615314230062930256385992993004513193547836424192\n", + "134401297821857460712991328336465845390431208052121406815888210060511592983528474553719462503105970767467886750554846304467916220173816078054764155241120959728098364806625456864911365599341702366048703104971179978323000235045031656833048815118960086287575284292929374543571172531340300293958618921788119023472580387601362487226112820256150323215074128634799558718512907309526742926798066635097293342604969570911424171437041104824916299747766051361072381525416166566110337740454474853561709442536255109490425286201554853151896994133604611825141085147196384706292072517063786723447672303158505506454133459973856202008678502511996204542252435109143862085164176463867274019301789346436612892335338975160388386347093597611734798925606062171714513802322123800509710451609459350073498773054690514095816271928038839024110185423644189407356064307081783783452654431693827356632475265768516860771532787357539455556617894062790787732167211385678679576010752631019735640640801556576192568811502245267847882996992282834289548484601539193518684716766318966696258682058384109883717115557682661872038288087654468824451230628460125860512771985986009026387095672848384\n", + "268802595643714921425982656672931690780862416104242813631776420121023185967056949107438925006211941534935773501109692608935832440347632156109528310482241919456196729613250913729822731198683404732097406209942359956646000470090063313666097630237920172575150568585858749087142345062680600587917237843576238046945160775202724974452225640512300646430148257269599117437025814619053485853596133270194586685209939141822848342874082209649832599495532102722144763050832333132220675480908949707123418885072510218980850572403109706303793988267209223650282170294392769412584145034127573446895344606317011012908266919947712404017357005023992409084504870218287724170328352927734548038603578692873225784670677950320776772694187195223469597851212124343429027604644247601019420903218918700146997546109381028191632543856077678048220370847288378814712128614163567566905308863387654713264950531537033721543065574715078911113235788125581575464334422771357359152021505262039471281281603113152385137623004490535695765993984565668579096969203078387037369433532637933392517364116768219767434231115365323744076576175308937648902461256920251721025543971972018052774191345696768\n", + "537605191287429842851965313345863381561724832208485627263552840242046371934113898214877850012423883069871547002219385217871664880695264312219056620964483838912393459226501827459645462397366809464194812419884719913292000940180126627332195260475840345150301137171717498174284690125361201175834475687152476093890321550405449948904451281024601292860296514539198234874051629238106971707192266540389173370419878283645696685748164419299665198991064205444289526101664666264441350961817899414246837770145020437961701144806219412607587976534418447300564340588785538825168290068255146893790689212634022025816533839895424808034714010047984818169009740436575448340656705855469096077207157385746451569341355900641553545388374390446939195702424248686858055209288495202038841806437837400293995092218762056383265087712155356096440741694576757629424257228327135133810617726775309426529901063074067443086131149430157822226471576251163150928668845542714718304043010524078942562563206226304770275246008981071391531987969131337158193938406156774074738867065275866785034728233536439534868462230730647488153152350617875297804922513840503442051087943944036105548382691393536\n", + "1075210382574859685703930626691726763123449664416971254527105680484092743868227796429755700024847766139743094004438770435743329761390528624438113241928967677824786918453003654919290924794733618928389624839769439826584001880360253254664390520951680690300602274343434996348569380250722402351668951374304952187780643100810899897808902562049202585720593029078396469748103258476213943414384533080778346740839756567291393371496328838599330397982128410888579052203329332528882701923635798828493675540290040875923402289612438825215175953068836894601128681177571077650336580136510293787581378425268044051633067679790849616069428020095969636338019480873150896681313411710938192154414314771492903138682711801283107090776748780893878391404848497373716110418576990404077683612875674800587990184437524112766530175424310712192881483389153515258848514456654270267621235453550618853059802126148134886172262298860315644452943152502326301857337691085429436608086021048157885125126412452609540550492017962142783063975938262674316387876812313548149477734130551733570069456467072879069736924461461294976306304701235750595609845027681006884102175887888072211096765382787072\n", + "2150420765149719371407861253383453526246899328833942509054211360968185487736455592859511400049695532279486188008877540871486659522781057248876226483857935355649573836906007309838581849589467237856779249679538879653168003760720506509328781041903361380601204548686869992697138760501444804703337902748609904375561286201621799795617805124098405171441186058156792939496206516952427886828769066161556693481679513134582786742992657677198660795964256821777158104406658665057765403847271597656987351080580081751846804579224877650430351906137673789202257362355142155300673160273020587575162756850536088103266135359581699232138856040191939272676038961746301793362626823421876384308828629542985806277365423602566214181553497561787756782809696994747432220837153980808155367225751349601175980368875048225533060350848621424385762966778307030517697028913308540535242470907101237706119604252296269772344524597720631288905886305004652603714675382170858873216172042096315770250252824905219081100984035924285566127951876525348632775753624627096298955468261103467140138912934145758139473848922922589952612609402471501191219690055362013768204351775776144422193530765574144\n", + "4300841530299438742815722506766907052493798657667885018108422721936370975472911185719022800099391064558972376017755081742973319045562114497752452967715870711299147673812014619677163699178934475713558499359077759306336007521441013018657562083806722761202409097373739985394277521002889609406675805497219808751122572403243599591235610248196810342882372116313585878992413033904855773657538132323113386963359026269165573485985315354397321591928513643554316208813317330115530807694543195313974702161160163503693609158449755300860703812275347578404514724710284310601346320546041175150325513701072176206532270719163398464277712080383878545352077923492603586725253646843752768617657259085971612554730847205132428363106995123575513565619393989494864441674307961616310734451502699202351960737750096451066120701697242848771525933556614061035394057826617081070484941814202475412239208504592539544689049195441262577811772610009305207429350764341717746432344084192631540500505649810438162201968071848571132255903753050697265551507249254192597910936522206934280277825868291516278947697845845179905225218804943002382439380110724027536408703551552288844387061531148288\n", + "8601683060598877485631445013533814104987597315335770036216845443872741950945822371438045600198782129117944752035510163485946638091124228995504905935431741422598295347624029239354327398357868951427116998718155518612672015042882026037315124167613445522404818194747479970788555042005779218813351610994439617502245144806487199182471220496393620685764744232627171757984826067809711547315076264646226773926718052538331146971970630708794643183857027287108632417626634660231061615389086390627949404322320327007387218316899510601721407624550695156809029449420568621202692641092082350300651027402144352413064541438326796928555424160767757090704155846985207173450507293687505537235314518171943225109461694410264856726213990247151027131238787978989728883348615923232621468903005398404703921475500192902132241403394485697543051867113228122070788115653234162140969883628404950824478417009185079089378098390882525155623545220018610414858701528683435492864688168385263081001011299620876324403936143697142264511807506101394531103014498508385195821873044413868560555651736583032557895395691690359810450437609886004764878760221448055072817407103104577688774123062296576\n", + "17203366121197754971262890027067628209975194630671540072433690887745483901891644742876091200397564258235889504071020326971893276182248457991009811870863482845196590695248058478708654796715737902854233997436311037225344030085764052074630248335226891044809636389494959941577110084011558437626703221988879235004490289612974398364942440992787241371529488465254343515969652135619423094630152529292453547853436105076662293943941261417589286367714054574217264835253269320462123230778172781255898808644640654014774436633799021203442815249101390313618058898841137242405385282184164700601302054804288704826129082876653593857110848321535514181408311693970414346901014587375011074470629036343886450218923388820529713452427980494302054262477575957979457766697231846465242937806010796809407842951000385804264482806788971395086103734226456244141576231306468324281939767256809901648956834018370158178756196781765050311247090440037220829717403057366870985729376336770526162002022599241752648807872287394284529023615012202789062206028997016770391643746088827737121111303473166065115790791383380719620900875219772009529757520442896110145634814206209155377548246124593152\n", + "34406732242395509942525780054135256419950389261343080144867381775490967803783289485752182400795128516471779008142040653943786552364496915982019623741726965690393181390496116957417309593431475805708467994872622074450688060171528104149260496670453782089619272778989919883154220168023116875253406443977758470008980579225948796729884881985574482743058976930508687031939304271238846189260305058584907095706872210153324587887882522835178572735428109148434529670506538640924246461556345562511797617289281308029548873267598042406885630498202780627236117797682274484810770564368329401202604109608577409652258165753307187714221696643071028362816623387940828693802029174750022148941258072687772900437846777641059426904855960988604108524955151915958915533394463692930485875612021593618815685902000771608528965613577942790172207468452912488283152462612936648563879534513619803297913668036740316357512393563530100622494180880074441659434806114733741971458752673541052324004045198483505297615744574788569058047230024405578124412057994033540783287492177655474242222606946332130231581582766761439241801750439544019059515040885792220291269628412418310755096492249186304\n", + "68813464484791019885051560108270512839900778522686160289734763550981935607566578971504364801590257032943558016284081307887573104728993831964039247483453931380786362780992233914834619186862951611416935989745244148901376120343056208298520993340907564179238545557979839766308440336046233750506812887955516940017961158451897593459769763971148965486117953861017374063878608542477692378520610117169814191413744420306649175775765045670357145470856218296869059341013077281848492923112691125023595234578562616059097746535196084813771260996405561254472235595364548969621541128736658802405208219217154819304516331506614375428443393286142056725633246775881657387604058349500044297882516145375545800875693555282118853809711921977208217049910303831917831066788927385860971751224043187237631371804001543217057931227155885580344414936905824976566304925225873297127759069027239606595827336073480632715024787127060201244988361760148883318869612229467483942917505347082104648008090396967010595231489149577138116094460048811156248824115988067081566574984355310948484445213892664260463163165533522878483603500879088038119030081771584440582539256824836621510192984498372608\n", + "137626928969582039770103120216541025679801557045372320579469527101963871215133157943008729603180514065887116032568162615775146209457987663928078494966907862761572725561984467829669238373725903222833871979490488297802752240686112416597041986681815128358477091115959679532616880672092467501013625775911033880035922316903795186919539527942297930972235907722034748127757217084955384757041220234339628382827488840613298351551530091340714290941712436593738118682026154563696985846225382250047190469157125232118195493070392169627542521992811122508944471190729097939243082257473317604810416438434309638609032663013228750856886786572284113451266493551763314775208116699000088595765032290751091601751387110564237707619423843954416434099820607663835662133577854771721943502448086374475262743608003086434115862454311771160688829873811649953132609850451746594255518138054479213191654672146961265430049574254120402489976723520297766637739224458934967885835010694164209296016180793934021190462978299154276232188920097622312497648231976134163133149968710621896968890427785328520926326331067045756967207001758176076238060163543168881165078513649673243020385968996745216\n", + "275253857939164079540206240433082051359603114090744641158939054203927742430266315886017459206361028131774232065136325231550292418915975327856156989933815725523145451123968935659338476747451806445667743958980976595605504481372224833194083973363630256716954182231919359065233761344184935002027251551822067760071844633807590373839079055884595861944471815444069496255514434169910769514082440468679256765654977681226596703103060182681428581883424873187476237364052309127393971692450764500094380938314250464236390986140784339255085043985622245017888942381458195878486164514946635209620832876868619277218065326026457501713773573144568226902532987103526629550416233398000177191530064581502183203502774221128475415238847687908832868199641215327671324267155709543443887004896172748950525487216006172868231724908623542321377659747623299906265219700903493188511036276108958426383309344293922530860099148508240804979953447040595533275478448917869935771670021388328418592032361587868042380925956598308552464377840195244624995296463952268326266299937421243793937780855570657041852652662134091513934414003516352152476120327086337762330157027299346486040771937993490432\n", + "550507715878328159080412480866164102719206228181489282317878108407855484860532631772034918412722056263548464130272650463100584837831950655712313979867631451046290902247937871318676953494903612891335487917961953191211008962744449666388167946727260513433908364463838718130467522688369870004054503103644135520143689267615180747678158111769191723888943630888138992511028868339821539028164880937358513531309955362453193406206120365362857163766849746374952474728104618254787943384901529000188761876628500928472781972281568678510170087971244490035777884762916391756972329029893270419241665753737238554436130652052915003427547146289136453805065974207053259100832466796000354383060129163004366407005548442256950830477695375817665736399282430655342648534311419086887774009792345497901050974432012345736463449817247084642755319495246599812530439401806986377022072552217916852766618688587845061720198297016481609959906894081191066550956897835739871543340042776656837184064723175736084761851913196617104928755680390489249990592927904536652532599874842487587875561711141314083705305324268183027868828007032704304952240654172675524660314054598692972081543875986980864\n", + "1101015431756656318160824961732328205438412456362978564635756216815710969721065263544069836825444112527096928260545300926201169675663901311424627959735262902092581804495875742637353906989807225782670975835923906382422017925488899332776335893454521026867816728927677436260935045376739740008109006207288271040287378535230361495356316223538383447777887261776277985022057736679643078056329761874717027062619910724906386812412240730725714327533699492749904949456209236509575886769803058000377523753257001856945563944563137357020340175942488980071555769525832783513944658059786540838483331507474477108872261304105830006855094292578272907610131948414106518201664933592000708766120258326008732814011096884513901660955390751635331472798564861310685297068622838173775548019584690995802101948864024691472926899634494169285510638990493199625060878803613972754044145104435833705533237377175690123440396594032963219919813788162382133101913795671479743086680085553313674368129446351472169523703826393234209857511360780978499981185855809073305065199749684975175751123422282628167410610648536366055737656014065408609904481308345351049320628109197385944163087751973961728\n", + "2202030863513312636321649923464656410876824912725957129271512433631421939442130527088139673650888225054193856521090601852402339351327802622849255919470525804185163608991751485274707813979614451565341951671847812764844035850977798665552671786909042053735633457855354872521870090753479480016218012414576542080574757070460722990712632447076766895555774523552555970044115473359286156112659523749434054125239821449812773624824481461451428655067398985499809898912418473019151773539606116000755047506514003713891127889126274714040680351884977960143111539051665567027889316119573081676966663014948954217744522608211660013710188585156545815220263896828213036403329867184001417532240516652017465628022193769027803321910781503270662945597129722621370594137245676347551096039169381991604203897728049382945853799268988338571021277980986399250121757607227945508088290208871667411066474754351380246880793188065926439839627576324764266203827591342959486173360171106627348736258892702944339047407652786468419715022721561956999962371711618146610130399499369950351502246844565256334821221297072732111475312028130817219808962616690702098641256218394771888326175503947923456\n", + "4404061727026625272643299846929312821753649825451914258543024867262843878884261054176279347301776450108387713042181203704804678702655605245698511838941051608370327217983502970549415627959228903130683903343695625529688071701955597331105343573818084107471266915710709745043740181506958960032436024829153084161149514140921445981425264894153533791111549047105111940088230946718572312225319047498868108250479642899625547249648962922902857310134797970999619797824836946038303547079212232001510095013028007427782255778252549428081360703769955920286223078103331134055778632239146163353933326029897908435489045216423320027420377170313091630440527793656426072806659734368002835064481033304034931256044387538055606643821563006541325891194259445242741188274491352695102192078338763983208407795456098765891707598537976677142042555961972798500243515214455891016176580417743334822132949508702760493761586376131852879679255152649528532407655182685918972346720342213254697472517785405888678094815305572936839430045443123913999924743423236293220260798998739900703004493689130512669642442594145464222950624056261634439617925233381404197282512436789543776652351007895846912\n", + "8808123454053250545286599693858625643507299650903828517086049734525687757768522108352558694603552900216775426084362407409609357405311210491397023677882103216740654435967005941098831255918457806261367806687391251059376143403911194662210687147636168214942533831421419490087480363013917920064872049658306168322299028281842891962850529788307067582223098094210223880176461893437144624450638094997736216500959285799251094499297925845805714620269595941999239595649673892076607094158424464003020190026056014855564511556505098856162721407539911840572446156206662268111557264478292326707866652059795816870978090432846640054840754340626183260881055587312852145613319468736005670128962066608069862512088775076111213287643126013082651782388518890485482376548982705390204384156677527966416815590912197531783415197075953354284085111923945597000487030428911782032353160835486669644265899017405520987523172752263705759358510305299057064815310365371837944693440684426509394945035570811777356189630611145873678860090886247827999849486846472586440521597997479801406008987378261025339284885188290928445901248112523268879235850466762808394565024873579087553304702015791693824\n", + "17616246908106501090573199387717251287014599301807657034172099469051375515537044216705117389207105800433550852168724814819218714810622420982794047355764206433481308871934011882197662511836915612522735613374782502118752286807822389324421374295272336429885067662842838980174960726027835840129744099316612336644598056563685783925701059576614135164446196188420447760352923786874289248901276189995472433001918571598502188998595851691611429240539191883998479191299347784153214188316848928006040380052112029711129023113010197712325442815079823681144892312413324536223114528956584653415733304119591633741956180865693280109681508681252366521762111174625704291226638937472011340257924133216139725024177550152222426575286252026165303564777037780970964753097965410780408768313355055932833631181824395063566830394151906708568170223847891194000974060857823564064706321670973339288531798034811041975046345504527411518717020610598114129630620730743675889386881368853018789890071141623554712379261222291747357720181772495655999698973692945172881043195994959602812017974756522050678569770376581856891802496225046537758471700933525616789130049747158175106609404031583387648\n", + "35232493816213002181146398775434502574029198603615314068344198938102751031074088433410234778414211600867101704337449629638437429621244841965588094711528412866962617743868023764395325023673831225045471226749565004237504573615644778648842748590544672859770135325685677960349921452055671680259488198633224673289196113127371567851402119153228270328892392376840895520705847573748578497802552379990944866003837143197004377997191703383222858481078383767996958382598695568306428376633697856012080760104224059422258046226020395424650885630159647362289784624826649072446229057913169306831466608239183267483912361731386560219363017362504733043524222349251408582453277874944022680515848266432279450048355100304444853150572504052330607129554075561941929506195930821560817536626710111865667262363648790127133660788303813417136340447695782388001948121715647128129412643341946678577063596069622083950092691009054823037434041221196228259261241461487351778773762737706037579780142283247109424758522444583494715440363544991311999397947385890345762086391989919205624035949513044101357139540753163713783604992450093075516943401867051233578260099494316350213218808063166775296\n", + "70464987632426004362292797550869005148058397207230628136688397876205502062148176866820469556828423201734203408674899259276874859242489683931176189423056825733925235487736047528790650047347662450090942453499130008475009147231289557297685497181089345719540270651371355920699842904111343360518976397266449346578392226254743135702804238306456540657784784753681791041411695147497156995605104759981889732007674286394008755994383406766445716962156767535993916765197391136612856753267395712024161520208448118844516092452040790849301771260319294724579569249653298144892458115826338613662933216478366534967824723462773120438726034725009466087048444698502817164906555749888045361031696532864558900096710200608889706301145008104661214259108151123883859012391861643121635073253420223731334524727297580254267321576607626834272680895391564776003896243431294256258825286683893357154127192139244167900185382018109646074868082442392456518522482922974703557547525475412075159560284566494218849517044889166989430880727089982623998795894771780691524172783979838411248071899026088202714279081506327427567209984900186151033886803734102467156520198988632700426437616126333550592\n", + "140929975264852008724585595101738010296116794414461256273376795752411004124296353733640939113656846403468406817349798518553749718484979367862352378846113651467850470975472095057581300094695324900181884906998260016950018294462579114595370994362178691439080541302742711841399685808222686721037952794532898693156784452509486271405608476612913081315569569507363582082823390294994313991210209519963779464015348572788017511988766813532891433924313535071987833530394782273225713506534791424048323040416896237689032184904081581698603542520638589449159138499306596289784916231652677227325866432956733069935649446925546240877452069450018932174096889397005634329813111499776090722063393065729117800193420401217779412602290016209322428518216302247767718024783723286243270146506840447462669049454595160508534643153215253668545361790783129552007792486862588512517650573367786714308254384278488335800370764036219292149736164884784913037044965845949407115095050950824150319120569132988437699034089778333978861761454179965247997591789543561383048345567959676822496143798052176405428558163012654855134419969800372302067773607468204934313040397977265400852875232252667101184\n", + "281859950529704017449171190203476020592233588828922512546753591504822008248592707467281878227313692806936813634699597037107499436969958735724704757692227302935700941950944190115162600189390649800363769813996520033900036588925158229190741988724357382878161082605485423682799371616445373442075905589065797386313568905018972542811216953225826162631139139014727164165646780589988627982420419039927558928030697145576035023977533627065782867848627070143975667060789564546451427013069582848096646080833792475378064369808163163397207085041277178898318276998613192579569832463305354454651732865913466139871298893851092481754904138900037864348193778794011268659626222999552181444126786131458235600386840802435558825204580032418644857036432604495535436049567446572486540293013680894925338098909190321017069286306430507337090723581566259104015584973725177025035301146735573428616508768556976671600741528072438584299472329769569826074089931691898814230190101901648300638241138265976875398068179556667957723522908359930495995183579087122766096691135919353644992287596104352810857116326025309710268839939600744604135547214936409868626080795954530801705750464505334202368\n", + "563719901059408034898342380406952041184467177657845025093507183009644016497185414934563756454627385613873627269399194074214998873939917471449409515384454605871401883901888380230325200378781299600727539627993040067800073177850316458381483977448714765756322165210970847365598743232890746884151811178131594772627137810037945085622433906451652325262278278029454328331293561179977255964840838079855117856061394291152070047955067254131565735697254140287951334121579129092902854026139165696193292161667584950756128739616326326794414170082554357796636553997226385159139664926610708909303465731826932279742597787702184963509808277800075728696387557588022537319252445999104362888253572262916471200773681604871117650409160064837289714072865208991070872099134893144973080586027361789850676197818380642034138572612861014674181447163132518208031169947450354050070602293471146857233017537113953343201483056144877168598944659539139652148179863383797628460380203803296601276482276531953750796136359113335915447045816719860991990367158174245532193382271838707289984575192208705621714232652050619420537679879201489208271094429872819737252161591909061603411500929010668404736\n", + "1127439802118816069796684760813904082368934355315690050187014366019288032994370829869127512909254771227747254538798388148429997747879834942898819030768909211742803767803776760460650400757562599201455079255986080135600146355700632916762967954897429531512644330421941694731197486465781493768303622356263189545254275620075890171244867812903304650524556556058908656662587122359954511929681676159710235712122788582304140095910134508263131471394508280575902668243158258185805708052278331392386584323335169901512257479232652653588828340165108715593273107994452770318279329853221417818606931463653864559485195575404369927019616555600151457392775115176045074638504891998208725776507144525832942401547363209742235300818320129674579428145730417982141744198269786289946161172054723579701352395636761284068277145225722029348362894326265036416062339894900708100141204586942293714466035074227906686402966112289754337197889319078279304296359726767595256920760407606593202552964553063907501592272718226671830894091633439721983980734316348491064386764543677414579969150384417411243428465304101238841075359758402978416542188859745639474504323183818123206823001858021336809472\n", + "2254879604237632139593369521627808164737868710631380100374028732038576065988741659738255025818509542455494509077596776296859995495759669885797638061537818423485607535607553520921300801515125198402910158511972160271200292711401265833525935909794859063025288660843883389462394972931562987536607244712526379090508551240151780342489735625806609301049113112117817313325174244719909023859363352319420471424245577164608280191820269016526262942789016561151805336486316516371611416104556662784773168646670339803024514958465305307177656680330217431186546215988905540636558659706442835637213862927307729118970391150808739854039233111200302914785550230352090149277009783996417451553014289051665884803094726419484470601636640259349158856291460835964283488396539572579892322344109447159402704791273522568136554290451444058696725788652530072832124679789801416200282409173884587428932070148455813372805932224579508674395778638156558608592719453535190513841520815213186405105929106127815003184545436453343661788183266879443967961468632696982128773529087354829159938300768834822486856930608202477682150719516805956833084377719491278949008646367636246413646003716042673618944\n", + "4509759208475264279186739043255616329475737421262760200748057464077152131977483319476510051637019084910989018155193552593719990991519339771595276123075636846971215071215107041842601603030250396805820317023944320542400585422802531667051871819589718126050577321687766778924789945863125975073214489425052758181017102480303560684979471251613218602098226224235634626650348489439818047718726704638840942848491154329216560383640538033052525885578033122303610672972633032743222832209113325569546337293340679606049029916930610614355313360660434862373092431977811081273117319412885671274427725854615458237940782301617479708078466222400605829571100460704180298554019567992834903106028578103331769606189452838968941203273280518698317712582921671928566976793079145159784644688218894318805409582547045136273108580902888117393451577305060145664249359579602832400564818347769174857864140296911626745611864449159017348791557276313117217185438907070381027683041630426372810211858212255630006369090872906687323576366533758887935922937265393964257547058174709658319876601537669644973713861216404955364301439033611913666168755438982557898017292735272492827292007432085347237888\n", + "9019518416950528558373478086511232658951474842525520401496114928154304263954966638953020103274038169821978036310387105187439981983038679543190552246151273693942430142430214083685203206060500793611640634047888641084801170845605063334103743639179436252101154643375533557849579891726251950146428978850105516362034204960607121369958942503226437204196452448471269253300696978879636095437453409277681885696982308658433120767281076066105051771156066244607221345945266065486445664418226651139092674586681359212098059833861221228710626721320869724746184863955622162546234638825771342548855451709230916475881564603234959416156932444801211659142200921408360597108039135985669806212057156206663539212378905677937882406546561037396635425165843343857133953586158290319569289376437788637610819165094090272546217161805776234786903154610120291328498719159205664801129636695538349715728280593823253491223728898318034697583114552626234434370877814140762055366083260852745620423716424511260012738181745813374647152733067517775871845874530787928515094116349419316639753203075339289947427722432809910728602878067223827332337510877965115796034585470544985654584014864170694475776\n", + "18039036833901057116746956173022465317902949685051040802992229856308608527909933277906040206548076339643956072620774210374879963966077359086381104492302547387884860284860428167370406412121001587223281268095777282169602341691210126668207487278358872504202309286751067115699159783452503900292857957700211032724068409921214242739917885006452874408392904896942538506601393957759272190874906818555363771393964617316866241534562152132210103542312132489214442691890532130972891328836453302278185349173362718424196119667722442457421253442641739449492369727911244325092469277651542685097710903418461832951763129206469918832313864889602423318284401842816721194216078271971339612424114312413327078424757811355875764813093122074793270850331686687714267907172316580639138578752875577275221638330188180545092434323611552469573806309220240582656997438318411329602259273391076699431456561187646506982447457796636069395166229105252468868741755628281524110732166521705491240847432849022520025476363491626749294305466135035551743691749061575857030188232698838633279506406150678579894855444865619821457205756134447654664675021755930231592069170941089971309168029728341388951552\n", + "36078073667802114233493912346044930635805899370102081605984459712617217055819866555812080413096152679287912145241548420749759927932154718172762208984605094775769720569720856334740812824242003174446562536191554564339204683382420253336414974556717745008404618573502134231398319566905007800585715915400422065448136819842428485479835770012905748816785809793885077013202787915518544381749813637110727542787929234633732483069124304264420207084624264978428885383781064261945782657672906604556370698346725436848392239335444884914842506885283478898984739455822488650184938555303085370195421806836923665903526258412939837664627729779204846636568803685633442388432156543942679224848228624826654156849515622711751529626186244149586541700663373375428535814344633161278277157505751154550443276660376361090184868647223104939147612618440481165313994876636822659204518546782153398862913122375293013964894915593272138790332458210504937737483511256563048221464333043410982481694865698045040050952726983253498588610932270071103487383498123151714060376465397677266559012812301357159789710889731239642914411512268895309329350043511860463184138341882179942618336059456682777903104\n", + "72156147335604228466987824692089861271611798740204163211968919425234434111639733111624160826192305358575824290483096841499519855864309436345524417969210189551539441139441712669481625648484006348893125072383109128678409366764840506672829949113435490016809237147004268462796639133810015601171431830800844130896273639684856970959671540025811497633571619587770154026405575831037088763499627274221455085575858469267464966138248608528840414169248529956857770767562128523891565315345813209112741396693450873696784478670889769829685013770566957797969478911644977300369877110606170740390843613673847331807052516825879675329255459558409693273137607371266884776864313087885358449696457249653308313699031245423503059252372488299173083401326746750857071628689266322556554315011502309100886553320752722180369737294446209878295225236880962330627989753273645318409037093564306797725826244750586027929789831186544277580664916421009875474967022513126096442928666086821964963389731396090080101905453966506997177221864540142206974766996246303428120752930795354533118025624602714319579421779462479285828823024537790618658700087023720926368276683764359885236672118913365555806208\n", + "144312294671208456933975649384179722543223597480408326423937838850468868223279466223248321652384610717151648580966193682999039711728618872691048835938420379103078882278883425338963251296968012697786250144766218257356818733529681013345659898226870980033618474294008536925593278267620031202342863661601688261792547279369713941919343080051622995267143239175540308052811151662074177526999254548442910171151716938534929932276497217057680828338497059913715541535124257047783130630691626418225482793386901747393568957341779539659370027541133915595938957823289954600739754221212341480781687227347694663614105033651759350658510919116819386546275214742533769553728626175770716899392914499306616627398062490847006118504744976598346166802653493501714143257378532645113108630023004618201773106641505444360739474588892419756590450473761924661255979506547290636818074187128613595451652489501172055859579662373088555161329832842019750949934045026252192885857332173643929926779462792180160203810907933013994354443729080284413949533992492606856241505861590709066236051249205428639158843558924958571657646049075581237317400174047441852736553367528719770473344237826731111612416\n", + "288624589342416913867951298768359445086447194960816652847875677700937736446558932446496643304769221434303297161932387365998079423457237745382097671876840758206157764557766850677926502593936025395572500289532436514713637467059362026691319796453741960067236948588017073851186556535240062404685727323203376523585094558739427883838686160103245990534286478351080616105622303324148355053998509096885820342303433877069859864552994434115361656676994119827431083070248514095566261261383252836450965586773803494787137914683559079318740055082267831191877915646579909201479508442424682961563374454695389327228210067303518701317021838233638773092550429485067539107457252351541433798785828998613233254796124981694012237009489953196692333605306987003428286514757065290226217260046009236403546213283010888721478949177784839513180900947523849322511959013094581273636148374257227190903304979002344111719159324746177110322659665684039501899868090052504385771714664347287859853558925584360320407621815866027988708887458160568827899067984985213712483011723181418132472102498410857278317687117849917143315292098151162474634800348094883705473106735057439540946688475653462223224832\n", + "577249178684833827735902597536718890172894389921633305695751355401875472893117864892993286609538442868606594323864774731996158846914475490764195343753681516412315529115533701355853005187872050791145000579064873029427274934118724053382639592907483920134473897176034147702373113070480124809371454646406753047170189117478855767677372320206491981068572956702161232211244606648296710107997018193771640684606867754139719729105988868230723313353988239654862166140497028191132522522766505672901931173547606989574275829367118158637480110164535662383755831293159818402959016884849365923126748909390778654456420134607037402634043676467277546185100858970135078214914504703082867597571657997226466509592249963388024474018979906393384667210613974006856573029514130580452434520092018472807092426566021777442957898355569679026361801895047698645023918026189162547272296748514454381806609958004688223438318649492354220645319331368079003799736180105008771543429328694575719707117851168720640815243631732055977417774916321137655798135969970427424966023446362836264944204996821714556635374235699834286630584196302324949269600696189767410946213470114879081893376951306924446449664\n", + "1154498357369667655471805195073437780345788779843266611391502710803750945786235729785986573219076885737213188647729549463992317693828950981528390687507363032824631058231067402711706010375744101582290001158129746058854549868237448106765279185814967840268947794352068295404746226140960249618742909292813506094340378234957711535354744640412983962137145913404322464422489213296593420215994036387543281369213735508279439458211977736461446626707976479309724332280994056382265045045533011345803862347095213979148551658734236317274960220329071324767511662586319636805918033769698731846253497818781557308912840269214074805268087352934555092370201717940270156429829009406165735195143315994452933019184499926776048948037959812786769334421227948013713146059028261160904869040184036945614184853132043554885915796711139358052723603790095397290047836052378325094544593497028908763613219916009376446876637298984708441290638662736158007599472360210017543086858657389151439414235702337441281630487263464111954835549832642275311596271939940854849932046892725672529888409993643429113270748471399668573261168392604649898539201392379534821892426940229758163786753902613848892899328\n", + "2308996714739335310943610390146875560691577559686533222783005421607501891572471459571973146438153771474426377295459098927984635387657901963056781375014726065649262116462134805423412020751488203164580002316259492117709099736474896213530558371629935680537895588704136590809492452281920499237485818585627012188680756469915423070709489280825967924274291826808644928844978426593186840431988072775086562738427471016558878916423955472922893253415952958619448664561988112764530090091066022691607724694190427958297103317468472634549920440658142649535023325172639273611836067539397463692506995637563114617825680538428149610536174705869110184740403435880540312859658018812331470390286631988905866038368999853552097896075919625573538668842455896027426292118056522321809738080368073891228369706264087109771831593422278716105447207580190794580095672104756650189089186994057817527226439832018752893753274597969416882581277325472316015198944720420035086173717314778302878828471404674882563260974526928223909671099665284550623192543879881709699864093785451345059776819987286858226541496942799337146522336785209299797078402784759069643784853880459516327573507805227697785798656\n", + "4617993429478670621887220780293751121383155119373066445566010843215003783144942919143946292876307542948852754590918197855969270775315803926113562750029452131298524232924269610846824041502976406329160004632518984235418199472949792427061116743259871361075791177408273181618984904563840998474971637171254024377361512939830846141418978561651935848548583653617289857689956853186373680863976145550173125476854942033117757832847910945845786506831905917238897329123976225529060180182132045383215449388380855916594206634936945269099840881316285299070046650345278547223672135078794927385013991275126229235651361076856299221072349411738220369480806871761080625719316037624662940780573263977811732076737999707104195792151839251147077337684911792054852584236113044643619476160736147782456739412528174219543663186844557432210894415160381589160191344209513300378178373988115635054452879664037505787506549195938833765162554650944632030397889440840070172347434629556605757656942809349765126521949053856447819342199330569101246385087759763419399728187570902690119553639974573716453082993885598674293044673570418599594156805569518139287569707760919032655147015610455395571597312\n", + "9235986858957341243774441560587502242766310238746132891132021686430007566289885838287892585752615085897705509181836395711938541550631607852227125500058904262597048465848539221693648083005952812658320009265037968470836398945899584854122233486519742722151582354816546363237969809127681996949943274342508048754723025879661692282837957123303871697097167307234579715379913706372747361727952291100346250953709884066235515665695821891691573013663811834477794658247952451058120360364264090766430898776761711833188413269873890538199681762632570598140093300690557094447344270157589854770027982550252458471302722153712598442144698823476440738961613743522161251438632075249325881561146527955623464153475999414208391584303678502294154675369823584109705168472226089287238952321472295564913478825056348439087326373689114864421788830320763178320382688419026600756356747976231270108905759328075011575013098391877667530325109301889264060795778881680140344694869259113211515313885618699530253043898107712895638684398661138202492770175519526838799456375141805380239107279949147432906165987771197348586089347140837199188313611139036278575139415521838065310294031220910791143194624\n", + "18471973717914682487548883121175004485532620477492265782264043372860015132579771676575785171505230171795411018363672791423877083101263215704454251000117808525194096931697078443387296166011905625316640018530075936941672797891799169708244466973039485444303164709633092726475939618255363993899886548685016097509446051759323384565675914246607743394194334614469159430759827412745494723455904582200692501907419768132471031331391643783383146027327623668955589316495904902116240720728528181532861797553523423666376826539747781076399363525265141196280186601381114188894688540315179709540055965100504916942605444307425196884289397646952881477923227487044322502877264150498651763122293055911246928306951998828416783168607357004588309350739647168219410336944452178574477904642944591129826957650112696878174652747378229728843577660641526356640765376838053201512713495952462540217811518656150023150026196783755335060650218603778528121591557763360280689389738518226423030627771237399060506087796215425791277368797322276404985540351039053677598912750283610760478214559898294865812331975542394697172178694281674398376627222278072557150278831043676130620588062441821582286389248\n", + "36943947435829364975097766242350008971065240954984531564528086745720030265159543353151570343010460343590822036727345582847754166202526431408908502000235617050388193863394156886774592332023811250633280037060151873883345595783598339416488933946078970888606329419266185452951879236510727987799773097370032195018892103518646769131351828493215486788388669228938318861519654825490989446911809164401385003814839536264942062662783287566766292054655247337911178632991809804232481441457056363065723595107046847332753653079495562152798727050530282392560373202762228377789377080630359419080111930201009833885210888614850393768578795293905762955846454974088645005754528300997303526244586111822493856613903997656833566337214714009176618701479294336438820673888904357148955809285889182259653915300225393756349305494756459457687155321283052713281530753676106403025426991904925080435623037312300046300052393567510670121300437207557056243183115526720561378779477036452846061255542474798121012175592430851582554737594644552809971080702078107355197825500567221520956429119796589731624663951084789394344357388563348796753254444556145114300557662087352261241176124883643164572778496\n", + "73887894871658729950195532484700017942130481909969063129056173491440060530319086706303140686020920687181644073454691165695508332405052862817817004000471234100776387726788313773549184664047622501266560074120303747766691191567196678832977867892157941777212658838532370905903758473021455975599546194740064390037784207037293538262703656986430973576777338457876637723039309650981978893823618328802770007629679072529884125325566575133532584109310494675822357265983619608464962882914112726131447190214093694665507306158991124305597454101060564785120746405524456755578754161260718838160223860402019667770421777229700787537157590587811525911692909948177290011509056601994607052489172223644987713227807995313667132674429428018353237402958588672877641347777808714297911618571778364519307830600450787512698610989512918915374310642566105426563061507352212806050853983809850160871246074624600092600104787135021340242600874415114112486366231053441122757558954072905692122511084949596242024351184861703165109475189289105619942161404156214710395651001134443041912858239593179463249327902169578788688714777126697593506508889112290228601115324174704522482352249767286329145556992\n", + "147775789743317459900391064969400035884260963819938126258112346982880121060638173412606281372041841374363288146909382331391016664810105725635634008000942468201552775453576627547098369328095245002533120148240607495533382383134393357665955735784315883554425317677064741811807516946042911951199092389480128780075568414074587076525407313972861947153554676915753275446078619301963957787647236657605540015259358145059768250651133150267065168218620989351644714531967239216929925765828225452262894380428187389331014612317982248611194908202121129570241492811048913511157508322521437676320447720804039335540843554459401575074315181175623051823385819896354580023018113203989214104978344447289975426455615990627334265348858856036706474805917177345755282695555617428595823237143556729038615661200901575025397221979025837830748621285132210853126123014704425612101707967619700321742492149249200185200209574270042680485201748830228224972732462106882245515117908145811384245022169899192484048702369723406330218950378578211239884322808312429420791302002268886083825716479186358926498655804339157577377429554253395187013017778224580457202230648349409044964704499534572658291113984\n", + "295551579486634919800782129938800071768521927639876252516224693965760242121276346825212562744083682748726576293818764662782033329620211451271268016001884936403105550907153255094196738656190490005066240296481214991066764766268786715331911471568631767108850635354129483623615033892085823902398184778960257560151136828149174153050814627945723894307109353831506550892157238603927915575294473315211080030518716290119536501302266300534130336437241978703289429063934478433859851531656450904525788760856374778662029224635964497222389816404242259140482985622097827022315016645042875352640895441608078671081687108918803150148630362351246103646771639792709160046036226407978428209956688894579950852911231981254668530697717712073412949611834354691510565391111234857191646474287113458077231322401803150050794443958051675661497242570264421706252246029408851224203415935239400643484984298498400370400419148540085360970403497660456449945464924213764491030235816291622768490044339798384968097404739446812660437900757156422479768645616624858841582604004537772167651432958372717852997311608678315154754859108506790374026035556449160914404461296698818089929408999069145316582227968\n", + "591103158973269839601564259877600143537043855279752505032449387931520484242552693650425125488167365497453152587637529325564066659240422902542536032003769872806211101814306510188393477312380980010132480592962429982133529532537573430663822943137263534217701270708258967247230067784171647804796369557920515120302273656298348306101629255891447788614218707663013101784314477207855831150588946630422160061037432580239073002604532601068260672874483957406578858127868956867719703063312901809051577521712749557324058449271928994444779632808484518280965971244195654044630033290085750705281790883216157342163374217837606300297260724702492207293543279585418320092072452815956856419913377789159901705822463962509337061395435424146825899223668709383021130782222469714383292948574226916154462644803606300101588887916103351322994485140528843412504492058817702448406831870478801286969968596996800740800838297080170721940806995320912899890929848427528982060471632583245536980088679596769936194809478893625320875801514312844959537291233249717683165208009075544335302865916745435705994623217356630309509718217013580748052071112898321828808922593397636179858817998138290633164455936\n", + "1182206317946539679203128519755200287074087710559505010064898775863040968485105387300850250976334730994906305175275058651128133318480845805085072064007539745612422203628613020376786954624761960020264961185924859964267059065075146861327645886274527068435402541416517934494460135568343295609592739115841030240604547312596696612203258511782895577228437415326026203568628954415711662301177893260844320122074865160478146005209065202136521345748967914813157716255737913735439406126625803618103155043425499114648116898543857988889559265616969036561931942488391308089260066580171501410563581766432314684326748435675212600594521449404984414587086559170836640184144905631913712839826755578319803411644927925018674122790870848293651798447337418766042261564444939428766585897148453832308925289607212600203177775832206702645988970281057686825008984117635404896813663740957602573939937193993601481601676594160341443881613990641825799781859696855057964120943265166491073960177359193539872389618957787250641751603028625689919074582466499435366330416018151088670605731833490871411989246434713260619019436434027161496104142225796643657617845186795272359717635996276581266328911872\n", + "2364412635893079358406257039510400574148175421119010020129797551726081936970210774601700501952669461989812610350550117302256266636961691610170144128015079491224844407257226040753573909249523920040529922371849719928534118130150293722655291772549054136870805082833035868988920271136686591219185478231682060481209094625193393224406517023565791154456874830652052407137257908831423324602355786521688640244149730320956292010418130404273042691497935829626315432511475827470878812253251607236206310086850998229296233797087715977779118531233938073123863884976782616178520133160343002821127163532864629368653496871350425201189042898809968829174173118341673280368289811263827425679653511156639606823289855850037348245581741696587303596894674837532084523128889878857533171794296907664617850579214425200406355551664413405291977940562115373650017968235270809793627327481915205147879874387987202963203353188320682887763227981283651599563719393710115928241886530332982147920354718387079744779237915574501283503206057251379838149164932998870732660832036302177341211463666981742823978492869426521238038872868054322992208284451593287315235690373590544719435271992553162532657823744\n", + "4728825271786158716812514079020801148296350842238020040259595103452163873940421549203401003905338923979625220701100234604512533273923383220340288256030158982449688814514452081507147818499047840081059844743699439857068236260300587445310583545098108273741610165666071737977840542273373182438370956463364120962418189250386786448813034047131582308913749661304104814274515817662846649204711573043377280488299460641912584020836260808546085382995871659252630865022951654941757624506503214472412620173701996458592467594175431955558237062467876146247727769953565232357040266320686005642254327065729258737306993742700850402378085797619937658348346236683346560736579622527654851359307022313279213646579711700074696491163483393174607193789349675064169046257779757715066343588593815329235701158428850400812711103328826810583955881124230747300035936470541619587254654963830410295759748775974405926406706376641365775526455962567303199127438787420231856483773060665964295840709436774159489558475831149002567006412114502759676298329865997741465321664072604354682422927333963485647956985738853042476077745736108645984416568903186574630471380747181089438870543985106325065315647488\n", + "9457650543572317433625028158041602296592701684476040080519190206904327747880843098406802007810677847959250441402200469209025066547846766440680576512060317964899377629028904163014295636998095680162119689487398879714136472520601174890621167090196216547483220331332143475955681084546746364876741912926728241924836378500773572897626068094263164617827499322608209628549031635325693298409423146086754560976598921283825168041672521617092170765991743318505261730045903309883515249013006428944825240347403992917184935188350863911116474124935752292495455539907130464714080532641372011284508654131458517474613987485401700804756171595239875316696692473366693121473159245055309702718614044626558427293159423400149392982326966786349214387578699350128338092515559515430132687177187630658471402316857700801625422206657653621167911762248461494600071872941083239174509309927660820591519497551948811852813412753282731551052911925134606398254877574840463712967546121331928591681418873548318979116951662298005134012824229005519352596659731995482930643328145208709364845854667926971295913971477706084952155491472217291968833137806373149260942761494362178877741087970212650130631294976\n", + "18915301087144634867250056316083204593185403368952080161038380413808655495761686196813604015621355695918500882804400938418050133095693532881361153024120635929798755258057808326028591273996191360324239378974797759428272945041202349781242334180392433094966440662664286951911362169093492729753483825853456483849672757001547145795252136188526329235654998645216419257098063270651386596818846292173509121953197842567650336083345043234184341531983486637010523460091806619767030498026012857889650480694807985834369870376701727822232948249871504584990911079814260929428161065282744022569017308262917034949227974970803401609512343190479750633393384946733386242946318490110619405437228089253116854586318846800298785964653933572698428775157398700256676185031119030860265374354375261316942804633715401603250844413315307242335823524496922989200143745882166478349018619855321641183038995103897623705626825506565463102105823850269212796509755149680927425935092242663857183362837747096637958233903324596010268025648458011038705193319463990965861286656290417418729691709335853942591827942955412169904310982944434583937666275612746298521885522988724357755482175940425300261262589952\n", + "37830602174289269734500112632166409186370806737904160322076760827617310991523372393627208031242711391837001765608801876836100266191387065762722306048241271859597510516115616652057182547992382720648478757949595518856545890082404699562484668360784866189932881325328573903822724338186985459506967651706912967699345514003094291590504272377052658471309997290432838514196126541302773193637692584347018243906395685135300672166690086468368683063966973274021046920183613239534060996052025715779300961389615971668739740753403455644465896499743009169981822159628521858856322130565488045138034616525834069898455949941606803219024686380959501266786769893466772485892636980221238810874456178506233709172637693600597571929307867145396857550314797400513352370062238061720530748708750522633885609267430803206501688826630614484671647048993845978400287491764332956698037239710643282366077990207795247411253651013130926204211647700538425593019510299361854851870184485327714366725675494193275916467806649192020536051296916022077410386638927981931722573312580834837459383418671707885183655885910824339808621965888869167875332551225492597043771045977448715510964351880850600522525179904\n", + "75661204348578539469000225264332818372741613475808320644153521655234621983046744787254416062485422783674003531217603753672200532382774131525444612096482543719195021032231233304114365095984765441296957515899191037713091780164809399124969336721569732379865762650657147807645448676373970919013935303413825935398691028006188583181008544754105316942619994580865677028392253082605546387275385168694036487812791370270601344333380172936737366127933946548042093840367226479068121992104051431558601922779231943337479481506806911288931792999486018339963644319257043717712644261130976090276069233051668139796911899883213606438049372761919002533573539786933544971785273960442477621748912357012467418345275387201195143858615734290793715100629594801026704740124476123441061497417501045267771218534861606413003377653261228969343294097987691956800574983528665913396074479421286564732155980415590494822507302026261852408423295401076851186039020598723709703740368970655428733451350988386551832935613298384041072102593832044154820773277855963863445146625161669674918766837343415770367311771821648679617243931777738335750665102450985194087542091954897431021928703761701201045050359808\n", + "151322408697157078938000450528665636745483226951616641288307043310469243966093489574508832124970845567348007062435207507344401064765548263050889224192965087438390042064462466608228730191969530882593915031798382075426183560329618798249938673443139464759731525301314295615290897352747941838027870606827651870797382056012377166362017089508210633885239989161731354056784506165211092774550770337388072975625582740541202688666760345873474732255867893096084187680734452958136243984208102863117203845558463886674958963013613822577863585998972036679927288638514087435425288522261952180552138466103336279593823799766427212876098745523838005067147079573867089943570547920884955243497824714024934836690550774402390287717231468581587430201259189602053409480248952246882122994835002090535542437069723212826006755306522457938686588195975383913601149967057331826792148958842573129464311960831180989645014604052523704816846590802153702372078041197447419407480737941310857466902701976773103665871226596768082144205187664088309641546555711927726890293250323339349837533674686831540734623543643297359234487863555476671501330204901970388175084183909794862043857407523402402090100719616\n", + "302644817394314157876000901057331273490966453903233282576614086620938487932186979149017664249941691134696014124870415014688802129531096526101778448385930174876780084128924933216457460383939061765187830063596764150852367120659237596499877346886278929519463050602628591230581794705495883676055741213655303741594764112024754332724034179016421267770479978323462708113569012330422185549101540674776145951251165481082405377333520691746949464511735786192168375361468905916272487968416205726234407691116927773349917926027227645155727171997944073359854577277028174870850577044523904361104276932206672559187647599532854425752197491047676010134294159147734179887141095841769910486995649428049869673381101548804780575434462937163174860402518379204106818960497904493764245989670004181071084874139446425652013510613044915877373176391950767827202299934114663653584297917685146258928623921662361979290029208105047409633693181604307404744156082394894838814961475882621714933805403953546207331742453193536164288410375328176619283093111423855453780586500646678699675067349373663081469247087286594718468975727110953343002660409803940776350168367819589724087714815046804804180201439232\n", + "605289634788628315752001802114662546981932907806466565153228173241876975864373958298035328499883382269392028249740830029377604259062193052203556896771860349753560168257849866432914920767878123530375660127193528301704734241318475192999754693772557859038926101205257182461163589410991767352111482427310607483189528224049508665448068358032842535540959956646925416227138024660844371098203081349552291902502330962164810754667041383493898929023471572384336750722937811832544975936832411452468815382233855546699835852054455290311454343995888146719709154554056349741701154089047808722208553864413345118375295199065708851504394982095352020268588318295468359774282191683539820973991298856099739346762203097609561150868925874326349720805036758408213637920995808987528491979340008362142169748278892851304027021226089831754746352783901535654404599868229327307168595835370292517857247843324723958580058416210094819267386363208614809488312164789789677629922951765243429867610807907092414663484906387072328576820750656353238566186222847710907561173001293357399350134698747326162938494174573189436937951454221906686005320819607881552700336735639179448175429630093609608360402878464\n", + "1210579269577256631504003604229325093963865815612933130306456346483753951728747916596070656999766764538784056499481660058755208518124386104407113793543720699507120336515699732865829841535756247060751320254387056603409468482636950385999509387545115718077852202410514364922327178821983534704222964854621214966379056448099017330896136716065685071081919913293850832454276049321688742196406162699104583805004661924329621509334082766987797858046943144768673501445875623665089951873664822904937630764467711093399671704108910580622908687991776293439418309108112699483402308178095617444417107728826690236750590398131417703008789964190704040537176636590936719548564383367079641947982597712199478693524406195219122301737851748652699441610073516816427275841991617975056983958680016724284339496557785702608054042452179663509492705567803071308809199736458654614337191670740585035714495686649447917160116832420189638534772726417229618976624329579579355259845903530486859735221615814184829326969812774144657153641501312706477132372445695421815122346002586714798700269397494652325876988349146378873875902908443813372010641639215763105400673471278358896350859260187219216720805756928\n", + "2421158539154513263008007208458650187927731631225866260612912692967507903457495833192141313999533529077568112998963320117510417036248772208814227587087441399014240673031399465731659683071512494121502640508774113206818936965273900771999018775090231436155704404821028729844654357643967069408445929709242429932758112896198034661792273432131370142163839826587701664908552098643377484392812325398209167610009323848659243018668165533975595716093886289537347002891751247330179903747329645809875261528935422186799343408217821161245817375983552586878836618216225398966804616356191234888834215457653380473501180796262835406017579928381408081074353273181873439097128766734159283895965195424398957387048812390438244603475703497305398883220147033632854551683983235950113967917360033448568678993115571405216108084904359327018985411135606142617618399472917309228674383341481170071428991373298895834320233664840379277069545452834459237953248659159158710519691807060973719470443231628369658653939625548289314307283002625412954264744891390843630244692005173429597400538794989304651753976698292757747751805816887626744021283278431526210801346942556717792701718520374438433441611513856\n", + "4842317078309026526016014416917300375855463262451732521225825385935015806914991666384282627999067058155136225997926640235020834072497544417628455174174882798028481346062798931463319366143024988243005281017548226413637873930547801543998037550180462872311408809642057459689308715287934138816891859418484859865516225792396069323584546864262740284327679653175403329817104197286754968785624650796418335220018647697318486037336331067951191432187772579074694005783502494660359807494659291619750523057870844373598686816435642322491634751967105173757673236432450797933609232712382469777668430915306760947002361592525670812035159856762816162148706546363746878194257533468318567791930390848797914774097624780876489206951406994610797766440294067265709103367966471900227935834720066897137357986231142810432216169808718654037970822271212285235236798945834618457348766682962340142857982746597791668640467329680758554139090905668918475906497318318317421039383614121947438940886463256739317307879251096578628614566005250825908529489782781687260489384010346859194801077589978609303507953396585515495503611633775253488042566556863052421602693885113435585403437040748876866883223027712\n", + "9684634156618053052032028833834600751710926524903465042451650771870031613829983332768565255998134116310272451995853280470041668144995088835256910348349765596056962692125597862926638732286049976486010562035096452827275747861095603087996075100360925744622817619284114919378617430575868277633783718836969719731032451584792138647169093728525480568655359306350806659634208394573509937571249301592836670440037295394636972074672662135902382864375545158149388011567004989320719614989318583239501046115741688747197373632871284644983269503934210347515346472864901595867218465424764939555336861830613521894004723185051341624070319713525632324297413092727493756388515066936637135583860781697595829548195249561752978413902813989221595532880588134531418206735932943800455871669440133794274715972462285620864432339617437308075941644542424570470473597891669236914697533365924680285715965493195583337280934659361517108278181811337836951812994636636634842078767228243894877881772926513478634615758502193157257229132010501651817058979565563374520978768020693718389602155179957218607015906793171030991007223267550506976085133113726104843205387770226871170806874081497753733766446055424\n", + "19369268313236106104064057667669201503421853049806930084903301543740063227659966665537130511996268232620544903991706560940083336289990177670513820696699531192113925384251195725853277464572099952972021124070192905654551495722191206175992150200721851489245635238568229838757234861151736555267567437673939439462064903169584277294338187457050961137310718612701613319268416789147019875142498603185673340880074590789273944149345324271804765728751090316298776023134009978641439229978637166479002092231483377494394747265742569289966539007868420695030692945729803191734436930849529879110673723661227043788009446370102683248140639427051264648594826185454987512777030133873274271167721563395191659096390499123505956827805627978443191065761176269062836413471865887600911743338880267588549431944924571241728864679234874616151883289084849140940947195783338473829395066731849360571431930986391166674561869318723034216556363622675673903625989273273269684157534456487789755763545853026957269231517004386314514458264021003303634117959131126749041957536041387436779204310359914437214031813586342061982014446535101013952170266227452209686410775540453742341613748162995507467532892110848\n", + "38738536626472212208128115335338403006843706099613860169806603087480126455319933331074261023992536465241089807983413121880166672579980355341027641393399062384227850768502391451706554929144199905944042248140385811309102991444382412351984300401443702978491270477136459677514469722303473110535134875347878878924129806339168554588676374914101922274621437225403226638536833578294039750284997206371346681760149181578547888298690648543609531457502180632597552046268019957282878459957274332958004184462966754988789494531485138579933078015736841390061385891459606383468873861699059758221347447322454087576018892740205366496281278854102529297189652370909975025554060267746548542335443126790383318192780998247011913655611255956886382131522352538125672826943731775201823486677760535177098863889849142483457729358469749232303766578169698281881894391566676947658790133463698721142863861972782333349123738637446068433112727245351347807251978546546539368315068912975579511527091706053914538463034008772629028916528042006607268235918262253498083915072082774873558408620719828874428063627172684123964028893070202027904340532454904419372821551080907484683227496325991014935065784221696\n", + "77477073252944424416256230670676806013687412199227720339613206174960252910639866662148522047985072930482179615966826243760333345159960710682055282786798124768455701537004782903413109858288399811888084496280771622618205982888764824703968600802887405956982540954272919355028939444606946221070269750695757757848259612678337109177352749828203844549242874450806453277073667156588079500569994412742693363520298363157095776597381297087219062915004361265195104092536039914565756919914548665916008368925933509977578989062970277159866156031473682780122771782919212766937747723398119516442694894644908175152037785480410732992562557708205058594379304741819950051108120535493097084670886253580766636385561996494023827311222511913772764263044705076251345653887463550403646973355521070354197727779698284966915458716939498464607533156339396563763788783133353895317580266927397442285727723945564666698247477274892136866225454490702695614503957093093078736630137825951159023054183412107829076926068017545258057833056084013214536471836524506996167830144165549747116817241439657748856127254345368247928057786140404055808681064909808838745643102161814969366454992651982029870131568443392\n", + "154954146505888848832512461341353612027374824398455440679226412349920505821279733324297044095970145860964359231933652487520666690319921421364110565573596249536911403074009565806826219716576799623776168992561543245236411965777529649407937201605774811913965081908545838710057878889213892442140539501391515515696519225356674218354705499656407689098485748901612906554147334313176159001139988825485386727040596726314191553194762594174438125830008722530390208185072079829131513839829097331832016737851867019955157978125940554319732312062947365560245543565838425533875495446796239032885389789289816350304075570960821465985125115416410117188758609483639900102216241070986194169341772507161533272771123992988047654622445023827545528526089410152502691307774927100807293946711042140708395455559396569933830917433878996929215066312678793127527577566266707790635160533854794884571455447891129333396494954549784273732450908981405391229007914186186157473260275651902318046108366824215658153852136035090516115666112168026429072943673049013992335660288331099494233634482879315497712254508690736495856115572280808111617362129819617677491286204323629938732909985303964059740263136886784\n", + "309908293011777697665024922682707224054749648796910881358452824699841011642559466648594088191940291721928718463867304975041333380639842842728221131147192499073822806148019131613652439433153599247552337985123086490472823931555059298815874403211549623827930163817091677420115757778427784884281079002783031031393038450713348436709410999312815378196971497803225813108294668626352318002279977650970773454081193452628383106389525188348876251660017445060780416370144159658263027679658194663664033475703734039910315956251881108639464624125894731120491087131676851067750990893592478065770779578579632700608151141921642931970250230832820234377517218967279800204432482141972388338683545014323066545542247985976095309244890047655091057052178820305005382615549854201614587893422084281416790911118793139867661834867757993858430132625357586255055155132533415581270321067709589769142910895782258666792989909099568547464901817962810782458015828372372314946520551303804636092216733648431316307704272070181032231332224336052858145887346098027984671320576662198988467268965758630995424509017381472991712231144561616223234724259639235354982572408647259877465819970607928119480526273773568\n", + "619816586023555395330049845365414448109499297593821762716905649399682023285118933297188176383880583443857436927734609950082666761279685685456442262294384998147645612296038263227304878866307198495104675970246172980945647863110118597631748806423099247655860327634183354840231515556855569768562158005566062062786076901426696873418821998625630756393942995606451626216589337252704636004559955301941546908162386905256766212779050376697752503320034890121560832740288319316526055359316389327328066951407468079820631912503762217278929248251789462240982174263353702135501981787184956131541559157159265401216302283843285863940500461665640468755034437934559600408864964283944776677367090028646133091084495971952190618489780095310182114104357640610010765231099708403229175786844168562833581822237586279735323669735515987716860265250715172510110310265066831162540642135419179538285821791564517333585979818199137094929803635925621564916031656744744629893041102607609272184433467296862632615408544140362064462664448672105716291774692196055969342641153324397976934537931517261990849018034762945983424462289123232446469448519278470709965144817294519754931639941215856238961052547547136\n", + "1239633172047110790660099690730828896218998595187643525433811298799364046570237866594376352767761166887714873855469219900165333522559371370912884524588769996295291224592076526454609757732614396990209351940492345961891295726220237195263497612846198495311720655268366709680463031113711139537124316011132124125572153802853393746837643997251261512787885991212903252433178674505409272009119910603883093816324773810513532425558100753395505006640069780243121665480576638633052110718632778654656133902814936159641263825007524434557858496503578924481964348526707404271003963574369912263083118314318530802432604567686571727881000923331280937510068875869119200817729928567889553354734180057292266182168991943904381236979560190620364228208715281220021530462199416806458351573688337125667163644475172559470647339471031975433720530501430345020220620530133662325081284270838359076571643583129034667171959636398274189859607271851243129832063313489489259786082205215218544368866934593725265230817088280724128925328897344211432583549384392111938685282306648795953869075863034523981698036069525891966848924578246464892938897038556941419930289634589039509863279882431712477922105095094272\n", + "2479266344094221581320199381461657792437997190375287050867622597598728093140475733188752705535522333775429747710938439800330667045118742741825769049177539992590582449184153052909219515465228793980418703880984691923782591452440474390526995225692396990623441310536733419360926062227422279074248632022264248251144307605706787493675287994502523025575771982425806504866357349010818544018239821207766187632649547621027064851116201506791010013280139560486243330961153277266104221437265557309312267805629872319282527650015048869115716993007157848963928697053414808542007927148739824526166236628637061604865209135373143455762001846662561875020137751738238401635459857135779106709468360114584532364337983887808762473959120381240728456417430562440043060924398833612916703147376674251334327288950345118941294678942063950867441061002860690040441241060267324650162568541676718153143287166258069334343919272796548379719214543702486259664126626978978519572164410430437088737733869187450530461634176561448257850657794688422865167098768784223877370564613297591907738151726069047963396072139051783933697849156492929785877794077113882839860579269178079019726559764863424955844210190188544\n", + "4958532688188443162640398762923315584875994380750574101735245195197456186280951466377505411071044667550859495421876879600661334090237485483651538098355079985181164898368306105818439030930457587960837407761969383847565182904880948781053990451384793981246882621073466838721852124454844558148497264044528496502288615211413574987350575989005046051151543964851613009732714698021637088036479642415532375265299095242054129702232403013582020026560279120972486661922306554532208442874531114618624535611259744638565055300030097738231433986014315697927857394106829617084015854297479649052332473257274123209730418270746286911524003693325123750040275503476476803270919714271558213418936720229169064728675967775617524947918240762481456912834861124880086121848797667225833406294753348502668654577900690237882589357884127901734882122005721380080882482120534649300325137083353436306286574332516138668687838545593096759438429087404972519328253253957957039144328820860874177475467738374901060923268353122896515701315589376845730334197537568447754741129226595183815476303452138095926792144278103567867395698312985859571755588154227765679721158538356158039453119529726849911688420380377088\n", + "9917065376376886325280797525846631169751988761501148203470490390394912372561902932755010822142089335101718990843753759201322668180474970967303076196710159970362329796736612211636878061860915175921674815523938767695130365809761897562107980902769587962493765242146933677443704248909689116296994528089056993004577230422827149974701151978010092102303087929703226019465429396043274176072959284831064750530598190484108259404464806027164040053120558241944973323844613109064416885749062229237249071222519489277130110600060195476462867972028631395855714788213659234168031708594959298104664946514548246419460836541492573823048007386650247500080551006952953606541839428543116426837873440458338129457351935551235049895836481524962913825669722249760172243697595334451666812589506697005337309155801380475765178715768255803469764244011442760161764964241069298600650274166706872612573148665032277337375677091186193518876858174809945038656506507915914078288657641721748354950935476749802121846536706245793031402631178753691460668395075136895509482258453190367630952606904276191853584288556207135734791396625971719143511176308455531359442317076712316078906239059453699823376840760754176\n", + "19834130752753772650561595051693262339503977523002296406940980780789824745123805865510021644284178670203437981687507518402645336360949941934606152393420319940724659593473224423273756123721830351843349631047877535390260731619523795124215961805539175924987530484293867354887408497819378232593989056178113986009154460845654299949402303956020184204606175859406452038930858792086548352145918569662129501061196380968216518808929612054328080106241116483889946647689226218128833771498124458474498142445038978554260221200120390952925735944057262791711429576427318468336063417189918596209329893029096492838921673082985147646096014773300495000161102013905907213083678857086232853675746880916676258914703871102470099791672963049925827651339444499520344487395190668903333625179013394010674618311602760951530357431536511606939528488022885520323529928482138597201300548333413745225146297330064554674751354182372387037753716349619890077313013015831828156577315283443496709901870953499604243693073412491586062805262357507382921336790150273791018964516906380735261905213808552383707168577112414271469582793251943438287022352616911062718884634153424632157812478118907399646753681521508352\n", + "39668261505507545301123190103386524679007955046004592813881961561579649490247611731020043288568357340406875963375015036805290672721899883869212304786840639881449319186946448846547512247443660703686699262095755070780521463239047590248431923611078351849975060968587734709774816995638756465187978112356227972018308921691308599898804607912040368409212351718812904077861717584173096704291837139324259002122392761936433037617859224108656160212482232967779893295378452436257667542996248916948996284890077957108520442400240781905851471888114525583422859152854636936672126834379837192418659786058192985677843346165970295292192029546600990000322204027811814426167357714172465707351493761833352517829407742204940199583345926099851655302678888999040688974790381337806667250358026788021349236623205521903060714863073023213879056976045771040647059856964277194402601096666827490450292594660129109349502708364744774075507432699239780154626026031663656313154630566886993419803741906999208487386146824983172125610524715014765842673580300547582037929033812761470523810427617104767414337154224828542939165586503886876574044705233822125437769268306849264315624956237814799293507363043016704\n", + "79336523011015090602246380206773049358015910092009185627763923123159298980495223462040086577136714680813751926750030073610581345443799767738424609573681279762898638373892897693095024494887321407373398524191510141561042926478095180496863847222156703699950121937175469419549633991277512930375956224712455944036617843382617199797609215824080736818424703437625808155723435168346193408583674278648518004244785523872866075235718448217312320424964465935559786590756904872515335085992497833897992569780155914217040884800481563811702943776229051166845718305709273873344253668759674384837319572116385971355686692331940590584384059093201980000644408055623628852334715428344931414702987523666705035658815484409880399166691852199703310605357777998081377949580762675613334500716053576042698473246411043806121429726146046427758113952091542081294119713928554388805202193333654980900585189320258218699005416729489548151014865398479560309252052063327312626309261133773986839607483813998416974772293649966344251221049430029531685347160601095164075858067625522941047620855234209534828674308449657085878331173007773753148089410467644250875538536613698528631249912475629598587014726086033408\n", + "158673046022030181204492760413546098716031820184018371255527846246318597960990446924080173154273429361627503853500060147221162690887599535476849219147362559525797276747785795386190048989774642814746797048383020283122085852956190360993727694444313407399900243874350938839099267982555025860751912449424911888073235686765234399595218431648161473636849406875251616311446870336692386817167348557297036008489571047745732150471436896434624640849928931871119573181513809745030670171984995667795985139560311828434081769600963127623405887552458102333691436611418547746688507337519348769674639144232771942711373384663881181168768118186403960001288816111247257704669430856689862829405975047333410071317630968819760798333383704399406621210715555996162755899161525351226669001432107152085396946492822087612242859452292092855516227904183084162588239427857108777610404386667309961801170378640516437398010833458979096302029730796959120618504104126654625252618522267547973679214967627996833949544587299932688502442098860059063370694321202190328151716135251045882095241710468419069657348616899314171756662346015547506296178820935288501751077073227397057262499824951259197174029452172066816\n", + "317346092044060362408985520827092197432063640368036742511055692492637195921980893848160346308546858723255007707000120294442325381775199070953698438294725119051594553495571590772380097979549285629493594096766040566244171705912380721987455388888626814799800487748701877678198535965110051721503824898849823776146471373530468799190436863296322947273698813750503232622893740673384773634334697114594072016979142095491464300942873792869249281699857863742239146363027619490061340343969991335591970279120623656868163539201926255246811775104916204667382873222837095493377014675038697539349278288465543885422746769327762362337536236372807920002577632222494515409338861713379725658811950094666820142635261937639521596666767408798813242421431111992325511798323050702453338002864214304170793892985644175224485718904584185711032455808366168325176478855714217555220808773334619923602340757281032874796021666917958192604059461593918241237008208253309250505237044535095947358429935255993667899089174599865377004884197720118126741388642404380656303432270502091764190483420936838139314697233798628343513324692031095012592357641870577003502154146454794114524999649902518394348058904344133632\n", + "634692184088120724817971041654184394864127280736073485022111384985274391843961787696320692617093717446510015414000240588884650763550398141907396876589450238103189106991143181544760195959098571258987188193532081132488343411824761443974910777777253629599600975497403755356397071930220103443007649797699647552292942747060937598380873726592645894547397627501006465245787481346769547268669394229188144033958284190982928601885747585738498563399715727484478292726055238980122680687939982671183940558241247313736327078403852510493623550209832409334765746445674190986754029350077395078698556576931087770845493538655524724675072472745615840005155264444989030818677723426759451317623900189333640285270523875279043193333534817597626484842862223984651023596646101404906676005728428608341587785971288350448971437809168371422064911616732336650352957711428435110441617546669239847204681514562065749592043333835916385208118923187836482474016416506618501010474089070191894716859870511987335798178349199730754009768395440236253482777284808761312606864541004183528380966841873676278629394467597256687026649384062190025184715283741154007004308292909588229049999299805036788696117808688267264\n", + "1269384368176241449635942083308368789728254561472146970044222769970548783687923575392641385234187434893020030828000481177769301527100796283814793753178900476206378213982286363089520391918197142517974376387064162264976686823649522887949821555554507259199201950994807510712794143860440206886015299595399295104585885494121875196761747453185291789094795255002012930491574962693539094537338788458376288067916568381965857203771495171476997126799431454968956585452110477960245361375879965342367881116482494627472654156807705020987247100419664818669531492891348381973508058700154790157397113153862175541690987077311049449350144945491231680010310528889978061637355446853518902635247800378667280570541047750558086386667069635195252969685724447969302047193292202809813352011456857216683175571942576700897942875618336742844129823233464673300705915422856870220883235093338479694409363029124131499184086667671832770416237846375672964948032833013237002020948178140383789433719741023974671596356698399461508019536790880472506965554569617522625213729082008367056761933683747352557258788935194513374053298768124380050369430567482308014008616585819176458099998599610073577392235617376534528\n", + "2538768736352482899271884166616737579456509122944293940088445539941097567375847150785282770468374869786040061656000962355538603054201592567629587506357800952412756427964572726179040783836394285035948752774128324529953373647299045775899643111109014518398403901989615021425588287720880413772030599190798590209171770988243750393523494906370583578189590510004025860983149925387078189074677576916752576135833136763931714407542990342953994253598862909937913170904220955920490722751759930684735762232964989254945308313615410041974494200839329637339062985782696763947016117400309580314794226307724351083381974154622098898700289890982463360020621057779956123274710893707037805270495600757334561141082095501116172773334139270390505939371448895938604094386584405619626704022913714433366351143885153401795885751236673485688259646466929346601411830845713740441766470186676959388818726058248262998368173335343665540832475692751345929896065666026474004041896356280767578867439482047949343192713396798923016039073581760945013931109139235045250427458164016734113523867367494705114517577870389026748106597536248760100738861134964616028017233171638352916199997199220147154784471234753069056\n", + "5077537472704965798543768333233475158913018245888587880176891079882195134751694301570565540936749739572080123312001924711077206108403185135259175012715601904825512855929145452358081567672788570071897505548256649059906747294598091551799286222218029036796807803979230042851176575441760827544061198381597180418343541976487500787046989812741167156379181020008051721966299850774156378149355153833505152271666273527863428815085980685907988507197725819875826341808441911840981445503519861369471524465929978509890616627230820083948988401678659274678125971565393527894032234800619160629588452615448702166763948309244197797400579781964926720041242115559912246549421787414075610540991201514669122282164191002232345546668278540781011878742897791877208188773168811239253408045827428866732702287770306803591771502473346971376519292933858693202823661691427480883532940373353918777637452116496525996736346670687331081664951385502691859792131332052948008083792712561535157734878964095898686385426793597846032078147163521890027862218278470090500854916328033468227047734734989410229035155740778053496213195072497520201477722269929232056034466343276705832399994398440294309568942469506138112\n", + "10155074945409931597087536666466950317826036491777175760353782159764390269503388603141131081873499479144160246624003849422154412216806370270518350025431203809651025711858290904716163135345577140143795011096513298119813494589196183103598572444436058073593615607958460085702353150883521655088122396763194360836687083952975001574093979625482334312758362040016103443932599701548312756298710307667010304543332547055726857630171961371815977014395451639751652683616883823681962891007039722738943048931859957019781233254461640167897976803357318549356251943130787055788064469601238321259176905230897404333527896618488395594801159563929853440082484231119824493098843574828151221081982403029338244564328382004464691093336557081562023757485795583754416377546337622478506816091654857733465404575540613607183543004946693942753038585867717386405647323382854961767065880746707837555274904232993051993472693341374662163329902771005383719584262664105896016167585425123070315469757928191797372770853587195692064156294327043780055724436556940181001709832656066936454095469469978820458070311481556106992426390144995040402955444539858464112068932686553411664799988796880588619137884939012276224\n", + "20310149890819863194175073332933900635652072983554351520707564319528780539006777206282262163746998958288320493248007698844308824433612740541036700050862407619302051423716581809432326270691154280287590022193026596239626989178392366207197144888872116147187231215916920171404706301767043310176244793526388721673374167905950003148187959250964668625516724080032206887865199403096625512597420615334020609086665094111453715260343922743631954028790903279503305367233767647363925782014079445477886097863719914039562466508923280335795953606714637098712503886261574111576128939202476642518353810461794808667055793236976791189602319127859706880164968462239648986197687149656302442163964806058676489128656764008929382186673114163124047514971591167508832755092675244957013632183309715466930809151081227214367086009893387885506077171735434772811294646765709923534131761493415675110549808465986103986945386682749324326659805542010767439168525328211792032335170850246140630939515856383594745541707174391384128312588654087560111448873113880362003419665312133872908190938939957640916140622963112213984852780289990080805910889079716928224137865373106823329599977593761177238275769878024552448\n", + "40620299781639726388350146665867801271304145967108703041415128639057561078013554412564524327493997916576640986496015397688617648867225481082073400101724815238604102847433163618864652541382308560575180044386053192479253978356784732414394289777744232294374462431833840342809412603534086620352489587052777443346748335811900006296375918501929337251033448160064413775730398806193251025194841230668041218173330188222907430520687845487263908057581806559006610734467535294727851564028158890955772195727439828079124933017846560671591907213429274197425007772523148223152257878404953285036707620923589617334111586473953582379204638255719413760329936924479297972395374299312604884327929612117352978257313528017858764373346228326248095029943182335017665510185350489914027264366619430933861618302162454428734172019786775771012154343470869545622589293531419847068263522986831350221099616931972207973890773365498648653319611084021534878337050656423584064670341700492281261879031712767189491083414348782768256625177308175120222897746227760724006839330624267745816381877879915281832281245926224427969705560579980161611821778159433856448275730746213646659199955187522354476551539756049104896\n", + "81240599563279452776700293331735602542608291934217406082830257278115122156027108825129048654987995833153281972992030795377235297734450962164146800203449630477208205694866327237729305082764617121150360088772106384958507956713569464828788579555488464588748924863667680685618825207068173240704979174105554886693496671623800012592751837003858674502066896320128827551460797612386502050389682461336082436346660376445814861041375690974527816115163613118013221468935070589455703128056317781911544391454879656158249866035693121343183814426858548394850015545046296446304515756809906570073415241847179234668223172947907164758409276511438827520659873848958595944790748598625209768655859224234705956514627056035717528746692456652496190059886364670035331020370700979828054528733238861867723236604324908857468344039573551542024308686941739091245178587062839694136527045973662700442199233863944415947781546730997297306639222168043069756674101312847168129340683400984562523758063425534378982166828697565536513250354616350240445795492455521448013678661248535491632763755759830563664562491852448855939411121159960323223643556318867712896551461492427293318399910375044708953103079512098209792\n", + "162481199126558905553400586663471205085216583868434812165660514556230244312054217650258097309975991666306563945984061590754470595468901924328293600406899260954416411389732654475458610165529234242300720177544212769917015913427138929657577159110976929177497849727335361371237650414136346481409958348211109773386993343247600025185503674007717349004133792640257655102921595224773004100779364922672164872693320752891629722082751381949055632230327226236026442937870141178911406256112635563823088782909759312316499732071386242686367628853717096789700031090092592892609031513619813140146830483694358469336446345895814329516818553022877655041319747697917191889581497197250419537311718448469411913029254112071435057493384913304992380119772729340070662040741401959656109057466477723735446473208649817714936688079147103084048617373883478182490357174125679388273054091947325400884398467727888831895563093461994594613278444336086139513348202625694336258681366801969125047516126851068757964333657395131073026500709232700480891590984911042896027357322497070983265527511519661127329124983704897711878822242319920646447287112637735425793102922984854586636799820750089417906206159024196419584\n", + "324962398253117811106801173326942410170433167736869624331321029112460488624108435300516194619951983332613127891968123181508941190937803848656587200813798521908832822779465308950917220331058468484601440355088425539834031826854277859315154318221953858354995699454670722742475300828272692962819916696422219546773986686495200050371007348015434698008267585280515310205843190449546008201558729845344329745386641505783259444165502763898111264460654452472052885875740282357822812512225271127646177565819518624632999464142772485372735257707434193579400062180185185785218063027239626280293660967388716938672892691791628659033637106045755310082639495395834383779162994394500839074623436896938823826058508224142870114986769826609984760239545458680141324081482803919312218114932955447470892946417299635429873376158294206168097234747766956364980714348251358776546108183894650801768796935455777663791126186923989189226556888672172279026696405251388672517362733603938250095032253702137515928667314790262146053001418465400961783181969822085792054714644994141966531055023039322254658249967409795423757644484639841292894574225275470851586205845969709173273599641500178835812412318048392839168\n", + "649924796506235622213602346653884820340866335473739248662642058224920977248216870601032389239903966665226255783936246363017882381875607697313174401627597043817665645558930617901834440662116936969202880710176851079668063653708555718630308636443907716709991398909341445484950601656545385925639833392844439093547973372990400100742014696030869396016535170561030620411686380899092016403117459690688659490773283011566518888331005527796222528921308904944105771751480564715645625024450542255292355131639037249265998928285544970745470515414868387158800124360370371570436126054479252560587321934777433877345785383583257318067274212091510620165278990791668767558325988789001678149246873793877647652117016448285740229973539653219969520479090917360282648162965607838624436229865910894941785892834599270859746752316588412336194469495533912729961428696502717553092216367789301603537593870911555327582252373847978378453113777344344558053392810502777345034725467207876500190064507404275031857334629580524292106002836930801923566363939644171584109429289988283933062110046078644509316499934819590847515288969279682585789148450550941703172411691939418346547199283000357671624824636096785678336\n", + "1299849593012471244427204693307769640681732670947478497325284116449841954496433741202064778479807933330452511567872492726035764763751215394626348803255194087635331291117861235803668881324233873938405761420353702159336127307417111437260617272887815433419982797818682890969901203313090771851279666785688878187095946745980800201484029392061738792033070341122061240823372761798184032806234919381377318981546566023133037776662011055592445057842617809888211543502961129431291250048901084510584710263278074498531997856571089941490941030829736774317600248720740743140872252108958505121174643869554867754691570767166514636134548424183021240330557981583337535116651977578003356298493747587755295304234032896571480459947079306439939040958181834720565296325931215677248872459731821789883571785669198541719493504633176824672388938991067825459922857393005435106184432735578603207075187741823110655164504747695956756906227554688689116106785621005554690069450934415753000380129014808550063714669259161048584212005673861603847132727879288343168218858579976567866124220092157289018632999869639181695030577938559365171578296901101883406344823383878836693094398566000715343249649272193571356672\n", + "2599699186024942488854409386615539281363465341894956994650568232899683908992867482404129556959615866660905023135744985452071529527502430789252697606510388175270662582235722471607337762648467747876811522840707404318672254614834222874521234545775630866839965595637365781939802406626181543702559333571377756374191893491961600402968058784123477584066140682244122481646745523596368065612469838762754637963093132046266075553324022111184890115685235619776423087005922258862582500097802169021169420526556148997063995713142179882981882061659473548635200497441481486281744504217917010242349287739109735509383141534333029272269096848366042480661115963166675070233303955156006712596987495175510590608468065793142960919894158612879878081916363669441130592651862431354497744919463643579767143571338397083438987009266353649344777877982135650919845714786010870212368865471157206414150375483646221310329009495391913513812455109377378232213571242011109380138901868831506000760258029617100127429338518322097168424011347723207694265455758576686336437717159953135732248440184314578037265999739278363390061155877118730343156593802203766812689646767757673386188797132001430686499298544387142713344\n", + "5199398372049884977708818773231078562726930683789913989301136465799367817985734964808259113919231733321810046271489970904143059055004861578505395213020776350541325164471444943214675525296935495753623045681414808637344509229668445749042469091551261733679931191274731563879604813252363087405118667142755512748383786983923200805936117568246955168132281364488244963293491047192736131224939677525509275926186264092532151106648044222369780231370471239552846174011844517725165000195604338042338841053112297994127991426284359765963764123318947097270400994882962972563489008435834020484698575478219471018766283068666058544538193696732084961322231926333350140466607910312013425193974990351021181216936131586285921839788317225759756163832727338882261185303724862708995489838927287159534287142676794166877974018532707298689555755964271301839691429572021740424737730942314412828300750967292442620658018990783827027624910218754756464427142484022218760277803737663012001520516059234200254858677036644194336848022695446415388530911517153372672875434319906271464496880368629156074531999478556726780122311754237460686313187604407533625379293535515346772377594264002861372998597088774285426688\n", + "10398796744099769955417637546462157125453861367579827978602272931598735635971469929616518227838463466643620092542979941808286118110009723157010790426041552701082650328942889886429351050593870991507246091362829617274689018459336891498084938183102523467359862382549463127759209626504726174810237334285511025496767573967846401611872235136493910336264562728976489926586982094385472262449879355051018551852372528185064302213296088444739560462740942479105692348023689035450330000391208676084677682106224595988255982852568719531927528246637894194540801989765925945126978016871668040969397150956438942037532566137332117089076387393464169922644463852666700280933215820624026850387949980702042362433872263172571843679576634451519512327665454677764522370607449725417990979677854574319068574285353588333755948037065414597379111511928542603679382859144043480849475461884628825656601501934584885241316037981567654055249820437509512928854284968044437520555607475326024003041032118468400509717354073288388673696045390892830777061823034306745345750868639812542928993760737258312149063998957113453560244623508474921372626375208815067250758587071030693544755188528005722745997194177548570853376\n", + "20797593488199539910835275092924314250907722735159655957204545863197471271942939859233036455676926933287240185085959883616572236220019446314021580852083105402165300657885779772858702101187741983014492182725659234549378036918673782996169876366205046934719724765098926255518419253009452349620474668571022050993535147935692803223744470272987820672529125457952979853173964188770944524899758710102037103704745056370128604426592176889479120925481884958211384696047378070900660000782417352169355364212449191976511965705137439063855056493275788389081603979531851890253956033743336081938794301912877884075065132274664234178152774786928339845288927705333400561866431641248053700775899961404084724867744526345143687359153268903039024655330909355529044741214899450835981959355709148638137148570707176667511896074130829194758223023857085207358765718288086961698950923769257651313203003869169770482632075963135308110499640875019025857708569936088875041111214950652048006082064236936801019434708146576777347392090781785661554123646068613490691501737279625085857987521474516624298127997914226907120489247016949842745252750417630134501517174142061387089510377056011445491994388355097141706752\n", + "41595186976399079821670550185848628501815445470319311914409091726394942543885879718466072911353853866574480370171919767233144472440038892628043161704166210804330601315771559545717404202375483966028984365451318469098756073837347565992339752732410093869439449530197852511036838506018904699240949337142044101987070295871385606447488940545975641345058250915905959706347928377541889049799517420204074207409490112740257208853184353778958241850963769916422769392094756141801320001564834704338710728424898383953023931410274878127710112986551576778163207959063703780507912067486672163877588603825755768150130264549328468356305549573856679690577855410666801123732863282496107401551799922808169449735489052690287374718306537806078049310661818711058089482429798901671963918711418297276274297141414353335023792148261658389516446047714170414717531436576173923397901847538515302626406007738339540965264151926270616220999281750038051715417139872177750082222429901304096012164128473873602038869416293153554694784181563571323108247292137226981383003474559250171715975042949033248596255995828453814240978494033899685490505500835260269003034348284122774179020754112022890983988776710194283413504\n", + "83190373952798159643341100371697257003630890940638623828818183452789885087771759436932145822707707733148960740343839534466288944880077785256086323408332421608661202631543119091434808404750967932057968730902636938197512147674695131984679505464820187738878899060395705022073677012037809398481898674284088203974140591742771212894977881091951282690116501831811919412695856755083778099599034840408148414818980225480514417706368707557916483701927539832845538784189512283602640003129669408677421456849796767906047862820549756255420225973103153556326415918127407561015824134973344327755177207651511536300260529098656936712611099147713359381155710821333602247465726564992214803103599845616338899470978105380574749436613075612156098621323637422116178964859597803343927837422836594552548594282828706670047584296523316779032892095428340829435062873152347846795803695077030605252812015476679081930528303852541232441998563500076103430834279744355500164444859802608192024328256947747204077738832586307109389568363127142646216494584274453962766006949118500343431950085898066497192511991656907628481956988067799370981011001670520538006068696568245548358041508224045781967977553420388566827008\n", + "166380747905596319286682200743394514007261781881277247657636366905579770175543518873864291645415415466297921480687679068932577889760155570512172646816664843217322405263086238182869616809501935864115937461805273876395024295349390263969359010929640375477757798120791410044147354024075618796963797348568176407948281183485542425789955762183902565380233003663623838825391713510167556199198069680816296829637960450961028835412737415115832967403855079665691077568379024567205280006259338817354842913699593535812095725641099512510840451946206307112652831836254815122031648269946688655510354415303023072600521058197313873425222198295426718762311421642667204494931453129984429606207199691232677798941956210761149498873226151224312197242647274844232357929719195606687855674845673189105097188565657413340095168593046633558065784190856681658870125746304695693591607390154061210505624030953358163861056607705082464883997127000152206861668559488711000328889719605216384048656513895494408155477665172614218779136726254285292432989168548907925532013898237000686863900171796132994385023983313815256963913976135598741962022003341041076012137393136491096716083016448091563935955106840777133654016\n", + "332761495811192638573364401486789028014523563762554495315272733811159540351087037747728583290830830932595842961375358137865155779520311141024345293633329686434644810526172476365739233619003871728231874923610547752790048590698780527938718021859280750955515596241582820088294708048151237593927594697136352815896562366971084851579911524367805130760466007327247677650783427020335112398396139361632593659275920901922057670825474830231665934807710159331382155136758049134410560012518677634709685827399187071624191451282199025021680903892412614225305663672509630244063296539893377311020708830606046145201042116394627746850444396590853437524622843285334408989862906259968859212414399382465355597883912421522298997746452302448624394485294549688464715859438391213375711349691346378210194377131314826680190337186093267116131568381713363317740251492609391387183214780308122421011248061906716327722113215410164929767994254000304413723337118977422000657779439210432768097313027790988816310955330345228437558273452508570584865978337097815851064027796474001373727800343592265988770047966627630513927827952271197483924044006682082152024274786272982193432166032896183127871910213681554267308032\n", + "665522991622385277146728802973578056029047127525108990630545467622319080702174075495457166581661661865191685922750716275730311559040622282048690587266659372869289621052344952731478467238007743456463749847221095505580097181397561055877436043718561501911031192483165640176589416096302475187855189394272705631793124733942169703159823048735610261520932014654495355301566854040670224796792278723265187318551841803844115341650949660463331869615420318662764310273516098268821120025037355269419371654798374143248382902564398050043361807784825228450611327345019260488126593079786754622041417661212092290402084232789255493700888793181706875049245686570668817979725812519937718424828798764930711195767824843044597995492904604897248788970589099376929431718876782426751422699382692756420388754262629653360380674372186534232263136763426726635480502985218782774366429560616244842022496123813432655444226430820329859535988508000608827446674237954844001315558878420865536194626055581977632621910660690456875116546905017141169731956674195631702128055592948002747455600687184531977540095933255261027855655904542394967848088013364164304048549572545964386864332065792366255743820427363108534616064\n", + "1331045983244770554293457605947156112058094255050217981261090935244638161404348150990914333163323323730383371845501432551460623118081244564097381174533318745738579242104689905462956934476015486912927499694442191011160194362795122111754872087437123003822062384966331280353178832192604950375710378788545411263586249467884339406319646097471220523041864029308990710603133708081340449593584557446530374637103683607688230683301899320926663739230840637325528620547032196537642240050074710538838743309596748286496765805128796100086723615569650456901222654690038520976253186159573509244082835322424184580804168465578510987401777586363413750098491373141337635959451625039875436849657597529861422391535649686089195990985809209794497577941178198753858863437753564853502845398765385512840777508525259306720761348744373068464526273526853453270961005970437565548732859121232489684044992247626865310888452861640659719071977016001217654893348475909688002631117756841731072389252111163955265243821321380913750233093810034282339463913348391263404256111185896005494911201374369063955080191866510522055711311809084789935696176026728328608097099145091928773728664131584732511487640854726217069232128\n", + "2662091966489541108586915211894312224116188510100435962522181870489276322808696301981828666326646647460766743691002865102921246236162489128194762349066637491477158484209379810925913868952030973825854999388884382022320388725590244223509744174874246007644124769932662560706357664385209900751420757577090822527172498935768678812639292194942441046083728058617981421206267416162680899187169114893060749274207367215376461366603798641853327478461681274651057241094064393075284480100149421077677486619193496572993531610257592200173447231139300913802445309380077041952506372319147018488165670644848369161608336931157021974803555172726827500196982746282675271918903250079750873699315195059722844783071299372178391981971618419588995155882356397507717726875507129707005690797530771025681555017050518613441522697488746136929052547053706906541922011940875131097465718242464979368089984495253730621776905723281319438143954032002435309786696951819376005262235513683462144778504222327910530487642642761827500466187620068564678927826696782526808512222371792010989822402748738127910160383733021044111422623618169579871392352053456657216194198290183857547457328263169465022975281709452434138464256\n", + "5324183932979082217173830423788624448232377020200871925044363740978552645617392603963657332653293294921533487382005730205842492472324978256389524698133274982954316968418759621851827737904061947651709998777768764044640777451180488447019488349748492015288249539865325121412715328770419801502841515154181645054344997871537357625278584389884882092167456117235962842412534832325361798374338229786121498548414734430752922733207597283706654956923362549302114482188128786150568960200298842155354973238386993145987063220515184400346894462278601827604890618760154083905012744638294036976331341289696738323216673862314043949607110345453655000393965492565350543837806500159501747398630390119445689566142598744356783963943236839177990311764712795015435453751014259414011381595061542051363110034101037226883045394977492273858105094107413813083844023881750262194931436484929958736179968990507461243553811446562638876287908064004870619573393903638752010524471027366924289557008444655821060975285285523655000932375240137129357855653393565053617024444743584021979644805497476255820320767466042088222845247236339159742784704106913314432388396580367715094914656526338930045950563418904868276928512\n", + "10648367865958164434347660847577248896464754040401743850088727481957105291234785207927314665306586589843066974764011460411684984944649956512779049396266549965908633936837519243703655475808123895303419997555537528089281554902360976894038976699496984030576499079730650242825430657540839603005683030308363290108689995743074715250557168779769764184334912234471925684825069664650723596748676459572242997096829468861505845466415194567413309913846725098604228964376257572301137920400597684310709946476773986291974126441030368800693788924557203655209781237520308167810025489276588073952662682579393476646433347724628087899214220690907310000787930985130701087675613000319003494797260780238891379132285197488713567927886473678355980623529425590030870907502028518828022763190123084102726220068202074453766090789954984547716210188214827626167688047763500524389862872969859917472359937981014922487107622893125277752575816128009741239146787807277504021048942054733848579114016889311642121950570571047310001864750480274258715711306787130107234048889487168043959289610994952511640641534932084176445690494472678319485569408213826628864776793160735430189829313052677860091901126837809736553857024\n", + "21296735731916328868695321695154497792929508080803487700177454963914210582469570415854629330613173179686133949528022920823369969889299913025558098792533099931817267873675038487407310951616247790606839995111075056178563109804721953788077953398993968061152998159461300485650861315081679206011366060616726580217379991486149430501114337559539528368669824468943851369650139329301447193497352919144485994193658937723011690932830389134826619827693450197208457928752515144602275840801195368621419892953547972583948252882060737601387577849114407310419562475040616335620050978553176147905325365158786953292866695449256175798428441381814620001575861970261402175351226000638006989594521560477782758264570394977427135855772947356711961247058851180061741815004057037656045526380246168205452440136404148907532181579909969095432420376429655252335376095527001048779725745939719834944719875962029844974215245786250555505151632256019482478293575614555008042097884109467697158228033778623284243901141142094620003729500960548517431422613574260214468097778974336087918579221989905023281283069864168352891380988945356638971138816427653257729553586321470860379658626105355720183802253675619473107714048\n", + "42593471463832657737390643390308995585859016161606975400354909927828421164939140831709258661226346359372267899056045841646739939778599826051116197585066199863634535747350076974814621903232495581213679990222150112357126219609443907576155906797987936122305996318922600971301722630163358412022732121233453160434759982972298861002228675119079056737339648937887702739300278658602894386994705838288971988387317875446023381865660778269653239655386900394416915857505030289204551681602390737242839785907095945167896505764121475202775155698228814620839124950081232671240101957106352295810650730317573906585733390898512351596856882763629240003151723940522804350702452001276013979189043120955565516529140789954854271711545894713423922494117702360123483630008114075312091052760492336410904880272808297815064363159819938190864840752859310504670752191054002097559451491879439669889439751924059689948430491572501111010303264512038964956587151229110016084195768218935394316456067557246568487802282284189240007459001921097034862845227148520428936195557948672175837158443979810046562566139728336705782761977890713277942277632855306515459107172642941720759317252210711440367604507351238946215428096\n", + "85186942927665315474781286780617991171718032323213950800709819855656842329878281663418517322452692718744535798112091683293479879557199652102232395170132399727269071494700153949629243806464991162427359980444300224714252439218887815152311813595975872244611992637845201942603445260326716824045464242466906320869519965944597722004457350238158113474679297875775405478600557317205788773989411676577943976774635750892046763731321556539306479310773800788833831715010060578409103363204781474485679571814191890335793011528242950405550311396457629241678249900162465342480203914212704591621301460635147813171466781797024703193713765527258480006303447881045608701404904002552027958378086241911131033058281579909708543423091789426847844988235404720246967260016228150624182105520984672821809760545616595630128726319639876381729681505718621009341504382108004195118902983758879339778879503848119379896860983145002222020606529024077929913174302458220032168391536437870788632912135114493136975604564568378480014918003842194069725690454297040857872391115897344351674316887959620093125132279456673411565523955781426555884555265710613030918214345285883441518634504421422880735209014702477892430856192\n", + "170373885855330630949562573561235982343436064646427901601419639711313684659756563326837034644905385437489071596224183366586959759114399304204464790340264799454538142989400307899258487612929982324854719960888600449428504878437775630304623627191951744489223985275690403885206890520653433648090928484933812641739039931889195444008914700476316226949358595751550810957201114634411577547978823353155887953549271501784093527462643113078612958621547601577667663430020121156818206726409562948971359143628383780671586023056485900811100622792915258483356499800324930684960407828425409183242602921270295626342933563594049406387427531054516960012606895762091217402809808005104055916756172483822262066116563159819417086846183578853695689976470809440493934520032456301248364211041969345643619521091233191260257452639279752763459363011437242018683008764216008390237805967517758679557759007696238759793721966290004444041213058048155859826348604916440064336783072875741577265824270228986273951209129136756960029836007684388139451380908594081715744782231794688703348633775919240186250264558913346823131047911562853111769110531421226061836428690571766883037269008842845761470418029404955784861712384\n", + "340747771710661261899125147122471964686872129292855803202839279422627369319513126653674069289810770874978143192448366733173919518228798608408929580680529598909076285978800615798516975225859964649709439921777200898857009756875551260609247254383903488978447970551380807770413781041306867296181856969867625283478079863778390888017829400952632453898717191503101621914402229268823155095957646706311775907098543003568187054925286226157225917243095203155335326860040242313636413452819125897942718287256767561343172046112971801622201245585830516966712999600649861369920815656850818366485205842540591252685867127188098812774855062109033920025213791524182434805619616010208111833512344967644524132233126319638834173692367157707391379952941618880987869040064912602496728422083938691287239042182466382520514905278559505526918726022874484037366017528432016780475611935035517359115518015392477519587443932580008888082426116096311719652697209832880128673566145751483154531648540457972547902418258273513920059672015368776278902761817188163431489564463589377406697267551838480372500529117826693646262095823125706223538221062842452123672857381143533766074538017685691522940836058809911569723424768\n", + "681495543421322523798250294244943929373744258585711606405678558845254738639026253307348138579621541749956286384896733466347839036457597216817859161361059197818152571957601231597033950451719929299418879843554401797714019513751102521218494508767806977956895941102761615540827562082613734592363713939735250566956159727556781776035658801905264907797434383006203243828804458537646310191915293412623551814197086007136374109850572452314451834486190406310670653720080484627272826905638251795885436574513535122686344092225943603244402491171661033933425999201299722739841631313701636732970411685081182505371734254376197625549710124218067840050427583048364869611239232020416223667024689935289048264466252639277668347384734315414782759905883237761975738080129825204993456844167877382574478084364932765041029810557119011053837452045748968074732035056864033560951223870071034718231036030784955039174887865160017776164852232192623439305394419665760257347132291502966309063297080915945095804836516547027840119344030737552557805523634376326862979128927178754813394535103676960745001058235653387292524191646251412447076442125684904247345714762287067532149076035371383045881672117619823139446849536\n", + "1362991086842645047596500588489887858747488517171423212811357117690509477278052506614696277159243083499912572769793466932695678072915194433635718322722118395636305143915202463194067900903439858598837759687108803595428039027502205042436989017535613955913791882205523231081655124165227469184727427879470501133912319455113563552071317603810529815594868766012406487657608917075292620383830586825247103628394172014272748219701144904628903668972380812621341307440160969254545653811276503591770873149027070245372688184451887206488804982343322067866851998402599445479683262627403273465940823370162365010743468508752395251099420248436135680100855166096729739222478464040832447334049379870578096528932505278555336694769468630829565519811766475523951476160259650409986913688335754765148956168729865530082059621114238022107674904091497936149464070113728067121902447740142069436462072061569910078349775730320035552329704464385246878610788839331520514694264583005932618126594161831890191609673033094055680238688061475105115611047268752653725958257854357509626789070207353921490002116471306774585048383292502824894152884251369808494691429524574135064298152070742766091763344235239646278893699072\n", + "2725982173685290095193001176979775717494977034342846425622714235381018954556105013229392554318486166999825145539586933865391356145830388867271436645444236791272610287830404926388135801806879717197675519374217607190856078055004410084873978035071227911827583764411046462163310248330454938369454855758941002267824638910227127104142635207621059631189737532024812975315217834150585240767661173650494207256788344028545496439402289809257807337944761625242682614880321938509091307622553007183541746298054140490745376368903774412977609964686644135733703996805198890959366525254806546931881646740324730021486937017504790502198840496872271360201710332193459478444956928081664894668098759741156193057865010557110673389538937261659131039623532951047902952320519300819973827376671509530297912337459731060164119242228476044215349808182995872298928140227456134243804895480284138872924144123139820156699551460640071104659408928770493757221577678663041029388529166011865236253188323663780383219346066188111360477376122950210231222094537505307451916515708715019253578140414707842980004232942613549170096766585005649788305768502739616989382859049148270128596304141485532183526688470479292557787398144\n", + "5451964347370580190386002353959551434989954068685692851245428470762037909112210026458785108636972333999650291079173867730782712291660777734542873290888473582545220575660809852776271603613759434395351038748435214381712156110008820169747956070142455823655167528822092924326620496660909876738909711517882004535649277820454254208285270415242119262379475064049625950630435668301170481535322347300988414513576688057090992878804579618515614675889523250485365229760643877018182615245106014367083492596108280981490752737807548825955219929373288271467407993610397781918733050509613093863763293480649460042973874035009581004397680993744542720403420664386918956889913856163329789336197519482312386115730021114221346779077874523318262079247065902095805904641038601639947654753343019060595824674919462120328238484456952088430699616365991744597856280454912268487609790960568277745848288246279640313399102921280142209318817857540987514443155357326082058777058332023730472506376647327560766438692132376222720954752245900420462444189075010614903833031417430038507156280829415685960008465885227098340193533170011299576611537005479233978765718098296540257192608282971064367053376940958585115574796288\n", + "10903928694741160380772004707919102869979908137371385702490856941524075818224420052917570217273944667999300582158347735461565424583321555469085746581776947165090441151321619705552543207227518868790702077496870428763424312220017640339495912140284911647310335057644185848653240993321819753477819423035764009071298555640908508416570540830484238524758950128099251901260871336602340963070644694601976829027153376114181985757609159237031229351779046500970730459521287754036365230490212028734166985192216561962981505475615097651910439858746576542934815987220795563837466101019226187727526586961298920085947748070019162008795361987489085440806841328773837913779827712326659578672395038964624772231460042228442693558155749046636524158494131804191611809282077203279895309506686038121191649349838924240656476968913904176861399232731983489195712560909824536975219581921136555491696576492559280626798205842560284418637635715081975028886310714652164117554116664047460945012753294655121532877384264752445441909504491800840924888378150021229807666062834860077014312561658831371920016931770454196680387066340022599153223074010958467957531436196593080514385216565942128734106753881917170231149592576\n", + "21807857389482320761544009415838205739959816274742771404981713883048151636448840105835140434547889335998601164316695470923130849166643110938171493163553894330180882302643239411105086414455037737581404154993740857526848624440035280678991824280569823294620670115288371697306481986643639506955638846071528018142597111281817016833141081660968477049517900256198503802521742673204681926141289389203953658054306752228363971515218318474062458703558093001941460919042575508072730460980424057468333970384433123925963010951230195303820879717493153085869631974441591127674932202038452375455053173922597840171895496140038324017590723974978170881613682657547675827559655424653319157344790077929249544462920084456885387116311498093273048316988263608383223618564154406559790619013372076242383298699677848481312953937827808353722798465463966978391425121819649073950439163842273110983393152985118561253596411685120568837275271430163950057772621429304328235108233328094921890025506589310243065754768529504890883819008983601681849776756300042459615332125669720154028625123317662743840033863540908393360774132680045198306446148021916935915062872393186161028770433131884257468213507763834340462299185152\n", + "43615714778964641523088018831676411479919632549485542809963427766096303272897680211670280869095778671997202328633390941846261698333286221876342986327107788660361764605286478822210172828910075475162808309987481715053697248880070561357983648561139646589241340230576743394612963973287279013911277692143056036285194222563634033666282163321936954099035800512397007605043485346409363852282578778407907316108613504456727943030436636948124917407116186003882921838085151016145460921960848114936667940768866247851926021902460390607641759434986306171739263948883182255349864404076904750910106347845195680343790992280076648035181447949956341763227365315095351655119310849306638314689580155858499088925840168913770774232622996186546096633976527216766447237128308813119581238026744152484766597399355696962625907875655616707445596930927933956782850243639298147900878327684546221966786305970237122507192823370241137674550542860327900115545242858608656470216466656189843780051013178620486131509537059009781767638017967203363699553512600084919230664251339440308057250246635325487680067727081816786721548265360090396612892296043833871830125744786372322057540866263768514936427015527668680924598370304\n", + "87231429557929283046176037663352822959839265098971085619926855532192606545795360423340561738191557343994404657266781883692523396666572443752685972654215577320723529210572957644420345657820150950325616619974963430107394497760141122715967297122279293178482680461153486789225927946574558027822555384286112072570388445127268067332564326643873908198071601024794015210086970692818727704565157556815814632217227008913455886060873273896249834814232372007765843676170302032290921843921696229873335881537732495703852043804920781215283518869972612343478527897766364510699728808153809501820212695690391360687581984560153296070362895899912683526454730630190703310238621698613276629379160311716998177851680337827541548465245992373092193267953054433532894474256617626239162476053488304969533194798711393925251815751311233414891193861855867913565700487278596295801756655369092443933572611940474245014385646740482275349101085720655800231090485717217312940432933312379687560102026357240972263019074118019563535276035934406727399107025200169838461328502678880616114500493270650975360135454163633573443096530720180793225784592087667743660251489572744644115081732527537029872854031055337361849196740608\n", + "174462859115858566092352075326705645919678530197942171239853711064385213091590720846681123476383114687988809314533563767385046793333144887505371945308431154641447058421145915288840691315640301900651233239949926860214788995520282245431934594244558586356965360922306973578451855893149116055645110768572224145140776890254536134665128653287747816396143202049588030420173941385637455409130315113631629264434454017826911772121746547792499669628464744015531687352340604064581843687843392459746671763075464991407704087609841562430567037739945224686957055795532729021399457616307619003640425391380782721375163969120306592140725791799825367052909461260381406620477243397226553258758320623433996355703360675655083096930491984746184386535906108867065788948513235252478324952106976609939066389597422787850503631502622466829782387723711735827131400974557192591603513310738184887867145223880948490028771293480964550698202171441311600462180971434434625880865866624759375120204052714481944526038148236039127070552071868813454798214050400339676922657005357761232229000986541301950720270908327267146886193061440361586451569184175335487320502979145489288230163465055074059745708062110674723698393481216\n", + "348925718231717132184704150653411291839357060395884342479707422128770426183181441693362246952766229375977618629067127534770093586666289775010743890616862309282894116842291830577681382631280603801302466479899853720429577991040564490863869188489117172713930721844613947156903711786298232111290221537144448290281553780509072269330257306575495632792286404099176060840347882771274910818260630227263258528868908035653823544243493095584999339256929488031063374704681208129163687375686784919493343526150929982815408175219683124861134075479890449373914111591065458042798915232615238007280850782761565442750327938240613184281451583599650734105818922520762813240954486794453106517516641246867992711406721351310166193860983969492368773071812217734131577897026470504956649904213953219878132779194845575701007263005244933659564775447423471654262801949114385183207026621476369775734290447761896980057542586961929101396404342882623200924361942868869251761731733249518750240408105428963889052076296472078254141104143737626909596428100800679353845314010715522464458001973082603901440541816654534293772386122880723172903138368350670974641005958290978576460326930110148119491416124221349447396786962432\n", + "697851436463434264369408301306822583678714120791768684959414844257540852366362883386724493905532458751955237258134255069540187173332579550021487781233724618565788233684583661155362765262561207602604932959799707440859155982081128981727738376978234345427861443689227894313807423572596464222580443074288896580563107561018144538660514613150991265584572808198352121680695765542549821636521260454526517057737816071307647088486986191169998678513858976062126749409362416258327374751373569838986687052301859965630816350439366249722268150959780898747828223182130916085597830465230476014561701565523130885500655876481226368562903167199301468211637845041525626481908973588906213035033282493735985422813442702620332387721967938984737546143624435468263155794052941009913299808427906439756265558389691151402014526010489867319129550894846943308525603898228770366414053242952739551468580895523793960115085173923858202792808685765246401848723885737738503523463466499037500480816210857927778104152592944156508282208287475253819192856201601358707690628021431044928916003946165207802881083633309068587544772245761446345806276736701341949282011916581957152920653860220296238982832248442698894793573924864\n", + "1395702872926868528738816602613645167357428241583537369918829688515081704732725766773448987811064917503910474516268510139080374346665159100042975562467449237131576467369167322310725530525122415205209865919599414881718311964162257963455476753956468690855722887378455788627614847145192928445160886148577793161126215122036289077321029226301982531169145616396704243361391531085099643273042520909053034115475632142615294176973972382339997357027717952124253498818724832516654749502747139677973374104603719931261632700878732499444536301919561797495656446364261832171195660930460952029123403131046261771001311752962452737125806334398602936423275690083051252963817947177812426070066564987471970845626885405240664775443935877969475092287248870936526311588105882019826599616855812879512531116779382302804029052020979734638259101789693886617051207796457540732828106485905479102937161791047587920230170347847716405585617371530492803697447771475477007046926932998075000961632421715855556208305185888313016564416574950507638385712403202717415381256042862089857832007892330415605762167266618137175089544491522892691612553473402683898564023833163914305841307720440592477965664496885397789587147849728\n", + "2791405745853737057477633205227290334714856483167074739837659377030163409465451533546897975622129835007820949032537020278160748693330318200085951124934898474263152934738334644621451061050244830410419731839198829763436623928324515926910953507912937381711445774756911577255229694290385856890321772297155586322252430244072578154642058452603965062338291232793408486722783062170199286546085041818106068230951264285230588353947944764679994714055435904248506997637449665033309499005494279355946748209207439862523265401757464998889072603839123594991312892728523664342391321860921904058246806262092523542002623505924905474251612668797205872846551380166102505927635894355624852140133129974943941691253770810481329550887871755938950184574497741873052623176211764039653199233711625759025062233558764605608058104041959469276518203579387773234102415592915081465656212971810958205874323582095175840460340695695432811171234743060985607394895542950954014093853865996150001923264843431711112416610371776626033128833149901015276771424806405434830762512085724179715664015784660831211524334533236274350179088983045785383225106946805367797128047666327828611682615440881184955931328993770795579174295699456\n", + "5582811491707474114955266410454580669429712966334149479675318754060326818930903067093795951244259670015641898065074040556321497386660636400171902249869796948526305869476669289242902122100489660820839463678397659526873247856649031853821907015825874763422891549513823154510459388580771713780643544594311172644504860488145156309284116905207930124676582465586816973445566124340398573092170083636212136461902528570461176707895889529359989428110871808497013995274899330066618998010988558711893496418414879725046530803514929997778145207678247189982625785457047328684782643721843808116493612524185047084005247011849810948503225337594411745693102760332205011855271788711249704280266259949887883382507541620962659101775743511877900369148995483746105246352423528079306398467423251518050124467117529211216116208083918938553036407158775546468204831185830162931312425943621916411748647164190351680920681391390865622342469486121971214789791085901908028187707731992300003846529686863422224833220743553252066257666299802030553542849612810869661525024171448359431328031569321662423048669066472548700358177966091570766450213893610735594256095332655657223365230881762369911862657987541591158348591398912\n", + "11165622983414948229910532820909161338859425932668298959350637508120653637861806134187591902488519340031283796130148081112642994773321272800343804499739593897052611738953338578485804244200979321641678927356795319053746495713298063707643814031651749526845783099027646309020918777161543427561287089188622345289009720976290312618568233810415860249353164931173633946891132248680797146184340167272424272923805057140922353415791779058719978856221743616994027990549798660133237996021977117423786992836829759450093061607029859995556290415356494379965251570914094657369565287443687616232987225048370094168010494023699621897006450675188823491386205520664410023710543577422499408560532519899775766765015083241925318203551487023755800738297990967492210492704847056158612796934846503036100248934235058422432232416167837877106072814317551092936409662371660325862624851887243832823497294328380703361841362782781731244684938972243942429579582171803816056375415463984600007693059373726844449666441487106504132515332599604061107085699225621739323050048342896718862656063138643324846097338132945097400716355932183141532900427787221471188512190665311314446730461763524739823725315975083182316697182797824\n", + "22331245966829896459821065641818322677718851865336597918701275016241307275723612268375183804977038680062567592260296162225285989546642545600687608999479187794105223477906677156971608488401958643283357854713590638107492991426596127415287628063303499053691566198055292618041837554323086855122574178377244690578019441952580625237136467620831720498706329862347267893782264497361594292368680334544848545847610114281844706831583558117439957712443487233988055981099597320266475992043954234847573985673659518900186123214059719991112580830712988759930503141828189314739130574887375232465974450096740188336020988047399243794012901350377646982772411041328820047421087154844998817121065039799551533530030166483850636407102974047511601476595981934984420985409694112317225593869693006072200497868470116844864464832335675754212145628635102185872819324743320651725249703774487665646994588656761406723682725565563462489369877944487884859159164343607632112750830927969200015386118747453688899332882974213008265030665199208122214171398451243478646100096685793437725312126277286649692194676265890194801432711864366283065800855574442942377024381330622628893460923527049479647450631950166364633394365595648\n", + "44662491933659792919642131283636645355437703730673195837402550032482614551447224536750367609954077360125135184520592324450571979093285091201375217998958375588210446955813354313943216976803917286566715709427181276214985982853192254830575256126606998107383132396110585236083675108646173710245148356754489381156038883905161250474272935241663440997412659724694535787564528994723188584737360669089697091695220228563689413663167116234879915424886974467976111962199194640532951984087908469695147971347319037800372246428119439982225161661425977519861006283656378629478261149774750464931948900193480376672041976094798487588025802700755293965544822082657640094842174309689997634242130079599103067060060332967701272814205948095023202953191963869968841970819388224634451187739386012144400995736940233689728929664671351508424291257270204371745638649486641303450499407548975331293989177313522813447365451131126924978739755888975769718318328687215264225501661855938400030772237494907377798665765948426016530061330398416244428342796902486957292200193371586875450624252554573299384389352531780389602865423728732566131601711148885884754048762661245257786921847054098959294901263900332729266788731191296\n", + "89324983867319585839284262567273290710875407461346391674805100064965229102894449073500735219908154720250270369041184648901143958186570182402750435997916751176420893911626708627886433953607834573133431418854362552429971965706384509661150512253213996214766264792221170472167350217292347420490296713508978762312077767810322500948545870483326881994825319449389071575129057989446377169474721338179394183390440457127378827326334232469759830849773948935952223924398389281065903968175816939390295942694638075600744492856238879964450323322851955039722012567312757258956522299549500929863897800386960753344083952189596975176051605401510587931089644165315280189684348619379995268484260159198206134120120665935402545628411896190046405906383927739937683941638776449268902375478772024288801991473880467379457859329342703016848582514540408743491277298973282606900998815097950662587978354627045626894730902262253849957479511777951539436636657374430528451003323711876800061544474989814755597331531896852033060122660796832488856685593804973914584400386743173750901248505109146598768778705063560779205730847457465132263203422297771769508097525322490515573843694108197918589802527800665458533577462382592\n", + "178649967734639171678568525134546581421750814922692783349610200129930458205788898147001470439816309440500540738082369297802287916373140364805500871995833502352841787823253417255772867907215669146266862837708725104859943931412769019322301024506427992429532529584442340944334700434584694840980593427017957524624155535620645001897091740966653763989650638898778143150258115978892754338949442676358788366780880914254757654652668464939519661699547897871904447848796778562131807936351633878780591885389276151201488985712477759928900646645703910079444025134625514517913044599099001859727795600773921506688167904379193950352103210803021175862179288330630560379368697238759990536968520318396412268240241331870805091256823792380092811812767855479875367883277552898537804750957544048577603982947760934758915718658685406033697165029080817486982554597946565213801997630195901325175956709254091253789461804524507699914959023555903078873273314748861056902006647423753600123088949979629511194663063793704066120245321593664977713371187609947829168800773486347501802497010218293197537557410127121558411461694914930264526406844595543539016195050644981031147687388216395837179605055601330917067154924765184\n", + "357299935469278343357137050269093162843501629845385566699220400259860916411577796294002940879632618881001081476164738595604575832746280729611001743991667004705683575646506834511545735814431338292533725675417450209719887862825538038644602049012855984859065059168884681888669400869169389681961186854035915049248311071241290003794183481933307527979301277797556286300516231957785508677898885352717576733561761828509515309305336929879039323399095795743808895697593557124263615872703267757561183770778552302402977971424955519857801293291407820158888050269251029035826089198198003719455591201547843013376335808758387900704206421606042351724358576661261120758737394477519981073937040636792824536480482663741610182513647584760185623625535710959750735766555105797075609501915088097155207965895521869517831437317370812067394330058161634973965109195893130427603995260391802650351913418508182507578923609049015399829918047111806157746546629497722113804013294847507200246177899959259022389326127587408132240490643187329955426742375219895658337601546972695003604994020436586395075114820254243116822923389829860529052813689191087078032390101289962062295374776432791674359210111202661834134309849530368\n", + "714599870938556686714274100538186325687003259690771133398440800519721832823155592588005881759265237762002162952329477191209151665492561459222003487983334009411367151293013669023091471628862676585067451350834900419439775725651076077289204098025711969718130118337769363777338801738338779363922373708071830098496622142482580007588366963866615055958602555595112572601032463915571017355797770705435153467123523657019030618610673859758078646798191591487617791395187114248527231745406535515122367541557104604805955942849911039715602586582815640317776100538502058071652178396396007438911182403095686026752671617516775801408412843212084703448717153322522241517474788955039962147874081273585649072960965327483220365027295169520371247251071421919501471533110211594151219003830176194310415931791043739035662874634741624134788660116323269947930218391786260855207990520783605300703826837016365015157847218098030799659836094223612315493093258995444227608026589695014400492355799918518044778652255174816264480981286374659910853484750439791316675203093945390007209988040873172790150229640508486233645846779659721058105627378382174156064780202579924124590749552865583348718420222405323668268619699060736\n", + "1429199741877113373428548201076372651374006519381542266796881601039443665646311185176011763518530475524004325904658954382418303330985122918444006975966668018822734302586027338046182943257725353170134902701669800838879551451302152154578408196051423939436260236675538727554677603476677558727844747416143660196993244284965160015176733927733230111917205111190225145202064927831142034711595541410870306934247047314038061237221347719516157293596383182975235582790374228497054463490813071030244735083114209209611911885699822079431205173165631280635552201077004116143304356792792014877822364806191372053505343235033551602816825686424169406897434306645044483034949577910079924295748162547171298145921930654966440730054590339040742494502142843839002943066220423188302438007660352388620831863582087478071325749269483248269577320232646539895860436783572521710415981041567210601407653674032730030315694436196061599319672188447224630986186517990888455216053179390028800984711599837036089557304510349632528961962572749319821706969500879582633350406187890780014419976081746345580300459281016972467291693559319442116211254756764348312129560405159848249181499105731166697436840444810647336537239398121472\n", + "2858399483754226746857096402152745302748013038763084533593763202078887331292622370352023527037060951048008651809317908764836606661970245836888013951933336037645468605172054676092365886515450706340269805403339601677759102902604304309156816392102847878872520473351077455109355206953355117455689494832287320393986488569930320030353467855466460223834410222380450290404129855662284069423191082821740613868494094628076122474442695439032314587192766365950471165580748456994108926981626142060489470166228418419223823771399644158862410346331262561271104402154008232286608713585584029755644729612382744107010686470067103205633651372848338813794868613290088966069899155820159848591496325094342596291843861309932881460109180678081484989004285687678005886132440846376604876015320704777241663727164174956142651498538966496539154640465293079791720873567145043420831962083134421202815307348065460060631388872392123198639344376894449261972373035981776910432106358780057601969423199674072179114609020699265057923925145498639643413939001759165266700812375781560028839952163492691160600918562033944934583387118638884232422509513528696624259120810319696498362998211462333394873680889621294673074478796242944\n", + "5716798967508453493714192804305490605496026077526169067187526404157774662585244740704047054074121902096017303618635817529673213323940491673776027903866672075290937210344109352184731773030901412680539610806679203355518205805208608618313632784205695757745040946702154910218710413906710234911378989664574640787972977139860640060706935710932920447668820444760900580808259711324568138846382165643481227736988189256152244948885390878064629174385532731900942331161496913988217853963252284120978940332456836838447647542799288317724820692662525122542208804308016464573217427171168059511289459224765488214021372940134206411267302745696677627589737226580177932139798311640319697182992650188685192583687722619865762920218361356162969978008571375356011772264881692753209752030641409554483327454328349912285302997077932993078309280930586159583441747134290086841663924166268842405630614696130920121262777744784246397278688753788898523944746071963553820864212717560115203938846399348144358229218041398530115847850290997279286827878003518330533401624751563120057679904326985382321201837124067889869166774237277768464845019027057393248518241620639392996725996422924666789747361779242589346148957592485888\n", + "11433597935016906987428385608610981210992052155052338134375052808315549325170489481408094108148243804192034607237271635059346426647880983347552055807733344150581874420688218704369463546061802825361079221613358406711036411610417217236627265568411391515490081893404309820437420827813420469822757979329149281575945954279721280121413871421865840895337640889521801161616519422649136277692764331286962455473976378512304489897770781756129258348771065463801884662322993827976435707926504568241957880664913673676895295085598576635449641385325050245084417608616032929146434854342336119022578918449530976428042745880268412822534605491393355255179474453160355864279596623280639394365985300377370385167375445239731525840436722712325939956017142750712023544529763385506419504061282819108966654908656699824570605994155865986156618561861172319166883494268580173683327848332537684811261229392261840242525555489568492794557377507577797047889492143927107641728425435120230407877692798696288716458436082797060231695700581994558573655756007036661066803249503126240115359808653970764642403674248135779738333548474555536929690038054114786497036483241278785993451992845849333579494723558485178692297915184971776\n", + "22867195870033813974856771217221962421984104310104676268750105616631098650340978962816188216296487608384069214474543270118692853295761966695104111615466688301163748841376437408738927092123605650722158443226716813422072823220834434473254531136822783030980163786808619640874841655626840939645515958658298563151891908559442560242827742843731681790675281779043602323233038845298272555385528662573924910947952757024608979795541563512258516697542130927603769324645987655952871415853009136483915761329827347353790590171197153270899282770650100490168835217232065858292869708684672238045157836899061952856085491760536825645069210982786710510358948906320711728559193246561278788731970600754740770334750890479463051680873445424651879912034285501424047089059526771012839008122565638217933309817313399649141211988311731972313237123722344638333766988537160347366655696665075369622522458784523680485051110979136985589114755015155594095778984287854215283456850870240460815755385597392577432916872165594120463391401163989117147311512014073322133606499006252480230719617307941529284807348496271559476667096949111073859380076108229572994072966482557571986903985691698667158989447116970357384595830369943552\n", + "45734391740067627949713542434443924843968208620209352537500211233262197300681957925632376432592975216768138428949086540237385706591523933390208223230933376602327497682752874817477854184247211301444316886453433626844145646441668868946509062273645566061960327573617239281749683311253681879291031917316597126303783817118885120485655485687463363581350563558087204646466077690596545110771057325147849821895905514049217959591083127024517033395084261855207538649291975311905742831706018272967831522659654694707581180342394306541798565541300200980337670434464131716585739417369344476090315673798123905712170983521073651290138421965573421020717897812641423457118386493122557577463941201509481540669501780958926103361746890849303759824068571002848094178119053542025678016245131276435866619634626799298282423976623463944626474247444689276667533977074320694733311393330150739245044917569047360970102221958273971178229510030311188191557968575708430566913701740480921631510771194785154865833744331188240926782802327978234294623024028146644267212998012504960461439234615883058569614696992543118953334193898222147718760152216459145988145932965115143973807971383397334317978894233940714769191660739887104\n", + "91468783480135255899427084868887849687936417240418705075000422466524394601363915851264752865185950433536276857898173080474771413183047866780416446461866753204654995365505749634955708368494422602888633772906867253688291292883337737893018124547291132123920655147234478563499366622507363758582063834633194252607567634237770240971310971374926727162701127116174409292932155381193090221542114650295699643791811028098435919182166254049034066790168523710415077298583950623811485663412036545935663045319309389415162360684788613083597131082600401960675340868928263433171478834738688952180631347596247811424341967042147302580276843931146842041435795625282846914236772986245115154927882403018963081339003561917852206723493781698607519648137142005696188356238107084051356032490262552871733239269253598596564847953246927889252948494889378553335067954148641389466622786660301478490089835138094721940204443916547942356459020060622376383115937151416861133827403480961843263021542389570309731667488662376481853565604655956468589246048056293288534425996025009920922878469231766117139229393985086237906668387796444295437520304432918291976291865930230287947615942766794668635957788467881429538383321479774208\n", + "182937566960270511798854169737775699375872834480837410150000844933048789202727831702529505730371900867072553715796346160949542826366095733560832892923733506409309990731011499269911416736988845205777267545813734507376582585766675475786036249094582264247841310294468957126998733245014727517164127669266388505215135268475540481942621942749853454325402254232348818585864310762386180443084229300591399287583622056196871838364332508098068133580337047420830154597167901247622971326824073091871326090638618778830324721369577226167194262165200803921350681737856526866342957669477377904361262695192495622848683934084294605160553687862293684082871591250565693828473545972490230309855764806037926162678007123835704413446987563397215039296274284011392376712476214168102712064980525105743466478538507197193129695906493855778505896989778757106670135908297282778933245573320602956980179670276189443880408887833095884712918040121244752766231874302833722267654806961923686526043084779140619463334977324752963707131209311912937178492096112586577068851992050019841845756938463532234278458787970172475813336775592888590875040608865836583952583731860460575895231885533589337271915576935762859076766642959548416\n", + "365875133920541023597708339475551398751745668961674820300001689866097578405455663405059011460743801734145107431592692321899085652732191467121665785847467012818619981462022998539822833473977690411554535091627469014753165171533350951572072498189164528495682620588937914253997466490029455034328255338532777010430270536951080963885243885499706908650804508464697637171728621524772360886168458601182798575167244112393743676728665016196136267160674094841660309194335802495245942653648146183742652181277237557660649442739154452334388524330401607842701363475713053732685915338954755808722525390384991245697367868168589210321107375724587368165743182501131387656947091944980460619711529612075852325356014247671408826893975126794430078592548568022784753424952428336205424129961050211486932957077014394386259391812987711557011793979557514213340271816594565557866491146641205913960359340552378887760817775666191769425836080242489505532463748605667444535309613923847373052086169558281238926669954649505927414262418623825874356984192225173154137703984100039683691513876927064468556917575940344951626673551185777181750081217731673167905167463720921151790463771067178674543831153871525718153533285919096832\n", + "731750267841082047195416678951102797503491337923349640600003379732195156810911326810118022921487603468290214863185384643798171305464382934243331571694934025637239962924045997079645666947955380823109070183254938029506330343066701903144144996378329056991365241177875828507994932980058910068656510677065554020860541073902161927770487770999413817301609016929395274343457243049544721772336917202365597150334488224787487353457330032392272534321348189683320618388671604990491885307296292367485304362554475115321298885478308904668777048660803215685402726951426107465371830677909511617445050780769982491394735736337178420642214751449174736331486365002262775313894183889960921239423059224151704650712028495342817653787950253588860157185097136045569506849904856672410848259922100422973865914154028788772518783625975423114023587959115028426680543633189131115732982293282411827920718681104757775521635551332383538851672160484979011064927497211334889070619227847694746104172339116562477853339909299011854828524837247651748713968384450346308275407968200079367383027753854128937113835151880689903253347102371554363500162435463346335810334927441842303580927542134357349087662307743051436307066571838193664\n", + "1463500535682164094390833357902205595006982675846699281200006759464390313621822653620236045842975206936580429726370769287596342610928765868486663143389868051274479925848091994159291333895910761646218140366509876059012660686133403806288289992756658113982730482355751657015989865960117820137313021354131108041721082147804323855540975541998827634603218033858790548686914486099089443544673834404731194300668976449574974706914660064784545068642696379366641236777343209980983770614592584734970608725108950230642597770956617809337554097321606431370805453902852214930743661355819023234890101561539964982789471472674356841284429502898349472662972730004525550627788367779921842478846118448303409301424056990685635307575900507177720314370194272091139013699809713344821696519844200845947731828308057577545037567251950846228047175918230056853361087266378262231465964586564823655841437362209515551043271102664767077703344320969958022129854994422669778141238455695389492208344678233124955706679818598023709657049674495303497427936768900692616550815936400158734766055507708257874227670303761379806506694204743108727000324870926692671620669854883684607161855084268714698175324615486102872614133143676387328\n", + "2927001071364328188781666715804411190013965351693398562400013518928780627243645307240472091685950413873160859452741538575192685221857531736973326286779736102548959851696183988318582667791821523292436280733019752118025321372266807612576579985513316227965460964711503314031979731920235640274626042708262216083442164295608647711081951083997655269206436067717581097373828972198178887089347668809462388601337952899149949413829320129569090137285392758733282473554686419961967541229185169469941217450217900461285195541913235618675108194643212862741610907805704429861487322711638046469780203123079929965578942945348713682568859005796698945325945460009051101255576735559843684957692236896606818602848113981371270615151801014355440628740388544182278027399619426689643393039688401691895463656616115155090075134503901692456094351836460113706722174532756524462931929173129647311682874724419031102086542205329534155406688641939916044259709988845339556282476911390778984416689356466249911413359637196047419314099348990606994855873537801385233101631872800317469532111015416515748455340607522759613013388409486217454000649741853385343241339709767369214323710168537429396350649230972205745228266287352774656\n", + "5854002142728656377563333431608822380027930703386797124800027037857561254487290614480944183371900827746321718905483077150385370443715063473946652573559472205097919703392367976637165335583643046584872561466039504236050642744533615225153159971026632455930921929423006628063959463840471280549252085416524432166884328591217295422163902167995310538412872135435162194747657944396357774178695337618924777202675905798299898827658640259138180274570785517466564947109372839923935082458370338939882434900435800922570391083826471237350216389286425725483221815611408859722974645423276092939560406246159859931157885890697427365137718011593397890651890920018102202511153471119687369915384473793213637205696227962742541230303602028710881257480777088364556054799238853379286786079376803383790927313232230310180150269007803384912188703672920227413444349065513048925863858346259294623365749448838062204173084410659068310813377283879832088519419977690679112564953822781557968833378712932499822826719274392094838628198697981213989711747075602770466203263745600634939064222030833031496910681215045519226026776818972434908001299483706770686482679419534738428647420337074858792701298461944411490456532574705549312\n", + "11708004285457312755126666863217644760055861406773594249600054075715122508974581228961888366743801655492643437810966154300770740887430126947893305147118944410195839406784735953274330671167286093169745122932079008472101285489067230450306319942053264911861843858846013256127918927680942561098504170833048864333768657182434590844327804335990621076825744270870324389495315888792715548357390675237849554405351811596599797655317280518276360549141571034933129894218745679847870164916740677879764869800871601845140782167652942474700432778572851450966443631222817719445949290846552185879120812492319719862315771781394854730275436023186795781303781840036204405022306942239374739830768947586427274411392455925485082460607204057421762514961554176729112109598477706758573572158753606767581854626464460620360300538015606769824377407345840454826888698131026097851727716692518589246731498897676124408346168821318136621626754567759664177038839955381358225129907645563115937666757425864999645653438548784189677256397395962427979423494151205540932406527491201269878128444061666062993821362430091038452053553637944869816002598967413541372965358839069476857294840674149717585402596923888822980913065149411098624\n", + "23416008570914625510253333726435289520111722813547188499200108151430245017949162457923776733487603310985286875621932308601541481774860253895786610294237888820391678813569471906548661342334572186339490245864158016944202570978134460900612639884106529823723687717692026512255837855361885122197008341666097728667537314364869181688655608671981242153651488541740648778990631777585431096714781350475699108810703623193199595310634561036552721098283142069866259788437491359695740329833481355759529739601743203690281564335305884949400865557145702901932887262445635438891898581693104371758241624984639439724631543562789709460550872046373591562607563680072408810044613884478749479661537895172854548822784911850970164921214408114843525029923108353458224219196955413517147144317507213535163709252928921240720601076031213539648754814691680909653777396262052195703455433385037178493462997795352248816692337642636273243253509135519328354077679910762716450259815291126231875333514851729999291306877097568379354512794791924855958846988302411081864813054982402539756256888123332125987642724860182076904107107275889739632005197934827082745930717678138953714589681348299435170805193847777645961826130298822197248\n", + "46832017141829251020506667452870579040223445627094376998400216302860490035898324915847553466975206621970573751243864617203082963549720507791573220588475777640783357627138943813097322684669144372678980491728316033888405141956268921801225279768213059647447375435384053024511675710723770244394016683332195457335074628729738363377311217343962484307302977083481297557981263555170862193429562700951398217621407246386399190621269122073105442196566284139732519576874982719391480659666962711519059479203486407380563128670611769898801731114291405803865774524891270877783797163386208743516483249969278879449263087125579418921101744092747183125215127360144817620089227768957498959323075790345709097645569823701940329842428816229687050059846216706916448438393910827034294288635014427070327418505857842481441202152062427079297509629383361819307554792524104391406910866770074356986925995590704497633384675285272546486507018271038656708155359821525432900519630582252463750667029703459998582613754195136758709025589583849711917693976604822163729626109964805079512513776246664251975285449720364153808214214551779479264010395869654165491861435356277907429179362696598870341610387695555291923652260597644394496\n", + "93664034283658502041013334905741158080446891254188753996800432605720980071796649831695106933950413243941147502487729234406165927099441015583146441176951555281566715254277887626194645369338288745357960983456632067776810283912537843602450559536426119294894750870768106049023351421447540488788033366664390914670149257459476726754622434687924968614605954166962595115962527110341724386859125401902796435242814492772798381242538244146210884393132568279465039153749965438782961319333925423038118958406972814761126257341223539797603462228582811607731549049782541755567594326772417487032966499938557758898526174251158837842203488185494366250430254720289635240178455537914997918646151580691418195291139647403880659684857632459374100119692433413832896876787821654068588577270028854140654837011715684962882404304124854158595019258766723638615109585048208782813821733540148713973851991181408995266769350570545092973014036542077313416310719643050865801039261164504927501334059406919997165227508390273517418051179167699423835387953209644327459252219929610159025027552493328503950570899440728307616428429103558958528020791739308330983722870712555814858358725393197740683220775391110583847304521195288788992\n", + "187328068567317004082026669811482316160893782508377507993600865211441960143593299663390213867900826487882295004975458468812331854198882031166292882353903110563133430508555775252389290738676577490715921966913264135553620567825075687204901119072852238589789501741536212098046702842895080977576066733328781829340298514918953453509244869375849937229211908333925190231925054220683448773718250803805592870485628985545596762485076488292421768786265136558930078307499930877565922638667850846076237916813945629522252514682447079595206924457165623215463098099565083511135188653544834974065932999877115517797052348502317675684406976370988732500860509440579270480356911075829995837292303161382836390582279294807761319369715264918748200239384866827665793753575643308137177154540057708281309674023431369925764808608249708317190038517533447277230219170096417565627643467080297427947703982362817990533538701141090185946028073084154626832621439286101731602078522329009855002668118813839994330455016780547034836102358335398847670775906419288654918504439859220318050055104986657007901141798881456615232856858207117917056041583478616661967445741425111629716717450786395481366441550782221167694609042390577577984\n", + "374656137134634008164053339622964632321787565016755015987201730422883920287186599326780427735801652975764590009950916937624663708397764062332585764707806221126266861017111550504778581477353154981431843933826528271107241135650151374409802238145704477179579003483072424196093405685790161955152133466657563658680597029837906907018489738751699874458423816667850380463850108441366897547436501607611185740971257971091193524970152976584843537572530273117860156614999861755131845277335701692152475833627891259044505029364894159190413848914331246430926196199130167022270377307089669948131865999754231035594104697004635351368813952741977465001721018881158540960713822151659991674584606322765672781164558589615522638739430529837496400478769733655331587507151286616274354309080115416562619348046862739851529617216499416634380077035066894554460438340192835131255286934160594855895407964725635981067077402282180371892056146168309253665242878572203463204157044658019710005336237627679988660910033561094069672204716670797695341551812838577309837008879718440636100110209973314015802283597762913230465713716414235834112083166957233323934891482850223259433434901572790962732883101564442335389218084781155155968\n", + "749312274269268016328106679245929264643575130033510031974403460845767840574373198653560855471603305951529180019901833875249327416795528124665171529415612442252533722034223101009557162954706309962863687867653056542214482271300302748819604476291408954359158006966144848392186811371580323910304266933315127317361194059675813814036979477503399748916847633335700760927700216882733795094873003215222371481942515942182387049940305953169687075145060546235720313229999723510263690554671403384304951667255782518089010058729788318380827697828662492861852392398260334044540754614179339896263731999508462071188209394009270702737627905483954930003442037762317081921427644303319983349169212645531345562329117179231045277478861059674992800957539467310663175014302573232548708618160230833125238696093725479703059234432998833268760154070133789108920876680385670262510573868321189711790815929451271962134154804564360743784112292336618507330485757144406926408314089316039420010672475255359977321820067122188139344409433341595390683103625677154619674017759436881272200220419946628031604567195525826460931427432828471668224166333914466647869782965700446518866869803145581925465766203128884670778436169562310311936\n", + "1498624548538536032656213358491858529287150260067020063948806921691535681148746397307121710943206611903058360039803667750498654833591056249330343058831224884505067444068446202019114325909412619925727375735306113084428964542600605497639208952582817908718316013932289696784373622743160647820608533866630254634722388119351627628073958955006799497833695266671401521855400433765467590189746006430444742963885031884364774099880611906339374150290121092471440626459999447020527381109342806768609903334511565036178020117459576636761655395657324985723704784796520668089081509228358679792527463999016924142376418788018541405475255810967909860006884075524634163842855288606639966698338425291062691124658234358462090554957722119349985601915078934621326350028605146465097417236320461666250477392187450959406118468865997666537520308140267578217841753360771340525021147736642379423581631858902543924268309609128721487568224584673237014660971514288813852816628178632078840021344950510719954643640134244376278688818866683190781366207251354309239348035518873762544400440839893256063209134391051652921862854865656943336448332667828933295739565931400893037733739606291163850931532406257769341556872339124620623872\n", + "2997249097077072065312426716983717058574300520134040127897613843383071362297492794614243421886413223806116720079607335500997309667182112498660686117662449769010134888136892404038228651818825239851454751470612226168857929085201210995278417905165635817436632027864579393568747245486321295641217067733260509269444776238703255256147917910013598995667390533342803043710800867530935180379492012860889485927770063768729548199761223812678748300580242184942881252919998894041054762218685613537219806669023130072356040234919153273523310791314649971447409569593041336178163018456717359585054927998033848284752837576037082810950511621935819720013768151049268327685710577213279933396676850582125382249316468716924181109915444238699971203830157869242652700057210292930194834472640923332500954784374901918812236937731995333075040616280535156435683506721542681050042295473284758847163263717805087848536619218257442975136449169346474029321943028577627705633256357264157680042689901021439909287280268488752557377637733366381562732414502708618478696071037747525088800881679786512126418268782103305843725709731313886672896665335657866591479131862801786075467479212582327701863064812515538683113744678249241247744\n", + "5994498194154144130624853433967434117148601040268080255795227686766142724594985589228486843772826447612233440159214671001994619334364224997321372235324899538020269776273784808076457303637650479702909502941224452337715858170402421990556835810331271634873264055729158787137494490972642591282434135466521018538889552477406510512295835820027197991334781066685606087421601735061870360758984025721778971855540127537459096399522447625357496601160484369885762505839997788082109524437371227074439613338046260144712080469838306547046621582629299942894819139186082672356326036913434719170109855996067696569505675152074165621901023243871639440027536302098536655371421154426559866793353701164250764498632937433848362219830888477399942407660315738485305400114420585860389668945281846665001909568749803837624473875463990666150081232561070312871367013443085362100084590946569517694326527435610175697073238436514885950272898338692948058643886057155255411266512714528315360085379802042879818574560536977505114755275466732763125464829005417236957392142075495050177601763359573024252836537564206611687451419462627773345793330671315733182958263725603572150934958425164655403726129625031077366227489356498482495488\n", + "11988996388308288261249706867934868234297202080536160511590455373532285449189971178456973687545652895224466880318429342003989238668728449994642744470649799076040539552547569616152914607275300959405819005882448904675431716340804843981113671620662543269746528111458317574274988981945285182564868270933042037077779104954813021024591671640054395982669562133371212174843203470123740721517968051443557943711080255074918192799044895250714993202320968739771525011679995576164219048874742454148879226676092520289424160939676613094093243165258599885789638278372165344712652073826869438340219711992135393139011350304148331243802046487743278880055072604197073310742842308853119733586707402328501528997265874867696724439661776954799884815320631476970610800228841171720779337890563693330003819137499607675248947750927981332300162465122140625742734026886170724200169181893139035388653054871220351394146476873029771900545796677385896117287772114310510822533025429056630720170759604085759637149121073955010229510550933465526250929658010834473914784284150990100355203526719146048505673075128413223374902838925255546691586661342631466365916527451207144301869916850329310807452259250062154732454978712996964990976\n", + "23977992776616576522499413735869736468594404161072321023180910747064570898379942356913947375091305790448933760636858684007978477337456899989285488941299598152081079105095139232305829214550601918811638011764897809350863432681609687962227343241325086539493056222916635148549977963890570365129736541866084074155558209909626042049183343280108791965339124266742424349686406940247481443035936102887115887422160510149836385598089790501429986404641937479543050023359991152328438097749484908297758453352185040578848321879353226188186486330517199771579276556744330689425304147653738876680439423984270786278022700608296662487604092975486557760110145208394146621485684617706239467173414804657003057994531749735393448879323553909599769630641262953941221600457682343441558675781127386660007638274999215350497895501855962664600324930244281251485468053772341448400338363786278070777306109742440702788292953746059543801091593354771792234575544228621021645066050858113261440341519208171519274298242147910020459021101866931052501859316021668947829568568301980200710407053438292097011346150256826446749805677850511093383173322685262932731833054902414288603739833700658621614904518500124309464909957425993929981952\n", + "47955985553233153044998827471739472937188808322144642046361821494129141796759884713827894750182611580897867521273717368015956954674913799978570977882599196304162158210190278464611658429101203837623276023529795618701726865363219375924454686482650173078986112445833270297099955927781140730259473083732168148311116419819252084098366686560217583930678248533484848699372813880494962886071872205774231774844321020299672771196179581002859972809283874959086100046719982304656876195498969816595516906704370081157696643758706452376372972661034399543158553113488661378850608295307477753360878847968541572556045401216593324975208185950973115520220290416788293242971369235412478934346829609314006115989063499470786897758647107819199539261282525907882443200915364686883117351562254773320015276549998430700995791003711925329200649860488562502970936107544682896800676727572556141554612219484881405576585907492119087602183186709543584469151088457242043290132101716226522880683038416343038548596484295820040918042203733862105003718632043337895659137136603960401420814106876584194022692300513652893499611355701022186766346645370525865463666109804828577207479667401317243229809037000248618929819914851987859963904\n", + "95911971106466306089997654943478945874377616644289284092723642988258283593519769427655789500365223161795735042547434736031913909349827599957141955765198392608324316420380556929223316858202407675246552047059591237403453730726438751848909372965300346157972224891666540594199911855562281460518946167464336296622232839638504168196733373120435167861356497066969697398745627760989925772143744411548463549688642040599345542392359162005719945618567749918172200093439964609313752390997939633191033813408740162315393287517412904752745945322068799086317106226977322757701216590614955506721757695937083145112090802433186649950416371901946231040440580833576586485942738470824957868693659218628012231978126998941573795517294215638399078522565051815764886401830729373766234703124509546640030553099996861401991582007423850658401299720977125005941872215089365793601353455145112283109224438969762811153171814984238175204366373419087168938302176914484086580264203432453045761366076832686077097192968591640081836084407467724210007437264086675791318274273207920802841628213753168388045384601027305786999222711402044373532693290741051730927332219609657154414959334802634486459618074000497237859639829703975719927808\n", + "191823942212932612179995309886957891748755233288578568185447285976516567187039538855311579000730446323591470085094869472063827818699655199914283911530396785216648632840761113858446633716404815350493104094119182474806907461452877503697818745930600692315944449783333081188399823711124562921037892334928672593244465679277008336393466746240870335722712994133939394797491255521979851544287488823096927099377284081198691084784718324011439891237135499836344400186879929218627504781995879266382067626817480324630786575034825809505491890644137598172634212453954645515402433181229911013443515391874166290224181604866373299900832743803892462080881161667153172971885476941649915737387318437256024463956253997883147591034588431276798157045130103631529772803661458747532469406249019093280061106199993722803983164014847701316802599441954250011883744430178731587202706910290224566218448877939525622306343629968476350408732746838174337876604353828968173160528406864906091522732153665372154194385937183280163672168814935448420014874528173351582636548546415841605683256427506336776090769202054611573998445422804088747065386581482103461854664439219314308829918669605268972919236148000994475719279659407951439855616\n", + "383647884425865224359990619773915783497510466577157136370894571953033134374079077710623158001460892647182940170189738944127655637399310399828567823060793570433297265681522227716893267432809630700986208188238364949613814922905755007395637491861201384631888899566666162376799647422249125842075784669857345186488931358554016672786933492481740671445425988267878789594982511043959703088574977646193854198754568162397382169569436648022879782474270999672688800373759858437255009563991758532764135253634960649261573150069651619010983781288275196345268424907909291030804866362459822026887030783748332580448363209732746599801665487607784924161762323334306345943770953883299831474774636874512048927912507995766295182069176862553596314090260207263059545607322917495064938812498038186560122212399987445607966328029695402633605198883908500023767488860357463174405413820580449132436897755879051244612687259936952700817465493676348675753208707657936346321056813729812183045464307330744308388771874366560327344337629870896840029749056346703165273097092831683211366512855012673552181538404109223147996890845608177494130773162964206923709328878438628617659837339210537945838472296001988951438559318815902879711232\n", + "767295768851730448719981239547831566995020933154314272741789143906066268748158155421246316002921785294365880340379477888255311274798620799657135646121587140866594531363044455433786534865619261401972416376476729899227629845811510014791274983722402769263777799133332324753599294844498251684151569339714690372977862717108033345573866984963481342890851976535757579189965022087919406177149955292387708397509136324794764339138873296045759564948541999345377600747519716874510019127983517065528270507269921298523146300139303238021967562576550392690536849815818582061609732724919644053774061567496665160896726419465493199603330975215569848323524646668612691887541907766599662949549273749024097855825015991532590364138353725107192628180520414526119091214645834990129877624996076373120244424799974891215932656059390805267210397767817000047534977720714926348810827641160898264873795511758102489225374519873905401634930987352697351506417415315872692642113627459624366090928614661488616777543748733120654688675259741793680059498112693406330546194185663366422733025710025347104363076808218446295993781691216354988261546325928413847418657756877257235319674678421075891676944592003977902877118637631805759422464\n", + "1534591537703460897439962479095663133990041866308628545483578287812132537496316310842492632005843570588731760680758955776510622549597241599314271292243174281733189062726088910867573069731238522803944832752953459798455259691623020029582549967444805538527555598266664649507198589688996503368303138679429380745955725434216066691147733969926962685781703953071515158379930044175838812354299910584775416795018272649589528678277746592091519129897083998690755201495039433749020038255967034131056541014539842597046292600278606476043935125153100785381073699631637164123219465449839288107548123134993330321793452838930986399206661950431139696647049293337225383775083815533199325899098547498048195711650031983065180728276707450214385256361040829052238182429291669980259755249992152746240488849599949782431865312118781610534420795535634000095069955441429852697621655282321796529747591023516204978450749039747810803269861974705394703012834830631745385284227254919248732181857229322977233555087497466241309377350519483587360118996225386812661092388371326732845466051420050694208726153616436892591987563382432709976523092651856827694837315513754514470639349356842151783353889184007955805754237275263611518844928\n", + "3069183075406921794879924958191326267980083732617257090967156575624265074992632621684985264011687141177463521361517911553021245099194483198628542584486348563466378125452177821735146139462477045607889665505906919596910519383246040059165099934889611077055111196533329299014397179377993006736606277358858761491911450868432133382295467939853925371563407906143030316759860088351677624708599821169550833590036545299179057356555493184183038259794167997381510402990078867498040076511934068262113082029079685194092585200557212952087870250306201570762147399263274328246438930899678576215096246269986660643586905677861972798413323900862279393294098586674450767550167631066398651798197094996096391423300063966130361456553414900428770512722081658104476364858583339960519510499984305492480977699199899564863730624237563221068841591071268000190139910882859705395243310564643593059495182047032409956901498079495621606539723949410789406025669661263490770568454509838497464363714458645954467110174994932482618754701038967174720237992450773625322184776742653465690932102840101388417452307232873785183975126764865419953046185303713655389674631027509028941278698713684303566707778368015911611508474550527223037689856\n", + "6138366150813843589759849916382652535960167465234514181934313151248530149985265243369970528023374282354927042723035823106042490198388966397257085168972697126932756250904355643470292278924954091215779331011813839193821038766492080118330199869779222154110222393066658598028794358755986013473212554717717522983822901736864266764590935879707850743126815812286060633519720176703355249417199642339101667180073090598358114713110986368366076519588335994763020805980157734996080153023868136524226164058159370388185170401114425904175740500612403141524294798526548656492877861799357152430192492539973321287173811355723945596826647801724558786588197173348901535100335262132797303596394189992192782846600127932260722913106829800857541025444163316208952729717166679921039020999968610984961955398399799129727461248475126442137683182142536000380279821765719410790486621129287186118990364094064819913802996158991243213079447898821578812051339322526981541136909019676994928727428917291908934220349989864965237509402077934349440475984901547250644369553485306931381864205680202776834904614465747570367950253529730839906092370607427310779349262055018057882557397427368607133415556736031823223016949101054446075379712\n", + "12276732301627687179519699832765305071920334930469028363868626302497060299970530486739941056046748564709854085446071646212084980396777932794514170337945394253865512501808711286940584557849908182431558662023627678387642077532984160236660399739558444308220444786133317196057588717511972026946425109435435045967645803473728533529181871759415701486253631624572121267039440353406710498834399284678203334360146181196716229426221972736732153039176671989526041611960315469992160306047736273048452328116318740776370340802228851808351481001224806283048589597053097312985755723598714304860384985079946642574347622711447891193653295603449117573176394346697803070200670524265594607192788379984385565693200255864521445826213659601715082050888326632417905459434333359842078041999937221969923910796799598259454922496950252884275366364285072000760559643531438821580973242258574372237980728188129639827605992317982486426158895797643157624102678645053963082273818039353989857454857834583817868440699979729930475018804155868698880951969803094501288739106970613862763728411360405553669809228931495140735900507059461679812184741214854621558698524110036115765114794854737214266831113472063646446033898202108892150759424\n", + "24553464603255374359039399665530610143840669860938056727737252604994120599941060973479882112093497129419708170892143292424169960793555865589028340675890788507731025003617422573881169115699816364863117324047255356775284155065968320473320799479116888616440889572266634392115177435023944053892850218870870091935291606947457067058363743518831402972507263249144242534078880706813420997668798569356406668720292362393432458852443945473464306078353343979052083223920630939984320612095472546096904656232637481552740681604457703616702962002449612566097179194106194625971511447197428609720769970159893285148695245422895782387306591206898235146352788693395606140401341048531189214385576759968771131386400511729042891652427319203430164101776653264835810918868666719684156083999874443939847821593599196518909844993900505768550732728570144001521119287062877643161946484517148744475961456376259279655211984635964972852317791595286315248205357290107926164547636078707979714909715669167635736881399959459860950037608311737397761903939606189002577478213941227725527456822720811107339618457862990281471801014118923359624369482429709243117397048220072231530229589709474428533662226944127292892067796404217784301518848\n", + "49106929206510748718078799331061220287681339721876113455474505209988241199882121946959764224186994258839416341784286584848339921587111731178056681351781577015462050007234845147762338231399632729726234648094510713550568310131936640946641598958233777232881779144533268784230354870047888107785700437741740183870583213894914134116727487037662805945014526498288485068157761413626841995337597138712813337440584724786864917704887890946928612156706687958104166447841261879968641224190945092193809312465274963105481363208915407233405924004899225132194358388212389251943022894394857219441539940319786570297390490845791564774613182413796470292705577386791212280802682097062378428771153519937542262772801023458085783304854638406860328203553306529671621837737333439368312167999748887879695643187198393037819689987801011537101465457140288003042238574125755286323892969034297488951922912752518559310423969271929945704635583190572630496410714580215852329095272157415959429819431338335271473762799918919721900075216623474795523807879212378005154956427882455451054913645441622214679236915725980562943602028237846719248738964859418486234794096440144463060459179418948857067324453888254585784135592808435568603037696\n", + "98213858413021497436157598662122440575362679443752226910949010419976482399764243893919528448373988517678832683568573169696679843174223462356113362703563154030924100014469690295524676462799265459452469296189021427101136620263873281893283197916467554465763558289066537568460709740095776215571400875483480367741166427789828268233454974075325611890029052996576970136315522827253683990675194277425626674881169449573729835409775781893857224313413375916208332895682523759937282448381890184387618624930549926210962726417830814466811848009798450264388716776424778503886045788789714438883079880639573140594780981691583129549226364827592940585411154773582424561605364194124756857542307039875084525545602046916171566609709276813720656407106613059343243675474666878736624335999497775759391286374396786075639379975602023074202930914280576006084477148251510572647785938068594977903845825505037118620847938543859891409271166381145260992821429160431704658190544314831918859638862676670542947525599837839443800150433246949591047615758424756010309912855764910902109827290883244429358473831451961125887204056475693438497477929718836972469588192880288926120918358837897714134648907776509171568271185616871137206075392\n", + "196427716826042994872315197324244881150725358887504453821898020839952964799528487787839056896747977035357665367137146339393359686348446924712226725407126308061848200028939380591049352925598530918904938592378042854202273240527746563786566395832935108931527116578133075136921419480191552431142801750966960735482332855579656536466909948150651223780058105993153940272631045654507367981350388554851253349762338899147459670819551563787714448626826751832416665791365047519874564896763780368775237249861099852421925452835661628933623696019596900528777433552849557007772091577579428877766159761279146281189561963383166259098452729655185881170822309547164849123210728388249513715084614079750169051091204093832343133219418553627441312814213226118686487350949333757473248671998995551518782572748793572151278759951204046148405861828561152012168954296503021145295571876137189955807691651010074237241695877087719782818542332762290521985642858320863409316381088629663837719277725353341085895051199675678887600300866493899182095231516849512020619825711529821804219654581766488858716947662903922251774408112951386876994955859437673944939176385760577852241836717675795428269297815553018343136542371233742274412150784\n", + "392855433652085989744630394648489762301450717775008907643796041679905929599056975575678113793495954070715330734274292678786719372696893849424453450814252616123696400057878761182098705851197061837809877184756085708404546481055493127573132791665870217863054233156266150273842838960383104862285603501933921470964665711159313072933819896301302447560116211986307880545262091309014735962700777109702506699524677798294919341639103127575428897253653503664833331582730095039749129793527560737550474499722199704843850905671323257867247392039193801057554867105699114015544183155158857755532319522558292562379123926766332518196905459310371762341644619094329698246421456776499027430169228159500338102182408187664686266438837107254882625628426452237372974701898667514946497343997991103037565145497587144302557519902408092296811723657122304024337908593006042290591143752274379911615383302020148474483391754175439565637084665524581043971285716641726818632762177259327675438555450706682171790102399351357775200601732987798364190463033699024041239651423059643608439309163532977717433895325807844503548816225902773753989911718875347889878352771521155704483673435351590856538595631106036686273084742467484548824301568\n", + "785710867304171979489260789296979524602901435550017815287592083359811859198113951151356227586991908141430661468548585357573438745393787698848906901628505232247392800115757522364197411702394123675619754369512171416809092962110986255146265583331740435726108466312532300547685677920766209724571207003867842941929331422318626145867639792602604895120232423972615761090524182618029471925401554219405013399049355596589838683278206255150857794507307007329666663165460190079498259587055121475100948999444399409687701811342646515734494784078387602115109734211398228031088366310317715511064639045116585124758247853532665036393810918620743524683289238188659396492842913552998054860338456319000676204364816375329372532877674214509765251256852904474745949403797335029892994687995982206075130290995174288605115039804816184593623447314244608048675817186012084581182287504548759823230766604040296948966783508350879131274169331049162087942571433283453637265524354518655350877110901413364343580204798702715550401203465975596728380926067398048082479302846119287216878618327065955434867790651615689007097632451805547507979823437750695779756705543042311408967346870703181713077191262212073372546169484934969097648603136\n", + "1571421734608343958978521578593959049205802871100035630575184166719623718396227902302712455173983816282861322937097170715146877490787575397697813803257010464494785600231515044728394823404788247351239508739024342833618185924221972510292531166663480871452216932625064601095371355841532419449142414007735685883858662844637252291735279585205209790240464847945231522181048365236058943850803108438810026798098711193179677366556412510301715589014614014659333326330920380158996519174110242950201897998888798819375403622685293031468989568156775204230219468422796456062176732620635431022129278090233170249516495707065330072787621837241487049366578476377318792985685827105996109720676912638001352408729632750658745065755348429019530502513705808949491898807594670059785989375991964412150260581990348577210230079609632369187246894628489216097351634372024169162364575009097519646461533208080593897933567016701758262548338662098324175885142866566907274531048709037310701754221802826728687160409597405431100802406931951193456761852134796096164958605692238574433757236654131910869735581303231378014195264903611095015959646875501391559513411086084622817934693741406363426154382524424146745092338969869938195297206272\n", + "3142843469216687917957043157187918098411605742200071261150368333439247436792455804605424910347967632565722645874194341430293754981575150795395627606514020928989571200463030089456789646809576494702479017478048685667236371848443945020585062333326961742904433865250129202190742711683064838898284828015471371767717325689274504583470559170410419580480929695890463044362096730472117887701606216877620053596197422386359354733112825020603431178029228029318666652661840760317993038348220485900403795997777597638750807245370586062937979136313550408460438936845592912124353465241270862044258556180466340499032991414130660145575243674482974098733156952754637585971371654211992219441353825276002704817459265501317490131510696858039061005027411617898983797615189340119571978751983928824300521163980697154420460159219264738374493789256978432194703268744048338324729150018195039292923066416161187795867134033403516525096677324196648351770285733133814549062097418074621403508443605653457374320819194810862201604813863902386913523704269592192329917211384477148867514473308263821739471162606462756028390529807222190031919293751002783119026822172169245635869387482812726852308765048848293490184677939739876390594412544\n", + "6285686938433375835914086314375836196823211484400142522300736666878494873584911609210849820695935265131445291748388682860587509963150301590791255213028041857979142400926060178913579293619152989404958034956097371334472743696887890041170124666653923485808867730500258404381485423366129677796569656030942743535434651378549009166941118340820839160961859391780926088724193460944235775403212433755240107192394844772718709466225650041206862356058456058637333305323681520635986076696440971800807591995555195277501614490741172125875958272627100816920877873691185824248706930482541724088517112360932680998065982828261320291150487348965948197466313905509275171942743308423984438882707650552005409634918531002634980263021393716078122010054823235797967595230378680239143957503967857648601042327961394308840920318438529476748987578513956864389406537488096676649458300036390078585846132832322375591734268066807033050193354648393296703540571466267629098124194836149242807016887211306914748641638389621724403209627727804773827047408539184384659834422768954297735028946616527643478942325212925512056781059614444380063838587502005566238053644344338491271738774965625453704617530097696586980369355879479752781188825088\n", + "12571373876866751671828172628751672393646422968800285044601473333756989747169823218421699641391870530262890583496777365721175019926300603181582510426056083715958284801852120357827158587238305978809916069912194742668945487393775780082340249333307846971617735461000516808762970846732259355593139312061885487070869302757098018333882236681641678321923718783561852177448386921888471550806424867510480214384789689545437418932451300082413724712116912117274666610647363041271972153392881943601615183991110390555003228981482344251751916545254201633841755747382371648497413860965083448177034224721865361996131965656522640582300974697931896394932627811018550343885486616847968877765415301104010819269837062005269960526042787432156244020109646471595935190460757360478287915007935715297202084655922788617681840636877058953497975157027913728778813074976193353298916600072780157171692265664644751183468536133614066100386709296786593407081142932535258196248389672298485614033774422613829497283276779243448806419255455609547654094817078368769319668845537908595470057893233055286957884650425851024113562119228888760127677175004011132476107288688676982543477549931250907409235060195393173960738711758959505562377650176\n", + "25142747753733503343656345257503344787292845937600570089202946667513979494339646436843399282783741060525781166993554731442350039852601206363165020852112167431916569603704240715654317174476611957619832139824389485337890974787551560164680498666615693943235470922001033617525941693464518711186278624123770974141738605514196036667764473363283356643847437567123704354896773843776943101612849735020960428769579379090874837864902600164827449424233824234549333221294726082543944306785763887203230367982220781110006457962964688503503833090508403267683511494764743296994827721930166896354068449443730723992263931313045281164601949395863792789865255622037100687770973233695937755530830602208021638539674124010539921052085574864312488040219292943191870380921514720956575830015871430594404169311845577235363681273754117906995950314055827457557626149952386706597833200145560314343384531329289502366937072267228132200773418593573186814162285865070516392496779344596971228067548845227658994566553558486897612838510911219095308189634156737538639337691075817190940115786466110573915769300851702048227124238457777520255354350008022264952214577377353965086955099862501814818470120390786347921477423517919011124755300352\n", + "50285495507467006687312690515006689574585691875201140178405893335027958988679292873686798565567482121051562333987109462884700079705202412726330041704224334863833139207408481431308634348953223915239664279648778970675781949575103120329360997333231387886470941844002067235051883386929037422372557248247541948283477211028392073335528946726566713287694875134247408709793547687553886203225699470041920857539158758181749675729805200329654898848467648469098666442589452165087888613571527774406460735964441562220012915925929377007007666181016806535367022989529486593989655443860333792708136898887461447984527862626090562329203898791727585579730511244074201375541946467391875511061661204416043277079348248021079842104171149728624976080438585886383740761843029441913151660031742861188808338623691154470727362547508235813991900628111654915115252299904773413195666400291120628686769062658579004733874144534456264401546837187146373628324571730141032784993558689193942456135097690455317989133107116973795225677021822438190616379268313475077278675382151634381880231572932221147831538601703404096454248476915555040510708700016044529904429154754707930173910199725003629636940240781572695842954847035838022249510600704\n", + "100570991014934013374625381030013379149171383750402280356811786670055917977358585747373597131134964242103124667974218925769400159410404825452660083408448669727666278414816962862617268697906447830479328559297557941351563899150206240658721994666462775772941883688004134470103766773858074844745114496495083896566954422056784146671057893453133426575389750268494817419587095375107772406451398940083841715078317516363499351459610400659309797696935296938197332885178904330175777227143055548812921471928883124440025831851858754014015332362033613070734045979058973187979310887720667585416273797774922895969055725252181124658407797583455171159461022488148402751083892934783751022123322408832086554158696496042159684208342299457249952160877171772767481523686058883826303320063485722377616677247382308941454725095016471627983801256223309830230504599809546826391332800582241257373538125317158009467748289068912528803093674374292747256649143460282065569987117378387884912270195380910635978266214233947590451354043644876381232758536626950154557350764303268763760463145864442295663077203406808192908496953831110081021417400032089059808858309509415860347820399450007259273880481563145391685909694071676044499021201408\n", + "201141982029868026749250762060026758298342767500804560713623573340111835954717171494747194262269928484206249335948437851538800318820809650905320166816897339455332556829633925725234537395812895660958657118595115882703127798300412481317443989332925551545883767376008268940207533547716149689490228992990167793133908844113568293342115786906266853150779500536989634839174190750215544812902797880167683430156635032726998702919220801318619595393870593876394665770357808660351554454286111097625842943857766248880051663703717508028030664724067226141468091958117946375958621775441335170832547595549845791938111450504362249316815595166910342318922044976296805502167785869567502044246644817664173108317392992084319368416684598914499904321754343545534963047372117767652606640126971444755233354494764617882909450190032943255967602512446619660461009199619093652782665601164482514747076250634316018935496578137825057606187348748585494513298286920564131139974234756775769824540390761821271956532428467895180902708087289752762465517073253900309114701528606537527520926291728884591326154406813616385816993907662220162042834800064178119617716619018831720695640798900014518547760963126290783371819388143352088998042402816\n", + "402283964059736053498501524120053516596685535001609121427247146680223671909434342989494388524539856968412498671896875703077600637641619301810640333633794678910665113659267851450469074791625791321917314237190231765406255596600824962634887978665851103091767534752016537880415067095432299378980457985980335586267817688227136586684231573812533706301559001073979269678348381500431089625805595760335366860313270065453997405838441602637239190787741187752789331540715617320703108908572222195251685887715532497760103327407435016056061329448134452282936183916235892751917243550882670341665095191099691583876222901008724498633631190333820684637844089952593611004335571739135004088493289635328346216634785984168638736833369197828999808643508687091069926094744235535305213280253942889510466708989529235765818900380065886511935205024893239320922018399238187305565331202328965029494152501268632037870993156275650115212374697497170989026596573841128262279948469513551539649080781523642543913064856935790361805416174579505524931034146507800618229403057213075055041852583457769182652308813627232771633987815324440324085669600128356239235433238037663441391281597800029037095521926252581566743638776286704177996084805632\n", + "804567928119472106997003048240107033193371070003218242854494293360447343818868685978988777049079713936824997343793751406155201275283238603621280667267589357821330227318535702900938149583251582643834628474380463530812511193201649925269775957331702206183535069504033075760830134190864598757960915971960671172535635376454273173368463147625067412603118002147958539356696763000862179251611191520670733720626540130907994811676883205274478381575482375505578663081431234641406217817144444390503371775431064995520206654814870032112122658896268904565872367832471785503834487101765340683330190382199383167752445802017448997267262380667641369275688179905187222008671143478270008176986579270656692433269571968337277473666738395657999617287017374182139852189488471070610426560507885779020933417979058471531637800760131773023870410049786478641844036798476374611130662404657930058988305002537264075741986312551300230424749394994341978053193147682256524559896939027103079298161563047285087826129713871580723610832349159011049862068293015601236458806114426150110083705166915538365304617627254465543267975630648880648171339200256712478470866476075326882782563195600058074191043852505163133487277552573408355992169611264\n", + "1609135856238944213994006096480214066386742140006436485708988586720894687637737371957977554098159427873649994687587502812310402550566477207242561334535178715642660454637071405801876299166503165287669256948760927061625022386403299850539551914663404412367070139008066151521660268381729197515921831943921342345071270752908546346736926295250134825206236004295917078713393526001724358503222383041341467441253080261815989623353766410548956763150964751011157326162862469282812435634288888781006743550862129991040413309629740064224245317792537809131744735664943571007668974203530681366660380764398766335504891604034897994534524761335282738551376359810374444017342286956540016353973158541313384866539143936674554947333476791315999234574034748364279704378976942141220853121015771558041866835958116943063275601520263546047740820099572957283688073596952749222261324809315860117976610005074528151483972625102600460849498789988683956106386295364513049119793878054206158596323126094570175652259427743161447221664698318022099724136586031202472917612228852300220167410333831076730609235254508931086535951261297761296342678400513424956941732952150653765565126391200116148382087705010326266974555105146816711984339222528\n", + "3218271712477888427988012192960428132773484280012872971417977173441789375275474743915955108196318855747299989375175005624620805101132954414485122669070357431285320909274142811603752598333006330575338513897521854123250044772806599701079103829326808824734140278016132303043320536763458395031843663887842684690142541505817092693473852590500269650412472008591834157426787052003448717006444766082682934882506160523631979246707532821097913526301929502022314652325724938565624871268577777562013487101724259982080826619259480128448490635585075618263489471329887142015337948407061362733320761528797532671009783208069795989069049522670565477102752719620748888034684573913080032707946317082626769733078287873349109894666953582631998469148069496728559408757953884282441706242031543116083733671916233886126551203040527092095481640199145914567376147193905498444522649618631720235953220010149056302967945250205200921698997579977367912212772590729026098239587756108412317192646252189140351304518855486322894443329396636044199448273172062404945835224457704600440334820667662153461218470509017862173071902522595522592685356801026849913883465904301307531130252782400232296764175410020652533949110210293633423968678445056\n", + "6436543424955776855976024385920856265546968560025745942835954346883578750550949487831910216392637711494599978750350011249241610202265908828970245338140714862570641818548285623207505196666012661150677027795043708246500089545613199402158207658653617649468280556032264606086641073526916790063687327775685369380285083011634185386947705181000539300824944017183668314853574104006897434012889532165365869765012321047263958493415065642195827052603859004044629304651449877131249742537155555124026974203448519964161653238518960256896981271170151236526978942659774284030675896814122725466641523057595065342019566416139591978138099045341130954205505439241497776069369147826160065415892634165253539466156575746698219789333907165263996938296138993457118817515907768564883412484063086232167467343832467772253102406081054184190963280398291829134752294387810996889045299237263440471906440020298112605935890500410401843397995159954735824425545181458052196479175512216824634385292504378280702609037710972645788886658793272088398896546344124809891670448915409200880669641335324306922436941018035724346143805045191045185370713602053699827766931808602615062260505564800464593528350820041305067898220420587266847937356890112\n", + "12873086849911553711952048771841712531093937120051491885671908693767157501101898975663820432785275422989199957500700022498483220404531817657940490676281429725141283637096571246415010393332025322301354055590087416493000179091226398804316415317307235298936561112064529212173282147053833580127374655551370738760570166023268370773895410362001078601649888034367336629707148208013794868025779064330731739530024642094527916986830131284391654105207718008089258609302899754262499485074311110248053948406897039928323306477037920513793962542340302473053957885319548568061351793628245450933283046115190130684039132832279183956276198090682261908411010878482995552138738295652320130831785268330507078932313151493396439578667814330527993876592277986914237635031815537129766824968126172464334934687664935544506204812162108368381926560796583658269504588775621993778090598474526880943812880040596225211871781000820803686795990319909471648851090362916104392958351024433649268770585008756561405218075421945291577773317586544176797793092688249619783340897830818401761339282670648613844873882036071448692287610090382090370741427204107399655533863617205230124521011129600929187056701640082610135796440841174533695874713780224\n", + "25746173699823107423904097543683425062187874240102983771343817387534315002203797951327640865570550845978399915001400044996966440809063635315880981352562859450282567274193142492830020786664050644602708111180174832986000358182452797608632830634614470597873122224129058424346564294107667160254749311102741477521140332046536741547790820724002157203299776068734673259414296416027589736051558128661463479060049284189055833973660262568783308210415436016178517218605799508524998970148622220496107896813794079856646612954075841027587925084680604946107915770639097136122703587256490901866566092230380261368078265664558367912552396181364523816822021756965991104277476591304640261663570536661014157864626302986792879157335628661055987753184555973828475270063631074259533649936252344928669869375329871089012409624324216736763853121593167316539009177551243987556181196949053761887625760081192450423743562001641607373591980639818943297702180725832208785916702048867298537541170017513122810436150843890583155546635173088353595586185376499239566681795661636803522678565341297227689747764072142897384575220180764180741482854408214799311067727234410460249042022259201858374113403280165220271592881682349067391749427560448\n", + "51492347399646214847808195087366850124375748480205967542687634775068630004407595902655281731141101691956799830002800089993932881618127270631761962705125718900565134548386284985660041573328101289205416222360349665972000716364905595217265661269228941195746244448258116848693128588215334320509498622205482955042280664093073483095581641448004314406599552137469346518828592832055179472103116257322926958120098568378111667947320525137566616420830872032357034437211599017049997940297244440992215793627588159713293225908151682055175850169361209892215831541278194272245407174512981803733132184460760522736156531329116735825104792362729047633644043513931982208554953182609280523327141073322028315729252605973585758314671257322111975506369111947656950540127262148519067299872504689857339738750659742178024819248648433473527706243186334633078018355102487975112362393898107523775251520162384900847487124003283214747183961279637886595404361451664417571833404097734597075082340035026245620872301687781166311093270346176707191172370752998479133363591323273607045357130682594455379495528144285794769150440361528361482965708816429598622135454468820920498084044518403716748226806560330440543185763364698134783498855120896\n", + "102984694799292429695616390174733700248751496960411935085375269550137260008815191805310563462282203383913599660005600179987865763236254541263523925410251437801130269096772569971320083146656202578410832444720699331944001432729811190434531322538457882391492488896516233697386257176430668641018997244410965910084561328186146966191163282896008628813199104274938693037657185664110358944206232514645853916240197136756223335894641050275133232841661744064714068874423198034099995880594488881984431587255176319426586451816303364110351700338722419784431663082556388544490814349025963607466264368921521045472313062658233471650209584725458095267288087027863964417109906365218561046654282146644056631458505211947171516629342514644223951012738223895313901080254524297038134599745009379714679477501319484356049638497296866947055412486372669266156036710204975950224724787796215047550503040324769801694974248006566429494367922559275773190808722903328835143666808195469194150164680070052491241744603375562332622186540692353414382344741505996958266727182646547214090714261365188910758991056288571589538300880723056722965931417632859197244270908937641840996168089036807433496453613120660881086371526729396269566997710241792\n", + "205969389598584859391232780349467400497502993920823870170750539100274520017630383610621126924564406767827199320011200359975731526472509082527047850820502875602260538193545139942640166293312405156821664889441398663888002865459622380869062645076915764782984977793032467394772514352861337282037994488821931820169122656372293932382326565792017257626398208549877386075314371328220717888412465029291707832480394273512446671789282100550266465683323488129428137748846396068199991761188977763968863174510352638853172903632606728220703400677444839568863326165112777088981628698051927214932528737843042090944626125316466943300419169450916190534576174055727928834219812730437122093308564293288113262917010423894343033258685029288447902025476447790627802160509048594076269199490018759429358955002638968712099276994593733894110824972745338532312073420409951900449449575592430095101006080649539603389948496013132858988735845118551546381617445806657670287333616390938388300329360140104982483489206751124665244373081384706828764689483011993916533454365293094428181428522730377821517982112577143179076601761446113445931862835265718394488541817875283681992336178073614866992907226241321762172743053458792539133995420483584\n", + "411938779197169718782465560698934800995005987841647740341501078200549040035260767221242253849128813535654398640022400719951463052945018165054095701641005751204521076387090279885280332586624810313643329778882797327776005730919244761738125290153831529565969955586064934789545028705722674564075988977643863640338245312744587864764653131584034515252796417099754772150628742656441435776824930058583415664960788547024893343578564201100532931366646976258856275497692792136399983522377955527937726349020705277706345807265213456441406801354889679137726652330225554177963257396103854429865057475686084181889252250632933886600838338901832381069152348111455857668439625460874244186617128586576226525834020847788686066517370058576895804050952895581255604321018097188152538398980037518858717910005277937424198553989187467788221649945490677064624146840819903800898899151184860190202012161299079206779896992026265717977471690237103092763234891613315340574667232781876776600658720280209964966978413502249330488746162769413657529378966023987833066908730586188856362857045460755643035964225154286358153203522892226891863725670531436788977083635750567363984672356147229733985814452482643524345486106917585078267990840967168\n", + "823877558394339437564931121397869601990011975683295480683002156401098080070521534442484507698257627071308797280044801439902926105890036330108191403282011502409042152774180559770560665173249620627286659557765594655552011461838489523476250580307663059131939911172129869579090057411445349128151977955287727280676490625489175729529306263168069030505592834199509544301257485312882871553649860117166831329921577094049786687157128402201065862733293952517712550995385584272799967044755911055875452698041410555412691614530426912882813602709779358275453304660451108355926514792207708859730114951372168363778504501265867773201676677803664762138304696222911715336879250921748488373234257173152453051668041695577372133034740117153791608101905791162511208642036194376305076797960075037717435820010555874848397107978374935576443299890981354129248293681639807601797798302369720380404024322598158413559793984052531435954943380474206185526469783226630681149334465563753553201317440560419929933956827004498660977492325538827315058757932047975666133817461172377712725714090921511286071928450308572716306407045784453783727451341062873577954167271501134727969344712294459467971628904965287048690972213835170156535981681934336\n", + "1647755116788678875129862242795739203980023951366590961366004312802196160141043068884969015396515254142617594560089602879805852211780072660216382806564023004818084305548361119541121330346499241254573319115531189311104022923676979046952501160615326118263879822344259739158180114822890698256303955910575454561352981250978351459058612526336138061011185668399019088602514970625765743107299720234333662659843154188099573374314256804402131725466587905035425101990771168545599934089511822111750905396082821110825383229060853825765627205419558716550906609320902216711853029584415417719460229902744336727557009002531735546403353355607329524276609392445823430673758501843496976746468514346304906103336083391154744266069480234307583216203811582325022417284072388752610153595920150075434871640021111749696794215956749871152886599781962708258496587363279615203595596604739440760808048645196316827119587968105062871909886760948412371052939566453261362298668931127507106402634881120839859867913654008997321954984651077654630117515864095951332267634922344755425451428181843022572143856900617145432612814091568907567454902682125747155908334543002269455938689424588918935943257809930574097381944427670340313071963363868672\n", + "3295510233577357750259724485591478407960047902733181922732008625604392320282086137769938030793030508285235189120179205759611704423560145320432765613128046009636168611096722239082242660692998482509146638231062378622208045847353958093905002321230652236527759644688519478316360229645781396512607911821150909122705962501956702918117225052672276122022371336798038177205029941251531486214599440468667325319686308376199146748628513608804263450933175810070850203981542337091199868179023644223501810792165642221650766458121707651531254410839117433101813218641804433423706059168830835438920459805488673455114018005063471092806706711214659048553218784891646861347517003686993953492937028692609812206672166782309488532138960468615166432407623164650044834568144777505220307191840300150869743280042223499393588431913499742305773199563925416516993174726559230407191193209478881521616097290392633654239175936210125743819773521896824742105879132906522724597337862255014212805269762241679719735827308017994643909969302155309260235031728191902664535269844689510850902856363686045144287713801234290865225628183137815134909805364251494311816669086004538911877378849177837871886515619861148194763888855340680626143926727737344\n", + "6591020467154715500519448971182956815920095805466363845464017251208784640564172275539876061586061016570470378240358411519223408847120290640865531226256092019272337222193444478164485321385996965018293276462124757244416091694707916187810004642461304473055519289377038956632720459291562793025215823642301818245411925003913405836234450105344552244044742673596076354410059882503062972429198880937334650639372616752398293497257027217608526901866351620141700407963084674182399736358047288447003621584331284443301532916243415303062508821678234866203626437283608866847412118337661670877840919610977346910228036010126942185613413422429318097106437569783293722695034007373987906985874057385219624413344333564618977064277920937230332864815246329300089669136289555010440614383680600301739486560084446998787176863826999484611546399127850833033986349453118460814382386418957763043232194580785267308478351872420251487639547043793649484211758265813045449194675724510028425610539524483359439471654616035989287819938604310618520470063456383805329070539689379021701805712727372090288575427602468581730451256366275630269819610728502988623633338172009077823754757698355675743773031239722296389527777710681361252287853455474688\n", + "13182040934309431001038897942365913631840191610932727690928034502417569281128344551079752123172122033140940756480716823038446817694240581281731062452512184038544674444386888956328970642771993930036586552924249514488832183389415832375620009284922608946111038578754077913265440918583125586050431647284603636490823850007826811672468900210689104488089485347192152708820119765006125944858397761874669301278745233504796586994514054435217053803732703240283400815926169348364799472716094576894007243168662568886603065832486830606125017643356469732407252874567217733694824236675323341755681839221954693820456072020253884371226826844858636194212875139566587445390068014747975813971748114770439248826688667129237954128555841874460665729630492658600179338272579110020881228767361200603478973120168893997574353727653998969223092798255701666067972698906236921628764772837915526086464389161570534616956703744840502975279094087587298968423516531626090898389351449020056851221079048966718878943309232071978575639877208621237040940126912767610658141079378758043403611425454744180577150855204937163460902512732551260539639221457005977247266676344018155647509515396711351487546062479444592779055555421362722504575706910949376\n", + "26364081868618862002077795884731827263680383221865455381856069004835138562256689102159504246344244066281881512961433646076893635388481162563462124905024368077089348888773777912657941285543987860073173105848499028977664366778831664751240018569845217892222077157508155826530881837166251172100863294569207272981647700015653623344937800421378208976178970694384305417640239530012251889716795523749338602557490467009593173989028108870434107607465406480566801631852338696729598945432189153788014486337325137773206131664973661212250035286712939464814505749134435467389648473350646683511363678443909387640912144040507768742453653689717272388425750279133174890780136029495951627943496229540878497653377334258475908257111683748921331459260985317200358676545158220041762457534722401206957946240337787995148707455307997938446185596511403332135945397812473843257529545675831052172928778323141069233913407489681005950558188175174597936847033063252181796778702898040113702442158097933437757886618464143957151279754417242474081880253825535221316282158757516086807222850909488361154301710409874326921805025465102521079278442914011954494533352688036311295019030793422702975092124958889185558111110842725445009151413821898752\n", + "52728163737237724004155591769463654527360766443730910763712138009670277124513378204319008492688488132563763025922867292153787270776962325126924249810048736154178697777547555825315882571087975720146346211696998057955328733557663329502480037139690435784444154315016311653061763674332502344201726589138414545963295400031307246689875600842756417952357941388768610835280479060024503779433591047498677205114980934019186347978056217740868215214930812961133603263704677393459197890864378307576028972674650275546412263329947322424500070573425878929629011498268870934779296946701293367022727356887818775281824288081015537484907307379434544776851500558266349781560272058991903255886992459081756995306754668516951816514223367497842662918521970634400717353090316440083524915069444802413915892480675575990297414910615995876892371193022806664271890795624947686515059091351662104345857556646282138467826814979362011901116376350349195873694066126504363593557405796080227404884316195866875515773236928287914302559508834484948163760507651070442632564317515032173614445701818976722308603420819748653843610050930205042158556885828023908989066705376072622590038061586845405950184249917778371116222221685450890018302827643797504\n", + "105456327474475448008311183538927309054721532887461821527424276019340554249026756408638016985376976265127526051845734584307574541553924650253848499620097472308357395555095111650631765142175951440292692423393996115910657467115326659004960074279380871568888308630032623306123527348665004688403453178276829091926590800062614493379751201685512835904715882777537221670560958120049007558867182094997354410229961868038372695956112435481736430429861625922267206527409354786918395781728756615152057945349300551092824526659894644849000141146851757859258022996537741869558593893402586734045454713775637550563648576162031074969814614758869089553703001116532699563120544117983806511773984918163513990613509337033903633028446734995685325837043941268801434706180632880167049830138889604827831784961351151980594829821231991753784742386045613328543781591249895373030118182703324208691715113292564276935653629958724023802232752700698391747388132253008727187114811592160454809768632391733751031546473856575828605119017668969896327521015302140885265128635030064347228891403637953444617206841639497307687220101860410084317113771656047817978133410752145245180076123173690811900368499835556742232444443370901780036605655287595008\n", + "210912654948950896016622367077854618109443065774923643054848552038681108498053512817276033970753952530255052103691469168615149083107849300507696999240194944616714791110190223301263530284351902880585384846787992231821314934230653318009920148558761743137776617260065246612247054697330009376806906356553658183853181600125228986759502403371025671809431765555074443341121916240098015117734364189994708820459923736076745391912224870963472860859723251844534413054818709573836791563457513230304115890698601102185649053319789289698000282293703515718516045993075483739117187786805173468090909427551275101127297152324062149939629229517738179107406002233065399126241088235967613023547969836327027981227018674067807266056893469991370651674087882537602869412361265760334099660277779209655663569922702303961189659642463983507569484772091226657087563182499790746060236365406648417383430226585128553871307259917448047604465505401396783494776264506017454374229623184320909619537264783467502063092947713151657210238035337939792655042030604281770530257270060128694457782807275906889234413683278994615374440203720820168634227543312095635956266821504290490360152246347381623800736999671113484464888886741803560073211310575190016\n", + "421825309897901792033244734155709236218886131549847286109697104077362216996107025634552067941507905060510104207382938337230298166215698601015393998480389889233429582220380446602527060568703805761170769693575984463642629868461306636019840297117523486275553234520130493224494109394660018753613812713107316367706363200250457973519004806742051343618863531110148886682243832480196030235468728379989417640919847472153490783824449741926945721719446503689068826109637419147673583126915026460608231781397202204371298106639578579396000564587407031437032091986150967478234375573610346936181818855102550202254594304648124299879258459035476358214812004466130798252482176471935226047095939672654055962454037348135614532113786939982741303348175765075205738824722531520668199320555558419311327139845404607922379319284927967015138969544182453314175126364999581492120472730813296834766860453170257107742614519834896095208931010802793566989552529012034908748459246368641819239074529566935004126185895426303314420476070675879585310084061208563541060514540120257388915565614551813778468827366557989230748880407441640337268455086624191271912533643008580980720304492694763247601473999342226968929777773483607120146422621150380032\n", + "843650619795803584066489468311418472437772263099694572219394208154724433992214051269104135883015810121020208414765876674460596332431397202030787996960779778466859164440760893205054121137407611522341539387151968927285259736922613272039680594235046972551106469040260986448988218789320037507227625426214632735412726400500915947038009613484102687237727062220297773364487664960392060470937456759978835281839694944306981567648899483853891443438893007378137652219274838295347166253830052921216463562794404408742596213279157158792001129174814062874064183972301934956468751147220693872363637710205100404509188609296248599758516918070952716429624008932261596504964352943870452094191879345308111924908074696271229064227573879965482606696351530150411477649445063041336398641111116838622654279690809215844758638569855934030277939088364906628350252729999162984240945461626593669533720906340514215485229039669792190417862021605587133979105058024069817496918492737283638478149059133870008252371790852606628840952141351759170620168122417127082121029080240514777831131229103627556937654733115978461497760814883280674536910173248382543825067286017161961440608985389526495202947998684453937859555546967214240292845242300760064\n", + "1687301239591607168132978936622836944875544526199389144438788416309448867984428102538208271766031620242040416829531753348921192664862794404061575993921559556933718328881521786410108242274815223044683078774303937854570519473845226544079361188470093945102212938080521972897976437578640075014455250852429265470825452801001831894076019226968205374475454124440595546728975329920784120941874913519957670563679389888613963135297798967707782886877786014756275304438549676590694332507660105842432927125588808817485192426558314317584002258349628125748128367944603869912937502294441387744727275420410200809018377218592497199517033836141905432859248017864523193009928705887740904188383758690616223849816149392542458128455147759930965213392703060300822955298890126082672797282222233677245308559381618431689517277139711868060555878176729813256700505459998325968481890923253187339067441812681028430970458079339584380835724043211174267958210116048139634993836985474567276956298118267740016504743581705213257681904282703518341240336244834254164242058160481029555662262458207255113875309466231956922995521629766561349073820346496765087650134572034323922881217970779052990405895997368907875719111093934428480585690484601520128\n", + "3374602479183214336265957873245673889751089052398778288877576832618897735968856205076416543532063240484080833659063506697842385329725588808123151987843119113867436657763043572820216484549630446089366157548607875709141038947690453088158722376940187890204425876161043945795952875157280150028910501704858530941650905602003663788152038453936410748950908248881191093457950659841568241883749827039915341127358779777227926270595597935415565773755572029512550608877099353181388665015320211684865854251177617634970384853116628635168004516699256251496256735889207739825875004588882775489454550840820401618036754437184994399034067672283810865718496035729046386019857411775481808376767517381232447699632298785084916256910295519861930426785406120601645910597780252165345594564444467354490617118763236863379034554279423736121111756353459626513401010919996651936963781846506374678134883625362056861940916158679168761671448086422348535916420232096279269987673970949134553912596236535480033009487163410426515363808565407036682480672489668508328484116320962059111324524916414510227750618932463913845991043259533122698147640692993530175300269144068647845762435941558105980811791994737815751438222187868856961171380969203040256\n", + "6749204958366428672531915746491347779502178104797556577755153665237795471937712410152833087064126480968161667318127013395684770659451177616246303975686238227734873315526087145640432969099260892178732315097215751418282077895380906176317444753880375780408851752322087891591905750314560300057821003409717061883301811204007327576304076907872821497901816497762382186915901319683136483767499654079830682254717559554455852541191195870831131547511144059025101217754198706362777330030640423369731708502355235269940769706233257270336009033398512502992513471778415479651750009177765550978909101681640803236073508874369988798068135344567621731436992071458092772039714823550963616753535034762464895399264597570169832513820591039723860853570812241203291821195560504330691189128888934708981234237526473726758069108558847472242223512706919253026802021839993303873927563693012749356269767250724113723881832317358337523342896172844697071832840464192558539975347941898269107825192473070960066018974326820853030727617130814073364961344979337016656968232641924118222649049832829020455501237864927827691982086519066245396295281385987060350600538288137295691524871883116211961623583989475631502876444375737713922342761938406080512\n", + "13498409916732857345063831492982695559004356209595113155510307330475590943875424820305666174128252961936323334636254026791369541318902355232492607951372476455469746631052174291280865938198521784357464630194431502836564155790761812352634889507760751560817703504644175783183811500629120600115642006819434123766603622408014655152608153815745642995803632995524764373831802639366272967534999308159661364509435119108911705082382391741662263095022288118050202435508397412725554660061280846739463417004710470539881539412466514540672018066797025005985026943556830959303500018355531101957818203363281606472147017748739977596136270689135243462873984142916185544079429647101927233507070069524929790798529195140339665027641182079447721707141624482406583642391121008661382378257777869417962468475052947453516138217117694944484447025413838506053604043679986607747855127386025498712539534501448227447763664634716675046685792345689394143665680928385117079950695883796538215650384946141920132037948653641706061455234261628146729922689958674033313936465283848236445298099665658040911002475729855655383964173038132490792590562771974120701201076576274591383049743766232423923247167978951263005752888751475427844685523876812161024\n", + "26996819833465714690127662985965391118008712419190226311020614660951181887750849640611332348256505923872646669272508053582739082637804710464985215902744952910939493262104348582561731876397043568714929260388863005673128311581523624705269779015521503121635407009288351566367623001258241200231284013638868247533207244816029310305216307631491285991607265991049528747663605278732545935069998616319322729018870238217823410164764783483324526190044576236100404871016794825451109320122561693478926834009420941079763078824933029081344036133594050011970053887113661918607000036711062203915636406726563212944294035497479955192272541378270486925747968285832371088158859294203854467014140139049859581597058390280679330055282364158895443414283248964813167284782242017322764756515555738835924936950105894907032276434235389888968894050827677012107208087359973215495710254772050997425079069002896454895527329269433350093371584691378788287331361856770234159901391767593076431300769892283840264075897307283412122910468523256293459845379917348066627872930567696472890596199331316081822004951459711310767928346076264981585181125543948241402402153152549182766099487532464847846494335957902526011505777502950855689371047753624322048\n", + "53993639666931429380255325971930782236017424838380452622041229321902363775501699281222664696513011847745293338545016107165478165275609420929970431805489905821878986524208697165123463752794087137429858520777726011346256623163047249410539558031043006243270814018576703132735246002516482400462568027277736495066414489632058620610432615262982571983214531982099057495327210557465091870139997232638645458037740476435646820329529566966649052380089152472200809742033589650902218640245123386957853668018841882159526157649866058162688072267188100023940107774227323837214000073422124407831272813453126425888588070994959910384545082756540973851495936571664742176317718588407708934028280278099719163194116780561358660110564728317790886828566497929626334569564484034645529513031111477671849873900211789814064552868470779777937788101655354024214416174719946430991420509544101994850158138005792909791054658538866700186743169382757576574662723713540468319802783535186152862601539784567680528151794614566824245820937046512586919690759834696133255745861135392945781192398662632163644009902919422621535856692152529963170362251087896482804804306305098365532198975064929695692988671915805052023011555005901711378742095507248644096\n", + "107987279333862858760510651943861564472034849676760905244082458643804727551003398562445329393026023695490586677090032214330956330551218841859940863610979811643757973048417394330246927505588174274859717041555452022692513246326094498821079116062086012486541628037153406265470492005032964800925136054555472990132828979264117241220865230525965143966429063964198114990654421114930183740279994465277290916075480952871293640659059133933298104760178304944401619484067179301804437280490246773915707336037683764319052315299732116325376144534376200047880215548454647674428000146844248815662545626906252851777176141989919820769090165513081947702991873143329484352635437176815417868056560556199438326388233561122717320221129456635581773657132995859252669139128968069291059026062222955343699747800423579628129105736941559555875576203310708048428832349439892861982841019088203989700316276011585819582109317077733400373486338765515153149325447427080936639605567070372305725203079569135361056303589229133648491641874093025173839381519669392266511491722270785891562384797325264327288019805838845243071713384305059926340724502175792965609608612610196731064397950129859391385977343831610104046023110011803422757484191014497288192\n", + "215974558667725717521021303887723128944069699353521810488164917287609455102006797124890658786052047390981173354180064428661912661102437683719881727221959623287515946096834788660493855011176348549719434083110904045385026492652188997642158232124172024973083256074306812530940984010065929601850272109110945980265657958528234482441730461051930287932858127928396229981308842229860367480559988930554581832150961905742587281318118267866596209520356609888803238968134358603608874560980493547831414672075367528638104630599464232650752289068752400095760431096909295348856000293688497631325091253812505703554352283979839641538180331026163895405983746286658968705270874353630835736113121112398876652776467122245434640442258913271163547314265991718505338278257936138582118052124445910687399495600847159256258211473883119111751152406621416096857664698879785723965682038176407979400632552023171639164218634155466800746972677531030306298650894854161873279211134140744611450406159138270722112607178458267296983283748186050347678763039338784533022983444541571783124769594650528654576039611677690486143426768610119852681449004351585931219217225220393462128795900259718782771954687663220208092046220023606845514968382028994576384\n", + "431949117335451435042042607775446257888139398707043620976329834575218910204013594249781317572104094781962346708360128857323825322204875367439763454443919246575031892193669577320987710022352697099438868166221808090770052985304377995284316464248344049946166512148613625061881968020131859203700544218221891960531315917056468964883460922103860575865716255856792459962617684459720734961119977861109163664301923811485174562636236535733192419040713219777606477936268717207217749121960987095662829344150735057276209261198928465301504578137504800191520862193818590697712000587376995262650182507625011407108704567959679283076360662052327790811967492573317937410541748707261671472226242224797753305552934244490869280884517826542327094628531983437010676556515872277164236104248891821374798991201694318512516422947766238223502304813242832193715329397759571447931364076352815958801265104046343278328437268310933601493945355062060612597301789708323746558422268281489222900812318276541444225214356916534593966567496372100695357526078677569066045966889083143566249539189301057309152079223355380972286853537220239705362898008703171862438434450440786924257591800519437565543909375326440416184092440047213691029936764057989152768\n", + "863898234670902870084085215550892515776278797414087241952659669150437820408027188499562635144208189563924693416720257714647650644409750734879526908887838493150063784387339154641975420044705394198877736332443616181540105970608755990568632928496688099892333024297227250123763936040263718407401088436443783921062631834112937929766921844207721151731432511713584919925235368919441469922239955722218327328603847622970349125272473071466384838081426439555212955872537434414435498243921974191325658688301470114552418522397856930603009156275009600383041724387637181395424001174753990525300365015250022814217409135919358566152721324104655581623934985146635874821083497414523342944452484449595506611105868488981738561769035653084654189257063966874021353113031744554328472208497783642749597982403388637025032845895532476447004609626485664387430658795519142895862728152705631917602530208092686556656874536621867202987890710124121225194603579416647493116844536562978445801624636553082888450428713833069187933134992744201390715052157355138132091933778166287132499078378602114618304158446710761944573707074440479410725796017406343724876868900881573848515183601038875131087818750652880832368184880094427382059873528115978305536\n", + "1727796469341805740168170431101785031552557594828174483905319338300875640816054376999125270288416379127849386833440515429295301288819501469759053817775676986300127568774678309283950840089410788397755472664887232363080211941217511981137265856993376199784666048594454500247527872080527436814802176872887567842125263668225875859533843688415442303462865023427169839850470737838882939844479911444436654657207695245940698250544946142932769676162852879110425911745074868828870996487843948382651317376602940229104837044795713861206018312550019200766083448775274362790848002349507981050600730030500045628434818271838717132305442648209311163247869970293271749642166994829046685888904968899191013222211736977963477123538071306169308378514127933748042706226063489108656944416995567285499195964806777274050065691791064952894009219252971328774861317591038285791725456305411263835205060416185373113313749073243734405975781420248242450389207158833294986233689073125956891603249273106165776900857427666138375866269985488402781430104314710276264183867556332574264998156757204229236608316893421523889147414148880958821451592034812687449753737801763147697030367202077750262175637501305761664736369760188854764119747056231956611072\n", + "3455592938683611480336340862203570063105115189656348967810638676601751281632108753998250540576832758255698773666881030858590602577639002939518107635551353972600255137549356618567901680178821576795510945329774464726160423882435023962274531713986752399569332097188909000495055744161054873629604353745775135684250527336451751719067687376830884606925730046854339679700941475677765879688959822888873309314415390491881396501089892285865539352325705758220851823490149737657741992975687896765302634753205880458209674089591427722412036625100038401532166897550548725581696004699015962101201460061000091256869636543677434264610885296418622326495739940586543499284333989658093371777809937798382026444423473955926954247076142612338616757028255867496085412452126978217313888833991134570998391929613554548100131383582129905788018438505942657549722635182076571583450912610822527670410120832370746226627498146487468811951562840496484900778414317666589972467378146251913783206498546212331553801714855332276751732539970976805562860208629420552528367735112665148529996313514408458473216633786843047778294828297761917642903184069625374899507475603526295394060734404155500524351275002611523329472739520377709528239494112463913222144\n", + "6911185877367222960672681724407140126210230379312697935621277353203502563264217507996501081153665516511397547333762061717181205155278005879036215271102707945200510275098713237135803360357643153591021890659548929452320847764870047924549063427973504799138664194377818000990111488322109747259208707491550271368501054672903503438135374753661769213851460093708679359401882951355531759377919645777746618628830780983762793002179784571731078704651411516441703646980299475315483985951375793530605269506411760916419348179182855444824073250200076803064333795101097451163392009398031924202402920122000182513739273087354868529221770592837244652991479881173086998568667979316186743555619875596764052888846947911853908494152285224677233514056511734992170824904253956434627777667982269141996783859227109096200262767164259811576036877011885315099445270364153143166901825221645055340820241664741492453254996292974937623903125680992969801556828635333179944934756292503827566412997092424663107603429710664553503465079941953611125720417258841105056735470225330297059992627028816916946433267573686095556589656595523835285806368139250749799014951207052590788121468808311001048702550005223046658945479040755419056478988224927826444288\n", + "13822371754734445921345363448814280252420460758625395871242554706407005126528435015993002162307331033022795094667524123434362410310556011758072430542205415890401020550197426474271606720715286307182043781319097858904641695529740095849098126855947009598277328388755636001980222976644219494518417414983100542737002109345807006876270749507323538427702920187417358718803765902711063518755839291555493237257661561967525586004359569143462157409302823032883407293960598950630967971902751587061210539012823521832838696358365710889648146500400153606128667590202194902326784018796063848404805840244000365027478546174709737058443541185674489305982959762346173997137335958632373487111239751193528105777693895823707816988304570449354467028113023469984341649808507912869255555335964538283993567718454218192400525534328519623152073754023770630198890540728306286333803650443290110681640483329482984906509992585949875247806251361985939603113657270666359889869512585007655132825994184849326215206859421329107006930159883907222251440834517682210113470940450660594119985254057633833892866535147372191113179313191047670571612736278501499598029902414105181576242937616622002097405100010446093317890958081510838112957976449855652888576\n", + "27644743509468891842690726897628560504840921517250791742485109412814010253056870031986004324614662066045590189335048246868724820621112023516144861084410831780802041100394852948543213441430572614364087562638195717809283391059480191698196253711894019196554656777511272003960445953288438989036834829966201085474004218691614013752541499014647076855405840374834717437607531805422127037511678583110986474515323123935051172008719138286924314818605646065766814587921197901261935943805503174122421078025647043665677392716731421779296293000800307212257335180404389804653568037592127696809611680488000730054957092349419474116887082371348978611965919524692347994274671917264746974222479502387056211555387791647415633976609140898708934056226046939968683299617015825738511110671929076567987135436908436384801051068657039246304147508047541260397781081456612572667607300886580221363280966658965969813019985171899750495612502723971879206227314541332719779739025170015310265651988369698652430413718842658214013860319767814444502881669035364420226941880901321188239970508115267667785733070294744382226358626382095341143225472557002999196059804828210363152485875233244004194810200020892186635781916163021676225915952899711305777152\n", + "55289487018937783685381453795257121009681843034501583484970218825628020506113740063972008649229324132091180378670096493737449641242224047032289722168821663561604082200789705897086426882861145228728175125276391435618566782118960383396392507423788038393109313555022544007920891906576877978073669659932402170948008437383228027505082998029294153710811680749669434875215063610844254075023357166221972949030646247870102344017438276573848629637211292131533629175842395802523871887611006348244842156051294087331354785433462843558592586001600614424514670360808779609307136075184255393619223360976001460109914184698838948233774164742697957223931839049384695988549343834529493948444959004774112423110775583294831267953218281797417868112452093879937366599234031651477022221343858153135974270873816872769602102137314078492608295016095082520795562162913225145335214601773160442726561933317931939626039970343799500991225005447943758412454629082665439559478050340030620531303976739397304860827437685316428027720639535628889005763338070728840453883761802642376479941016230535335571466140589488764452717252764190682286450945114005998392119609656420726304971750466488008389620400041784373271563832326043352451831905799422611554304\n", + "110578974037875567370762907590514242019363686069003166969940437651256041012227480127944017298458648264182360757340192987474899282484448094064579444337643327123208164401579411794172853765722290457456350250552782871237133564237920766792785014847576076786218627110045088015841783813153755956147339319864804341896016874766456055010165996058588307421623361499338869750430127221688508150046714332443945898061292495740204688034876553147697259274422584263067258351684791605047743775222012696489684312102588174662709570866925687117185172003201228849029340721617559218614272150368510787238446721952002920219828369397677896467548329485395914447863678098769391977098687669058987896889918009548224846221551166589662535906436563594835736224904187759874733198468063302954044442687716306271948541747633745539204204274628156985216590032190165041591124325826450290670429203546320885453123866635863879252079940687599001982450010895887516824909258165330879118956100680061241062607953478794609721654875370632856055441279071257778011526676141457680907767523605284752959882032461070671142932281178977528905434505528381364572901890228011996784239219312841452609943500932976016779240800083568746543127664652086704903663811598845223108608\n", + "221157948075751134741525815181028484038727372138006333939880875302512082024454960255888034596917296528364721514680385974949798564968896188129158888675286654246416328803158823588345707531444580914912700501105565742474267128475841533585570029695152153572437254220090176031683567626307511912294678639729608683792033749532912110020331992117176614843246722998677739500860254443377016300093428664887891796122584991480409376069753106295394518548845168526134516703369583210095487550444025392979368624205176349325419141733851374234370344006402457698058681443235118437228544300737021574476893443904005840439656738795355792935096658970791828895727356197538783954197375338117975793779836019096449692443102333179325071812873127189671472449808375519749466396936126605908088885375432612543897083495267491078408408549256313970433180064380330083182248651652900581340858407092641770906247733271727758504159881375198003964900021791775033649818516330661758237912201360122482125215906957589219443309750741265712110882558142515556023053352282915361815535047210569505919764064922141342285864562357955057810869011056762729145803780456023993568478438625682905219887001865952033558481600167137493086255329304173409807327623197690446217216\n", + "442315896151502269483051630362056968077454744276012667879761750605024164048909920511776069193834593056729443029360771949899597129937792376258317777350573308492832657606317647176691415062889161829825401002211131484948534256951683067171140059390304307144874508440180352063367135252615023824589357279459217367584067499065824220040663984234353229686493445997355479001720508886754032600186857329775783592245169982960818752139506212590789037097690337052269033406739166420190975100888050785958737248410352698650838283467702748468740688012804915396117362886470236874457088601474043148953786887808011680879313477590711585870193317941583657791454712395077567908394750676235951587559672038192899384886204666358650143625746254379342944899616751039498932793872253211816177770750865225087794166990534982156816817098512627940866360128760660166364497303305801162681716814185283541812495466543455517008319762750396007929800043583550067299637032661323516475824402720244964250431813915178438886619501482531424221765116285031112046106704565830723631070094421139011839528129844282684571729124715910115621738022113525458291607560912047987136956877251365810439774003731904067116963200334274986172510658608346819614655246395380892434432\n", + "884631792303004538966103260724113936154909488552025335759523501210048328097819841023552138387669186113458886058721543899799194259875584752516635554701146616985665315212635294353382830125778323659650802004422262969897068513903366134342280118780608614289749016880360704126734270505230047649178714558918434735168134998131648440081327968468706459372986891994710958003441017773508065200373714659551567184490339965921637504279012425181578074195380674104538066813478332840381950201776101571917474496820705397301676566935405496937481376025609830792234725772940473748914177202948086297907573775616023361758626955181423171740386635883167315582909424790155135816789501352471903175119344076385798769772409332717300287251492508758685889799233502078997865587744506423632355541501730450175588333981069964313633634197025255881732720257521320332728994606611602325363433628370567083624990933086911034016639525500792015859600087167100134599274065322647032951648805440489928500863627830356877773239002965062848443530232570062224092213409131661447262140188842278023679056259688565369143458249431820231243476044227050916583215121824095974273913754502731620879548007463808134233926400668549972345021317216693639229310492790761784868864\n", + "1769263584606009077932206521448227872309818977104050671519047002420096656195639682047104276775338372226917772117443087799598388519751169505033271109402293233971330630425270588706765660251556647319301604008844525939794137027806732268684560237561217228579498033760721408253468541010460095298357429117836869470336269996263296880162655936937412918745973783989421916006882035547016130400747429319103134368980679931843275008558024850363156148390761348209076133626956665680763900403552203143834948993641410794603353133870810993874962752051219661584469451545880947497828354405896172595815147551232046723517253910362846343480773271766334631165818849580310271633579002704943806350238688152771597539544818665434600574502985017517371779598467004157995731175489012847264711083003460900351176667962139928627267268394050511763465440515042640665457989213223204650726867256741134167249981866173822068033279051001584031719200174334200269198548130645294065903297610880979857001727255660713755546478005930125696887060465140124448184426818263322894524280377684556047358112519377130738286916498863640462486952088454101833166430243648191948547827509005463241759096014927616268467852801337099944690042634433387278458620985581523569737728\n", + "3538527169212018155864413042896455744619637954208101343038094004840193312391279364094208553550676744453835544234886175599196777039502339010066542218804586467942661260850541177413531320503113294638603208017689051879588274055613464537369120475122434457158996067521442816506937082020920190596714858235673738940672539992526593760325311873874825837491947567978843832013764071094032260801494858638206268737961359863686550017116049700726312296781522696418152267253913331361527800807104406287669897987282821589206706267741621987749925504102439323168938903091761894995656708811792345191630295102464093447034507820725692686961546543532669262331637699160620543267158005409887612700477376305543195079089637330869201149005970035034743559196934008315991462350978025694529422166006921800702353335924279857254534536788101023526930881030085281330915978426446409301453734513482268334499963732347644136066558102003168063438400348668400538397096261290588131806595221761959714003454511321427511092956011860251393774120930280248896368853636526645789048560755369112094716225038754261476573832997727280924973904176908203666332860487296383897095655018010926483518192029855232536935705602674199889380085268866774556917241971163047139475456\n", + "7077054338424036311728826085792911489239275908416202686076188009680386624782558728188417107101353488907671088469772351198393554079004678020133084437609172935885322521701082354827062641006226589277206416035378103759176548111226929074738240950244868914317992135042885633013874164041840381193429716471347477881345079985053187520650623747749651674983895135957687664027528142188064521602989717276412537475922719727373100034232099401452624593563045392836304534507826662723055601614208812575339795974565643178413412535483243975499851008204878646337877806183523789991313417623584690383260590204928186894069015641451385373923093087065338524663275398321241086534316010819775225400954752611086390158179274661738402298011940070069487118393868016631982924701956051389058844332013843601404706671848559714509069073576202047053861762060170562661831956852892818602907469026964536668999927464695288272133116204006336126876800697336801076794192522581176263613190443523919428006909022642855022185912023720502787548241860560497792737707273053291578097121510738224189432450077508522953147665995454561849947808353816407332665720974592767794191310036021852967036384059710465073871411205348399778760170537733549113834483942326094278950912\n", + "14154108676848072623457652171585822978478551816832405372152376019360773249565117456376834214202706977815342176939544702396787108158009356040266168875218345871770645043402164709654125282012453178554412832070756207518353096222453858149476481900489737828635984270085771266027748328083680762386859432942694955762690159970106375041301247495499303349967790271915375328055056284376129043205979434552825074951845439454746200068464198802905249187126090785672609069015653325446111203228417625150679591949131286356826825070966487950999702016409757292675755612367047579982626835247169380766521180409856373788138031282902770747846186174130677049326550796642482173068632021639550450801909505222172780316358549323476804596023880140138974236787736033263965849403912102778117688664027687202809413343697119429018138147152404094107723524120341125323663913705785637205814938053929073337999854929390576544266232408012672253753601394673602153588385045162352527226380887047838856013818045285710044371824047441005575096483721120995585475414546106583156194243021476448378864900155017045906295331990909123699895616707632814665331441949185535588382620072043705934072768119420930147742822410696799557520341075467098227668967884652188557901824\n", + "28308217353696145246915304343171645956957103633664810744304752038721546499130234912753668428405413955630684353879089404793574216316018712080532337750436691743541290086804329419308250564024906357108825664141512415036706192444907716298952963800979475657271968540171542532055496656167361524773718865885389911525380319940212750082602494990998606699935580543830750656110112568752258086411958869105650149903690878909492400136928397605810498374252181571345218138031306650892222406456835250301359183898262572713653650141932975901999404032819514585351511224734095159965253670494338761533042360819712747576276062565805541495692372348261354098653101593284964346137264043279100901603819010444345560632717098646953609192047760280277948473575472066527931698807824205556235377328055374405618826687394238858036276294304808188215447048240682250647327827411571274411629876107858146675999709858781153088532464816025344507507202789347204307176770090324705054452761774095677712027636090571420088743648094882011150192967442241991170950829092213166312388486042952896757729800310034091812590663981818247399791233415265629330662883898371071176765240144087411868145536238841860295485644821393599115040682150934196455337935769304377115803648\n", + "56616434707392290493830608686343291913914207267329621488609504077443092998260469825507336856810827911261368707758178809587148432632037424161064675500873383487082580173608658838616501128049812714217651328283024830073412384889815432597905927601958951314543937080343085064110993312334723049547437731770779823050760639880425500165204989981997213399871161087661501312220225137504516172823917738211300299807381757818984800273856795211620996748504363142690436276062613301784444812913670500602718367796525145427307300283865951803998808065639029170703022449468190319930507340988677523066084721639425495152552125131611082991384744696522708197306203186569928692274528086558201803207638020888691121265434197293907218384095520560555896947150944133055863397615648411112470754656110748811237653374788477716072552588609616376430894096481364501294655654823142548823259752215716293351999419717562306177064929632050689015014405578694408614353540180649410108905523548191355424055272181142840177487296189764022300385934884483982341901658184426332624776972085905793515459600620068183625181327963636494799582466830531258661325767796742142353530480288174823736291072477683720590971289642787198230081364301868392910675871538608754231607296\n", + "113232869414784580987661217372686583827828414534659242977219008154886185996520939651014673713621655822522737415516357619174296865264074848322129351001746766974165160347217317677233002256099625428435302656566049660146824769779630865195811855203917902629087874160686170128221986624669446099094875463541559646101521279760851000330409979963994426799742322175323002624440450275009032345647835476422600599614763515637969600547713590423241993497008726285380872552125226603568889625827341001205436735593050290854614600567731903607997616131278058341406044898936380639861014681977355046132169443278850990305104250263222165982769489393045416394612406373139857384549056173116403606415276041777382242530868394587814436768191041121111793894301888266111726795231296822224941509312221497622475306749576955432145105177219232752861788192962729002589311309646285097646519504431432586703998839435124612354129859264101378030028811157388817228707080361298820217811047096382710848110544362285680354974592379528044600771869768967964683803316368852665249553944171811587030919201240136367250362655927272989599164933661062517322651535593484284707060960576349647472582144955367441181942579285574396460162728603736785821351743077217508463214592\n", + "226465738829569161975322434745373167655656829069318485954438016309772371993041879302029347427243311645045474831032715238348593730528149696644258702003493533948330320694434635354466004512199250856870605313132099320293649539559261730391623710407835805258175748321372340256443973249338892198189750927083119292203042559521702000660819959927988853599484644350646005248880900550018064691295670952845201199229527031275939201095427180846483986994017452570761745104250453207137779251654682002410873471186100581709229201135463807215995232262556116682812089797872761279722029363954710092264338886557701980610208500526444331965538978786090832789224812746279714769098112346232807212830552083554764485061736789175628873536382082242223587788603776532223453590462593644449883018624442995244950613499153910864290210354438465505723576385925458005178622619292570195293039008862865173407997678870249224708259718528202756060057622314777634457414160722597640435622094192765421696221088724571360709949184759056089201543739537935929367606632737705330499107888343623174061838402480272734500725311854545979198329867322125034645303071186968569414121921152699294945164289910734882363885158571148792920325457207473571642703486154435016926429184\n", + "452931477659138323950644869490746335311313658138636971908876032619544743986083758604058694854486623290090949662065430476697187461056299393288517404006987067896660641388869270708932009024398501713741210626264198640587299079118523460783247420815671610516351496642744680512887946498677784396379501854166238584406085119043404001321639919855977707198969288701292010497761801100036129382591341905690402398459054062551878402190854361692967973988034905141523490208500906414275558503309364004821746942372201163418458402270927614431990464525112233365624179595745522559444058727909420184528677773115403961220417001052888663931077957572181665578449625492559429538196224692465614425661104167109528970123473578351257747072764164484447175577207553064446907180925187288899766037248885990489901226998307821728580420708876931011447152771850916010357245238585140390586078017725730346815995357740498449416519437056405512120115244629555268914828321445195280871244188385530843392442177449142721419898369518112178403087479075871858735213265475410660998215776687246348123676804960545469001450623709091958396659734644250069290606142373937138828243842305398589890328579821469764727770317142297585840650914414947143285406972308870033852858368\n", + "905862955318276647901289738981492670622627316277273943817752065239089487972167517208117389708973246580181899324130860953394374922112598786577034808013974135793321282777738541417864018048797003427482421252528397281174598158237046921566494841631343221032702993285489361025775892997355568792759003708332477168812170238086808002643279839711955414397938577402584020995523602200072258765182683811380804796918108125103756804381708723385935947976069810283046980417001812828551117006618728009643493884744402326836916804541855228863980929050224466731248359191491045118888117455818840369057355546230807922440834002105777327862155915144363331156899250985118859076392449384931228851322208334219057940246947156702515494145528328968894351154415106128893814361850374577799532074497771980979802453996615643457160841417753862022894305543701832020714490477170280781172156035451460693631990715480996898833038874112811024240230489259110537829656642890390561742488376771061686784884354898285442839796739036224356806174958151743717470426530950821321996431553374492696247353609921090938002901247418183916793319469288500138581212284747874277656487684610797179780657159642939529455540634284595171681301828829894286570813944617740067705716736\n", + "1811725910636553295802579477962985341245254632554547887635504130478178975944335034416234779417946493160363798648261721906788749844225197573154069616027948271586642565555477082835728036097594006854964842505056794562349196316474093843132989683262686442065405986570978722051551785994711137585518007416664954337624340476173616005286559679423910828795877154805168041991047204400144517530365367622761609593836216250207513608763417446771871895952139620566093960834003625657102234013237456019286987769488804653673833609083710457727961858100448933462496718382982090237776234911637680738114711092461615844881668004211554655724311830288726662313798501970237718152784898769862457702644416668438115880493894313405030988291056657937788702308830212257787628723700749155599064148995543961959604907993231286914321682835507724045788611087403664041428980954340561562344312070902921387263981430961993797666077748225622048480460978518221075659313285780781123484976753542123373569768709796570885679593478072448713612349916303487434940853061901642643992863106748985392494707219842181876005802494836367833586638938577000277162424569495748555312975369221594359561314319285879058911081268569190343362603657659788573141627889235480135411433472\n", + "3623451821273106591605158955925970682490509265109095775271008260956357951888670068832469558835892986320727597296523443813577499688450395146308139232055896543173285131110954165671456072195188013709929685010113589124698392632948187686265979366525372884130811973141957444103103571989422275171036014833329908675248680952347232010573119358847821657591754309610336083982094408800289035060730735245523219187672432500415027217526834893543743791904279241132187921668007251314204468026474912038573975538977609307347667218167420915455923716200897866924993436765964180475552469823275361476229422184923231689763336008423109311448623660577453324627597003940475436305569797539724915405288833336876231760987788626810061976582113315875577404617660424515575257447401498311198128297991087923919209815986462573828643365671015448091577222174807328082857961908681123124688624141805842774527962861923987595332155496451244096960921957036442151318626571561562246969953507084246747139537419593141771359186956144897427224699832606974869881706123803285287985726213497970784989414439684363752011604989672735667173277877154000554324849138991497110625950738443188719122628638571758117822162537138380686725207315319577146283255778470960270822866944\n", + "7246903642546213183210317911851941364981018530218191550542016521912715903777340137664939117671785972641455194593046887627154999376900790292616278464111793086346570262221908331342912144390376027419859370020227178249396785265896375372531958733050745768261623946283914888206207143978844550342072029666659817350497361904694464021146238717695643315183508619220672167964188817600578070121461470491046438375344865000830054435053669787087487583808558482264375843336014502628408936052949824077147951077955218614695334436334841830911847432401795733849986873531928360951104939646550722952458844369846463379526672016846218622897247321154906649255194007880950872611139595079449830810577666673752463521975577253620123953164226631751154809235320849031150514894802996622396256595982175847838419631972925147657286731342030896183154444349614656165715923817362246249377248283611685549055925723847975190664310992902488193921843914072884302637253143123124493939907014168493494279074839186283542718373912289794854449399665213949739763412247606570575971452426995941569978828879368727504023209979345471334346555754308001108649698277982994221251901476886377438245257277143516235644325074276761373450414630639154292566511556941920541645733888\n", + "14493807285092426366420635823703882729962037060436383101084033043825431807554680275329878235343571945282910389186093775254309998753801580585232556928223586172693140524443816662685824288780752054839718740040454356498793570531792750745063917466101491536523247892567829776412414287957689100684144059333319634700994723809388928042292477435391286630367017238441344335928377635201156140242922940982092876750689730001660108870107339574174975167617116964528751686672029005256817872105899648154295902155910437229390668872669683661823694864803591467699973747063856721902209879293101445904917688739692926759053344033692437245794494642309813298510388015761901745222279190158899661621155333347504927043951154507240247906328453263502309618470641698062301029789605993244792513191964351695676839263945850295314573462684061792366308888699229312331431847634724492498754496567223371098111851447695950381328621985804976387843687828145768605274506286246248987879814028336986988558149678372567085436747824579589708898799330427899479526824495213141151942904853991883139957657758737455008046419958690942668693111508616002217299396555965988442503802953772754876490514554287032471288650148553522746900829261278308585133023113883841083291467776\n", + "28987614570184852732841271647407765459924074120872766202168066087650863615109360550659756470687143890565820778372187550508619997507603161170465113856447172345386281048887633325371648577561504109679437480080908712997587141063585501490127834932202983073046495785135659552824828575915378201368288118666639269401989447618777856084584954870782573260734034476882688671856755270402312280485845881964185753501379460003320217740214679148349950335234233929057503373344058010513635744211799296308591804311820874458781337745339367323647389729607182935399947494127713443804419758586202891809835377479385853518106688067384874491588989284619626597020776031523803490444558380317799323242310666695009854087902309014480495812656906527004619236941283396124602059579211986489585026383928703391353678527891700590629146925368123584732617777398458624662863695269448984997508993134446742196223702895391900762657243971609952775687375656291537210549012572492497975759628056673973977116299356745134170873495649159179417797598660855798959053648990426282303885809707983766279915315517474910016092839917381885337386223017232004434598793111931976885007605907545509752981029108574064942577300297107045493801658522556617170266046227767682166582935552\n", + "57975229140369705465682543294815530919848148241745532404336132175301727230218721101319512941374287781131641556744375101017239995015206322340930227712894344690772562097775266650743297155123008219358874960161817425995174282127171002980255669864405966146092991570271319105649657151830756402736576237333278538803978895237555712169169909741565146521468068953765377343713510540804624560971691763928371507002758920006640435480429358296699900670468467858115006746688116021027271488423598592617183608623641748917562675490678734647294779459214365870799894988255426887608839517172405783619670754958771707036213376134769748983177978569239253194041552063047606980889116760635598646484621333390019708175804618028960991625313813054009238473882566792249204119158423972979170052767857406782707357055783401181258293850736247169465235554796917249325727390538897969995017986268893484392447405790783801525314487943219905551374751312583074421098025144984995951519256113347947954232598713490268341746991298318358835595197321711597918107297980852564607771619415967532559830631034949820032185679834763770674772446034464008869197586223863953770015211815091019505962058217148129885154600594214090987603317045113234340532092455535364333165871104\n", + "115950458280739410931365086589631061839696296483491064808672264350603454460437442202639025882748575562263283113488750202034479990030412644681860455425788689381545124195550533301486594310246016438717749920323634851990348564254342005960511339728811932292185983140542638211299314303661512805473152474666557077607957790475111424338339819483130293042936137907530754687427021081609249121943383527856743014005517840013280870960858716593399801340936935716230013493376232042054542976847197185234367217247283497835125350981357469294589558918428731741599789976510853775217679034344811567239341509917543414072426752269539497966355957138478506388083104126095213961778233521271197292969242666780039416351609236057921983250627626108018476947765133584498408238316847945958340105535714813565414714111566802362516587701472494338930471109593834498651454781077795939990035972537786968784894811581567603050628975886439811102749502625166148842196050289969991903038512226695895908465197426980536683493982596636717671190394643423195836214595961705129215543238831935065119661262069899640064371359669527541349544892068928017738395172447727907540030423630182039011924116434296259770309201188428181975206634090226468681064184911070728666331742208\n", + "231900916561478821862730173179262123679392592966982129617344528701206908920874884405278051765497151124526566226977500404068959980060825289363720910851577378763090248391101066602973188620492032877435499840647269703980697128508684011921022679457623864584371966281085276422598628607323025610946304949333114155215915580950222848676679638966260586085872275815061509374854042163218498243886767055713486028011035680026561741921717433186799602681873871432460026986752464084109085953694394370468734434494566995670250701962714938589179117836857463483199579953021707550435358068689623134478683019835086828144853504539078995932711914276957012776166208252190427923556467042542394585938485333560078832703218472115843966501255252216036953895530267168996816476633695891916680211071429627130829428223133604725033175402944988677860942219187668997302909562155591879980071945075573937569789623163135206101257951772879622205499005250332297684392100579939983806077024453391791816930394853961073366987965193273435342380789286846391672429191923410258431086477663870130239322524139799280128742719339055082699089784137856035476790344895455815080060847260364078023848232868592519540618402376856363950413268180452937362128369822141457332663484416\n", + "463801833122957643725460346358524247358785185933964259234689057402413817841749768810556103530994302249053132453955000808137919960121650578727441821703154757526180496782202133205946377240984065754870999681294539407961394257017368023842045358915247729168743932562170552845197257214646051221892609898666228310431831161900445697353359277932521172171744551630123018749708084326436996487773534111426972056022071360053123483843434866373599205363747742864920053973504928168218171907388788740937468868989133991340501403925429877178358235673714926966399159906043415100870716137379246268957366039670173656289707009078157991865423828553914025552332416504380855847112934085084789171876970667120157665406436944231687933002510504432073907791060534337993632953267391783833360422142859254261658856446267209450066350805889977355721884438375337994605819124311183759960143890151147875139579246326270412202515903545759244410998010500664595368784201159879967612154048906783583633860789707922146733975930386546870684761578573692783344858383846820516862172955327740260478645048279598560257485438678110165398179568275712070953580689790911630160121694520728156047696465737185039081236804753712727900826536360905874724256739644282914665326968832\n", + "927603666245915287450920692717048494717570371867928518469378114804827635683499537621112207061988604498106264907910001616275839920243301157454883643406309515052360993564404266411892754481968131509741999362589078815922788514034736047684090717830495458337487865124341105690394514429292102443785219797332456620863662323800891394706718555865042344343489103260246037499416168652873992975547068222853944112044142720106246967686869732747198410727495485729840107947009856336436343814777577481874937737978267982681002807850859754356716471347429853932798319812086830201741432274758492537914732079340347312579414018156315983730847657107828051104664833008761711694225868170169578343753941334240315330812873888463375866005021008864147815582121068675987265906534783567666720844285718508523317712892534418900132701611779954711443768876750675989211638248622367519920287780302295750279158492652540824405031807091518488821996021001329190737568402319759935224308097813567167267721579415844293467951860773093741369523157147385566689716767693641033724345910655480520957290096559197120514970877356220330796359136551424141907161379581823260320243389041456312095392931474370078162473609507425455801653072721811749448513479288565829330653937664\n", + "1855207332491830574901841385434096989435140743735857036938756229609655271366999075242224414123977208996212529815820003232551679840486602314909767286812619030104721987128808532823785508963936263019483998725178157631845577028069472095368181435660990916674975730248682211380789028858584204887570439594664913241727324647601782789413437111730084688686978206520492074998832337305747985951094136445707888224088285440212493935373739465494396821454990971459680215894019712672872687629555154963749875475956535965362005615701719508713432942694859707865596639624173660403482864549516985075829464158680694625158828036312631967461695314215656102209329666017523423388451736340339156687507882668480630661625747776926751732010042017728295631164242137351974531813069567135333441688571437017046635425785068837800265403223559909422887537753501351978423276497244735039840575560604591500558316985305081648810063614183036977643992042002658381475136804639519870448616195627134334535443158831688586935903721546187482739046314294771133379433535387282067448691821310961041914580193118394241029941754712440661592718273102848283814322759163646520640486778082912624190785862948740156324947219014850911603306145443623498897026958577131658661307875328\n", + "3710414664983661149803682770868193978870281487471714073877512459219310542733998150484448828247954417992425059631640006465103359680973204629819534573625238060209443974257617065647571017927872526038967997450356315263691154056138944190736362871321981833349951460497364422761578057717168409775140879189329826483454649295203565578826874223460169377373956413040984149997664674611495971902188272891415776448176570880424987870747478930988793642909981942919360431788039425345745375259110309927499750951913071930724011231403439017426865885389719415731193279248347320806965729099033970151658928317361389250317656072625263934923390628431312204418659332035046846776903472680678313375015765336961261323251495553853503464020084035456591262328484274703949063626139134270666883377142874034093270851570137675600530806447119818845775075507002703956846552994489470079681151121209183001116633970610163297620127228366073955287984084005316762950273609279039740897232391254268669070886317663377173871807443092374965478092628589542266758867070774564134897383642621922083829160386236788482059883509424881323185436546205696567628645518327293041280973556165825248381571725897480312649894438029701823206612290887246997794053917154263317322615750656\n", + "7420829329967322299607365541736387957740562974943428147755024918438621085467996300968897656495908835984850119263280012930206719361946409259639069147250476120418887948515234131295142035855745052077935994900712630527382308112277888381472725742643963666699902920994728845523156115434336819550281758378659652966909298590407131157653748446920338754747912826081968299995329349222991943804376545782831552896353141760849975741494957861977587285819963885838720863576078850691490750518220619854999501903826143861448022462806878034853731770779438831462386558496694641613931458198067940303317856634722778500635312145250527869846781256862624408837318664070093693553806945361356626750031530673922522646502991107707006928040168070913182524656968549407898127252278268541333766754285748068186541703140275351201061612894239637691550151014005407913693105988978940159362302242418366002233267941220326595240254456732147910575968168010633525900547218558079481794464782508537338141772635326754347743614886184749930956185257179084533517734141549128269794767285243844167658320772473576964119767018849762646370873092411393135257291036654586082561947112331650496763143451794960625299788876059403646413224581774493995588107834308526634645231501312\n", + "14841658659934644599214731083472775915481125949886856295510049836877242170935992601937795312991817671969700238526560025860413438723892818519278138294500952240837775897030468262590284071711490104155871989801425261054764616224555776762945451485287927333399805841989457691046312230868673639100563516757319305933818597180814262315307496893840677509495825652163936599990658698445983887608753091565663105792706283521699951482989915723955174571639927771677441727152157701382981501036441239709999003807652287722896044925613756069707463541558877662924773116993389283227862916396135880606635713269445557001270624290501055739693562513725248817674637328140187387107613890722713253500063061347845045293005982215414013856080336141826365049313937098815796254504556537082667533508571496136373083406280550702402123225788479275383100302028010815827386211977957880318724604484836732004466535882440653190480508913464295821151936336021267051801094437116158963588929565017074676283545270653508695487229772369499861912370514358169067035468283098256539589534570487688335316641544947153928239534037699525292741746184822786270514582073309172165123894224663300993526286903589921250599577752118807292826449163548987991176215668617053269290463002624\n", + "29683317319869289198429462166945551830962251899773712591020099673754484341871985203875590625983635343939400477053120051720826877447785637038556276589001904481675551794060936525180568143422980208311743979602850522109529232449111553525890902970575854666799611683978915382092624461737347278201127033514638611867637194361628524630614993787681355018991651304327873199981317396891967775217506183131326211585412567043399902965979831447910349143279855543354883454304315402765963002072882479419998007615304575445792089851227512139414927083117755325849546233986778566455725832792271761213271426538891114002541248581002111479387125027450497635349274656280374774215227781445426507000126122695690090586011964430828027712160672283652730098627874197631592509009113074165335067017142992272746166812561101404804246451576958550766200604056021631654772423955915760637449208969673464008933071764881306380961017826928591642303872672042534103602188874232317927177859130034149352567090541307017390974459544738999723824741028716338134070936566196513079179069140975376670633283089894307856479068075399050585483492369645572541029164146618344330247788449326601987052573807179842501199155504237614585652898327097975982352431337234106538580926005248\n", + "59366634639738578396858924333891103661924503799547425182040199347508968683743970407751181251967270687878800954106240103441653754895571274077112553178003808963351103588121873050361136286845960416623487959205701044219058464898223107051781805941151709333599223367957830764185248923474694556402254067029277223735274388723257049261229987575362710037983302608655746399962634793783935550435012366262652423170825134086799805931959662895820698286559711086709766908608630805531926004145764958839996015230609150891584179702455024278829854166235510651699092467973557132911451665584543522426542853077782228005082497162004222958774250054900995270698549312560749548430455562890853014000252245391380181172023928861656055424321344567305460197255748395263185018018226148330670134034285984545492333625122202809608492903153917101532401208112043263309544847911831521274898417939346928017866143529762612761922035653857183284607745344085068207204377748464635854355718260068298705134181082614034781948919089477999447649482057432676268141873132393026158358138281950753341266566179788615712958136150798101170966984739291145082058328293236688660495576898653203974105147614359685002398311008475229171305796654195951964704862674468213077161852010496\n", + "118733269279477156793717848667782207323849007599094850364080398695017937367487940815502362503934541375757601908212480206883307509791142548154225106356007617926702207176243746100722272573691920833246975918411402088438116929796446214103563611882303418667198446735915661528370497846949389112804508134058554447470548777446514098522459975150725420075966605217311492799925269587567871100870024732525304846341650268173599611863919325791641396573119422173419533817217261611063852008291529917679992030461218301783168359404910048557659708332471021303398184935947114265822903331169087044853085706155564456010164994324008445917548500109801990541397098625121499096860911125781706028000504490782760362344047857723312110848642689134610920394511496790526370036036452296661340268068571969090984667250244405619216985806307834203064802416224086526619089695823663042549796835878693856035732287059525225523844071307714366569215490688170136414408755496929271708711436520136597410268362165228069563897838178955998895298964114865352536283746264786052316716276563901506682533132359577231425916272301596202341933969478582290164116656586473377320991153797306407948210295228719370004796622016950458342611593308391903929409725348936426154323704020992\n", + "237466538558954313587435697335564414647698015198189700728160797390035874734975881631004725007869082751515203816424960413766615019582285096308450212712015235853404414352487492201444545147383841666493951836822804176876233859592892428207127223764606837334396893471831323056740995693898778225609016268117108894941097554893028197044919950301450840151933210434622985599850539175135742201740049465050609692683300536347199223727838651583282793146238844346839067634434523222127704016583059835359984060922436603566336718809820097115319416664942042606796369871894228531645806662338174089706171412311128912020329988648016891835097000219603981082794197250242998193721822251563412056001008981565520724688095715446624221697285378269221840789022993581052740072072904593322680536137143938181969334500488811238433971612615668406129604832448173053238179391647326085099593671757387712071464574119050451047688142615428733138430981376340272828817510993858543417422873040273194820536724330456139127795676357911997790597928229730705072567492529572104633432553127803013365066264719154462851832544603192404683867938957164580328233313172946754641982307594612815896420590457438740009593244033900916685223186616783807858819450697872852308647408041984\n", + "474933077117908627174871394671128829295396030396379401456321594780071749469951763262009450015738165503030407632849920827533230039164570192616900425424030471706808828704974984402889090294767683332987903673645608353752467719185784856414254447529213674668793786943662646113481991387797556451218032536234217789882195109786056394089839900602901680303866420869245971199701078350271484403480098930101219385366601072694398447455677303166565586292477688693678135268869046444255408033166119670719968121844873207132673437619640194230638833329884085213592739743788457063291613324676348179412342824622257824040659977296033783670194000439207962165588394500485996387443644503126824112002017963131041449376191430893248443394570756538443681578045987162105480144145809186645361072274287876363938669000977622476867943225231336812259209664896346106476358783294652170199187343514775424142929148238100902095376285230857466276861962752680545657635021987717086834845746080546389641073448660912278255591352715823995581195856459461410145134985059144209266865106255606026730132529438308925703665089206384809367735877914329160656466626345893509283964615189225631792841180914877480019186488067801833370446373233567615717638901395745704617294816083968\n", + "949866154235817254349742789342257658590792060792758802912643189560143498939903526524018900031476331006060815265699841655066460078329140385233800850848060943413617657409949968805778180589535366665975807347291216707504935438371569712828508895058427349337587573887325292226963982775595112902436065072468435579764390219572112788179679801205803360607732841738491942399402156700542968806960197860202438770733202145388796894911354606333131172584955377387356270537738092888510816066332239341439936243689746414265346875239280388461277666659768170427185479487576914126583226649352696358824685649244515648081319954592067567340388000878415924331176789000971992774887289006253648224004035926262082898752382861786496886789141513076887363156091974324210960288291618373290722144548575752727877338001955244953735886450462673624518419329792692212952717566589304340398374687029550848285858296476201804190752570461714932553723925505361091315270043975434173669691492161092779282146897321824556511182705431647991162391712918922820290269970118288418533730212511212053460265058876617851407330178412769618735471755828658321312933252691787018567929230378451263585682361829754960038372976135603666740892746467135231435277802791491409234589632167936\n", + "1899732308471634508699485578684515317181584121585517605825286379120286997879807053048037800062952662012121630531399683310132920156658280770467601701696121886827235314819899937611556361179070733331951614694582433415009870876743139425657017790116854698675175147774650584453927965551190225804872130144936871159528780439144225576359359602411606721215465683476983884798804313401085937613920395720404877541466404290777593789822709212666262345169910754774712541075476185777021632132664478682879872487379492828530693750478560776922555333319536340854370958975153828253166453298705392717649371298489031296162639909184135134680776001756831848662353578001943985549774578012507296448008071852524165797504765723572993773578283026153774726312183948648421920576583236746581444289097151505455754676003910489907471772900925347249036838659585384425905435133178608680796749374059101696571716592952403608381505140923429865107447851010722182630540087950868347339382984322185558564293794643649113022365410863295982324783425837845640580539940236576837067460425022424106920530117753235702814660356825539237470943511657316642625866505383574037135858460756902527171364723659509920076745952271207333481785492934270462870555605582982818469179264335872\n", + "3799464616943269017398971157369030634363168243171035211650572758240573995759614106096075600125905324024243261062799366620265840313316561540935203403392243773654470629639799875223112722358141466663903229389164866830019741753486278851314035580233709397350350295549301168907855931102380451609744260289873742319057560878288451152718719204823213442430931366953967769597608626802171875227840791440809755082932808581555187579645418425332524690339821509549425082150952371554043264265328957365759744974758985657061387500957121553845110666639072681708741917950307656506332906597410785435298742596978062592325279818368270269361552003513663697324707156003887971099549156025014592896016143705048331595009531447145987547156566052307549452624367897296843841153166473493162888578194303010911509352007820979814943545801850694498073677319170768851810870266357217361593498748118203393143433185904807216763010281846859730214895702021444365261080175901736694678765968644371117128587589287298226044730821726591964649566851675691281161079880473153674134920850044848213841060235506471405629320713651078474941887023314633285251733010767148074271716921513805054342729447319019840153491904542414666963570985868540925741111211165965636938358528671744\n", + "7598929233886538034797942314738061268726336486342070423301145516481147991519228212192151200251810648048486522125598733240531680626633123081870406806784487547308941259279599750446225444716282933327806458778329733660039483506972557702628071160467418794700700591098602337815711862204760903219488520579747484638115121756576902305437438409646426884861862733907935539195217253604343750455681582881619510165865617163110375159290836850665049380679643019098850164301904743108086528530657914731519489949517971314122775001914243107690221333278145363417483835900615313012665813194821570870597485193956125184650559636736540538723104007027327394649414312007775942199098312050029185792032287410096663190019062894291975094313132104615098905248735794593687682306332946986325777156388606021823018704015641959629887091603701388996147354638341537703621740532714434723186997496236406786286866371809614433526020563693719460429791404042888730522160351803473389357531937288742234257175178574596452089461643453183929299133703351382562322159760946307348269841700089696427682120471012942811258641427302156949883774046629266570503466021534296148543433843027610108685458894638039680306983809084829333927141971737081851482222422331931273876717057343488\n", + "15197858467773076069595884629476122537452672972684140846602291032962295983038456424384302400503621296096973044251197466481063361253266246163740813613568975094617882518559199500892450889432565866655612917556659467320078967013945115405256142320934837589401401182197204675631423724409521806438977041159494969276230243513153804610874876819292853769723725467815871078390434507208687500911363165763239020331731234326220750318581673701330098761359286038197700328603809486216173057061315829463038979899035942628245550003828486215380442666556290726834967671801230626025331626389643141741194970387912250369301119273473081077446208014054654789298828624015551884398196624100058371584064574820193326380038125788583950188626264209230197810497471589187375364612665893972651554312777212043646037408031283919259774183207402777992294709276683075407243481065428869446373994992472813572573732743619228867052041127387438920859582808085777461044320703606946778715063874577484468514350357149192904178923286906367858598267406702765124644319521892614696539683400179392855364240942025885622517282854604313899767548093258533141006932043068592297086867686055220217370917789276079360613967618169658667854283943474163702964444844663862547753434114686976\n", + "30395716935546152139191769258952245074905345945368281693204582065924591966076912848768604801007242592193946088502394932962126722506532492327481627227137950189235765037118399001784901778865131733311225835113318934640157934027890230810512284641869675178802802364394409351262847448819043612877954082318989938552460487026307609221749753638585707539447450935631742156780869014417375001822726331526478040663462468652441500637163347402660197522718572076395400657207618972432346114122631658926077959798071885256491100007656972430760885333112581453669935343602461252050663252779286283482389940775824500738602238546946162154892416028109309578597657248031103768796393248200116743168129149640386652760076251577167900377252528418460395620994943178374750729225331787945303108625554424087292074816062567838519548366414805555984589418553366150814486962130857738892747989984945627145147465487238457734104082254774877841719165616171554922088641407213893557430127749154968937028700714298385808357846573812735717196534813405530249288639043785229393079366800358785710728481884051771245034565709208627799535096186517066282013864086137184594173735372110440434741835578552158721227935236339317335708567886948327405928889689327725095506868229373952\n", + "60791433871092304278383538517904490149810691890736563386409164131849183932153825697537209602014485184387892177004789865924253445013064984654963254454275900378471530074236798003569803557730263466622451670226637869280315868055780461621024569283739350357605604728788818702525694897638087225755908164637979877104920974052615218443499507277171415078894901871263484313561738028834750003645452663052956081326924937304883001274326694805320395045437144152790801314415237944864692228245263317852155919596143770512982200015313944861521770666225162907339870687204922504101326505558572566964779881551649001477204477093892324309784832056218619157195314496062207537592786496400233486336258299280773305520152503154335800754505056836920791241989886356749501458450663575890606217251108848174584149632125135677039096732829611111969178837106732301628973924261715477785495979969891254290294930974476915468208164509549755683438331232343109844177282814427787114860255498309937874057401428596771616715693147625471434393069626811060498577278087570458786158733600717571421456963768103542490069131418417255599070192373034132564027728172274369188347470744220880869483671157104317442455870472678634671417135773896654811857779378655450191013736458747904\n", + "121582867742184608556767077035808980299621383781473126772818328263698367864307651395074419204028970368775784354009579731848506890026129969309926508908551800756943060148473596007139607115460526933244903340453275738560631736111560923242049138567478700715211209457577637405051389795276174451511816329275959754209841948105230436886999014554342830157789803742526968627123476057669500007290905326105912162653849874609766002548653389610640790090874288305581602628830475889729384456490526635704311839192287541025964400030627889723043541332450325814679741374409845008202653011117145133929559763103298002954408954187784648619569664112437238314390628992124415075185572992800466972672516598561546611040305006308671601509010113673841582483979772713499002916901327151781212434502217696349168299264250271354078193465659222223938357674213464603257947848523430955570991959939782508580589861948953830936416329019099511366876662464686219688354565628855574229720510996619875748114802857193543233431386295250942868786139253622120997154556175140917572317467201435142842913927536207084980138262836834511198140384746068265128055456344548738376694941488441761738967342314208634884911740945357269342834271547793309623715558757310900382027472917495808\n", + "243165735484369217113534154071617960599242767562946253545636656527396735728615302790148838408057940737551568708019159463697013780052259938619853017817103601513886120296947192014279214230921053866489806680906551477121263472223121846484098277134957401430422418915155274810102779590552348903023632658551919508419683896210460873773998029108685660315579607485053937254246952115339000014581810652211824325307699749219532005097306779221281580181748576611163205257660951779458768912981053271408623678384575082051928800061255779446087082664900651629359482748819690016405306022234290267859119526206596005908817908375569297239139328224874476628781257984248830150371145985600933945345033197123093222080610012617343203018020227347683164967959545426998005833802654303562424869004435392698336598528500542708156386931318444447876715348426929206515895697046861911141983919879565017161179723897907661872832658038199022733753324929372439376709131257711148459441021993239751496229605714387086466862772590501885737572278507244241994309112350281835144634934402870285685827855072414169960276525673669022396280769492136530256110912689097476753389882976883523477934684628417269769823481890714538685668543095586619247431117514621800764054945834991616\n", + "486331470968738434227068308143235921198485535125892507091273313054793471457230605580297676816115881475103137416038318927394027560104519877239706035634207203027772240593894384028558428461842107732979613361813102954242526944446243692968196554269914802860844837830310549620205559181104697806047265317103839016839367792420921747547996058217371320631159214970107874508493904230678000029163621304423648650615399498439064010194613558442563160363497153222326410515321903558917537825962106542817247356769150164103857600122511558892174165329801303258718965497639380032810612044468580535718239052413192011817635816751138594478278656449748953257562515968497660300742291971201867890690066394246186444161220025234686406036040454695366329935919090853996011667605308607124849738008870785396673197057001085416312773862636888895753430696853858413031791394093723822283967839759130034322359447795815323745665316076398045467506649858744878753418262515422296918882043986479502992459211428774172933725545181003771475144557014488483988618224700563670289269868805740571371655710144828339920553051347338044792561538984273060512221825378194953506779765953767046955869369256834539539646963781429077371337086191173238494862235029243601528109891669983232\n", + "972662941937476868454136616286471842396971070251785014182546626109586942914461211160595353632231762950206274832076637854788055120209039754479412071268414406055544481187788768057116856923684215465959226723626205908485053888892487385936393108539829605721689675660621099240411118362209395612094530634207678033678735584841843495095992116434742641262318429940215749016987808461356000058327242608847297301230798996878128020389227116885126320726994306444652821030643807117835075651924213085634494713538300328207715200245023117784348330659602606517437930995278760065621224088937161071436478104826384023635271633502277188956557312899497906515125031936995320601484583942403735781380132788492372888322440050469372812072080909390732659871838181707992023335210617214249699476017741570793346394114002170832625547725273777791506861393707716826063582788187447644567935679518260068644718895591630647491330632152796090935013299717489757506836525030844593837764087972959005984918422857548345867451090362007542950289114028976967977236449401127340578539737611481142743311420289656679841106102694676089585123077968546121024443650756389907013559531907534093911738738513669079079293927562858154742674172382346476989724470058487203056219783339966464\n", + "1945325883874953736908273232572943684793942140503570028365093252219173885828922422321190707264463525900412549664153275709576110240418079508958824142536828812111088962375577536114233713847368430931918453447252411816970107777784974771872786217079659211443379351321242198480822236724418791224189061268415356067357471169683686990191984232869485282524636859880431498033975616922712000116654485217694594602461597993756256040778454233770252641453988612889305642061287614235670151303848426171268989427076600656415430400490046235568696661319205213034875861990557520131242448177874322142872956209652768047270543267004554377913114625798995813030250063873990641202969167884807471562760265576984745776644880100938745624144161818781465319743676363415984046670421234428499398952035483141586692788228004341665251095450547555583013722787415433652127165576374895289135871359036520137289437791183261294982661264305592181870026599434979515013673050061689187675528175945918011969836845715096691734902180724015085900578228057953935954472898802254681157079475222962285486622840579313359682212205389352179170246155937092242048887301512779814027119063815068187823477477027338158158587855125716309485348344764692953979448940116974406112439566679932928\n", + "3890651767749907473816546465145887369587884281007140056730186504438347771657844844642381414528927051800825099328306551419152220480836159017917648285073657624222177924751155072228467427694736861863836906894504823633940215555569949543745572434159318422886758702642484396961644473448837582448378122536830712134714942339367373980383968465738970565049273719760862996067951233845424000233308970435389189204923195987512512081556908467540505282907977225778611284122575228471340302607696852342537978854153201312830860800980092471137393322638410426069751723981115040262484896355748644285745912419305536094541086534009108755826229251597991626060500127747981282405938335769614943125520531153969491553289760201877491248288323637562930639487352726831968093340842468856998797904070966283173385576456008683330502190901095111166027445574830867304254331152749790578271742718073040274578875582366522589965322528611184363740053198869959030027346100123378375351056351891836023939673691430193383469804361448030171801156456115907871908945797604509362314158950445924570973245681158626719364424410778704358340492311874184484097774603025559628054238127630136375646954954054676316317175710251432618970696689529385907958897880233948812224879133359865856\n", + "7781303535499814947633092930291774739175768562014280113460373008876695543315689689284762829057854103601650198656613102838304440961672318035835296570147315248444355849502310144456934855389473723727673813789009647267880431111139899087491144868318636845773517405284968793923288946897675164896756245073661424269429884678734747960767936931477941130098547439521725992135902467690848000466617940870778378409846391975025024163113816935081010565815954451557222568245150456942680605215393704685075957708306402625661721601960184942274786645276820852139503447962230080524969792711497288571491824838611072189082173068018217511652458503195983252121000255495962564811876671539229886251041062307938983106579520403754982496576647275125861278974705453663936186681684937713997595808141932566346771152912017366661004381802190222332054891149661734608508662305499581156543485436146080549157751164733045179930645057222368727480106397739918060054692200246756750702112703783672047879347382860386766939608722896060343602312912231815743817891595209018724628317900891849141946491362317253438728848821557408716680984623748368968195549206051119256108476255260272751293909908109352632634351420502865237941393379058771815917795760467897624449758266719731712\n", + "15562607070999629895266185860583549478351537124028560226920746017753391086631379378569525658115708207203300397313226205676608881923344636071670593140294630496888711699004620288913869710778947447455347627578019294535760862222279798174982289736637273691547034810569937587846577893795350329793512490147322848538859769357469495921535873862955882260197094879043451984271804935381696000933235881741556756819692783950050048326227633870162021131631908903114445136490300913885361210430787409370151915416612805251323443203920369884549573290553641704279006895924460161049939585422994577142983649677222144378164346136036435023304917006391966504242000510991925129623753343078459772502082124615877966213159040807509964993153294550251722557949410907327872373363369875427995191616283865132693542305824034733322008763604380444664109782299323469217017324610999162313086970872292161098315502329466090359861290114444737454960212795479836120109384400493513501404225407567344095758694765720773533879217445792120687204625824463631487635783190418037449256635801783698283892982724634506877457697643114817433361969247496737936391098412102238512216952510520545502587819816218705265268702841005730475882786758117543631835591520935795248899516533439463424\n", + "31125214141999259790532371721167098956703074248057120453841492035506782173262758757139051316231416414406600794626452411353217763846689272143341186280589260993777423398009240577827739421557894894910695255156038589071521724444559596349964579473274547383094069621139875175693155787590700659587024980294645697077719538714938991843071747725911764520394189758086903968543609870763392001866471763483113513639385567900100096652455267740324042263263817806228890272980601827770722420861574818740303830833225610502646886407840739769099146581107283408558013791848920322099879170845989154285967299354444288756328692272072870046609834012783933008484001021983850259247506686156919545004164249231755932426318081615019929986306589100503445115898821814655744746726739750855990383232567730265387084611648069466644017527208760889328219564598646938434034649221998324626173941744584322196631004658932180719722580228889474909920425590959672240218768800987027002808450815134688191517389531441547067758434891584241374409251648927262975271566380836074898513271603567396567785965449269013754915395286229634866723938494993475872782196824204477024433905021041091005175639632437410530537405682011460951765573516235087263671183041871590497799033066878926848\n", + "62250428283998519581064743442334197913406148496114240907682984071013564346525517514278102632462832828813201589252904822706435527693378544286682372561178521987554846796018481155655478843115789789821390510312077178143043448889119192699929158946549094766188139242279750351386311575181401319174049960589291394155439077429877983686143495451823529040788379516173807937087219741526784003732943526966227027278771135800200193304910535480648084526527635612457780545961203655541444841723149637480607661666451221005293772815681479538198293162214566817116027583697840644199758341691978308571934598708888577512657384544145740093219668025567866016968002043967700518495013372313839090008328498463511864852636163230039859972613178201006890231797643629311489493453479501711980766465135460530774169223296138933288035054417521778656439129197293876868069298443996649252347883489168644393262009317864361439445160457778949819840851181919344480437537601974054005616901630269376383034779062883094135516869783168482748818503297854525950543132761672149797026543207134793135571930898538027509830790572459269733447876989986951745564393648408954048867810042082182010351279264874821061074811364022921903531147032470174527342366083743180995598066133757853696\n", + "124500856567997039162129486884668395826812296992228481815365968142027128693051035028556205264925665657626403178505809645412871055386757088573364745122357043975109693592036962311310957686231579579642781020624154356286086897778238385399858317893098189532376278484559500702772623150362802638348099921178582788310878154859755967372286990903647058081576759032347615874174439483053568007465887053932454054557542271600400386609821070961296169053055271224915561091922407311082889683446299274961215323332902442010587545631362959076396586324429133634232055167395681288399516683383956617143869197417777155025314769088291480186439336051135732033936004087935401036990026744627678180016656996927023729705272326460079719945226356402013780463595287258622978986906959003423961532930270921061548338446592277866576070108835043557312878258394587753736138596887993298504695766978337288786524018635728722878890320915557899639681702363838688960875075203948108011233803260538752766069558125766188271033739566336965497637006595709051901086265523344299594053086414269586271143861797076055019661581144918539466895753979973903491128787296817908097735620084164364020702558529749642122149622728045843807062294064940349054684732167486361991196132267515707392\n", + "249001713135994078324258973769336791653624593984456963630731936284054257386102070057112410529851331315252806357011619290825742110773514177146729490244714087950219387184073924622621915372463159159285562041248308712572173795556476770799716635786196379064752556969119001405545246300725605276696199842357165576621756309719511934744573981807294116163153518064695231748348878966107136014931774107864908109115084543200800773219642141922592338106110542449831122183844814622165779366892598549922430646665804884021175091262725918152793172648858267268464110334791362576799033366767913234287738394835554310050629538176582960372878672102271464067872008175870802073980053489255356360033313993854047459410544652920159439890452712804027560927190574517245957973813918006847923065860541842123096676893184555733152140217670087114625756516789175507472277193775986597009391533956674577573048037271457445757780641831115799279363404727677377921750150407896216022467606521077505532139116251532376542067479132673930995274013191418103802172531046688599188106172828539172542287723594152110039323162289837078933791507959947806982257574593635816195471240168328728041405117059499284244299245456091687614124588129880698109369464334972723982392264535031414784\n", + "498003426271988156648517947538673583307249187968913927261463872568108514772204140114224821059702662630505612714023238581651484221547028354293458980489428175900438774368147849245243830744926318318571124082496617425144347591112953541599433271572392758129505113938238002811090492601451210553392399684714331153243512619439023869489147963614588232326307036129390463496697757932214272029863548215729816218230169086401601546439284283845184676212221084899662244367689629244331558733785197099844861293331609768042350182525451836305586345297716534536928220669582725153598066733535826468575476789671108620101259076353165920745757344204542928135744016351741604147960106978510712720066627987708094918821089305840318879780905425608055121854381149034491915947627836013695846131721083684246193353786369111466304280435340174229251513033578351014944554387551973194018783067913349155146096074542914891515561283662231598558726809455354755843500300815792432044935213042155011064278232503064753084134958265347861990548026382836207604345062093377198376212345657078345084575447188304220078646324579674157867583015919895613964515149187271632390942480336657456082810234118998568488598490912183375228249176259761396218738928669945447964784529070062829568\n", + "996006852543976313297035895077347166614498375937827854522927745136217029544408280228449642119405325261011225428046477163302968443094056708586917960978856351800877548736295698490487661489852636637142248164993234850288695182225907083198866543144785516259010227876476005622180985202902421106784799369428662306487025238878047738978295927229176464652614072258780926993395515864428544059727096431459632436460338172803203092878568567690369352424442169799324488735379258488663117467570394199689722586663219536084700365050903672611172690595433069073856441339165450307196133467071652937150953579342217240202518152706331841491514688409085856271488032703483208295920213957021425440133255975416189837642178611680637759561810851216110243708762298068983831895255672027391692263442167368492386707572738222932608560870680348458503026067156702029889108775103946388037566135826698310292192149085829783031122567324463197117453618910709511687000601631584864089870426084310022128556465006129506168269916530695723981096052765672415208690124186754396752424691314156690169150894376608440157292649159348315735166031839791227929030298374543264781884960673314912165620468237997136977196981824366750456498352519522792437477857339890895929569058140125659136\n", + "1992013705087952626594071790154694333228996751875655709045855490272434059088816560456899284238810650522022450856092954326605936886188113417173835921957712703601755097472591396980975322979705273274284496329986469700577390364451814166397733086289571032518020455752952011244361970405804842213569598738857324612974050477756095477956591854458352929305228144517561853986791031728857088119454192862919264872920676345606406185757137135380738704848884339598648977470758516977326234935140788399379445173326439072169400730101807345222345381190866138147712882678330900614392266934143305874301907158684434480405036305412663682983029376818171712542976065406966416591840427914042850880266511950832379675284357223361275519123621702432220487417524596137967663790511344054783384526884334736984773415145476445865217121741360696917006052134313404059778217550207892776075132271653396620584384298171659566062245134648926394234907237821419023374001203263169728179740852168620044257112930012259012336539833061391447962192105531344830417380248373508793504849382628313380338301788753216880314585298318696631470332063679582455858060596749086529563769921346629824331240936475994273954393963648733500912996705039045584874955714679781791859138116280251318272\n", + "3984027410175905253188143580309388666457993503751311418091710980544868118177633120913798568477621301044044901712185908653211873772376226834347671843915425407203510194945182793961950645959410546548568992659972939401154780728903628332795466172579142065036040911505904022488723940811609684427139197477714649225948100955512190955913183708916705858610456289035123707973582063457714176238908385725838529745841352691212812371514274270761477409697768679197297954941517033954652469870281576798758890346652878144338801460203614690444690762381732276295425765356661801228784533868286611748603814317368868960810072610825327365966058753636343425085952130813932833183680855828085701760533023901664759350568714446722551038247243404864440974835049192275935327581022688109566769053768669473969546830290952891730434243482721393834012104268626808119556435100415785552150264543306793241168768596343319132124490269297852788469814475642838046748002406526339456359481704337240088514225860024518024673079666122782895924384211062689660834760496747017587009698765256626760676603577506433760629170596637393262940664127359164911716121193498173059127539842693259648662481872951988547908787927297467001825993410078091169749911429359563583718276232560502636544\n", + "7968054820351810506376287160618777332915987007502622836183421961089736236355266241827597136955242602088089803424371817306423747544752453668695343687830850814407020389890365587923901291918821093097137985319945878802309561457807256665590932345158284130072081823011808044977447881623219368854278394955429298451896201911024381911826367417833411717220912578070247415947164126915428352477816771451677059491682705382425624743028548541522954819395537358394595909883034067909304939740563153597517780693305756288677602920407229380889381524763464552590851530713323602457569067736573223497207628634737737921620145221650654731932117507272686850171904261627865666367361711656171403521066047803329518701137428893445102076494486809728881949670098384551870655162045376219133538107537338947939093660581905783460868486965442787668024208537253616239112870200831571104300529086613586482337537192686638264248980538595705576939628951285676093496004813052678912718963408674480177028451720049036049346159332245565791848768422125379321669520993494035174019397530513253521353207155012867521258341193274786525881328254718329823432242386996346118255079685386519297324963745903977095817575854594934003651986820156182339499822858719127167436552465121005273088\n", + "15936109640703621012752574321237554665831974015005245672366843922179472472710532483655194273910485204176179606848743634612847495089504907337390687375661701628814040779780731175847802583837642186194275970639891757604619122915614513331181864690316568260144163646023616089954895763246438737708556789910858596903792403822048763823652734835666823434441825156140494831894328253830856704955633542903354118983365410764851249486057097083045909638791074716789191819766068135818609879481126307195035561386611512577355205840814458761778763049526929105181703061426647204915138135473146446994415257269475475843240290443301309463864235014545373700343808523255731332734723423312342807042132095606659037402274857786890204152988973619457763899340196769103741310324090752438267076215074677895878187321163811566921736973930885575336048417074507232478225740401663142208601058173227172964675074385373276528497961077191411153879257902571352186992009626105357825437926817348960354056903440098072098692318664491131583697536844250758643339041986988070348038795061026507042706414310025735042516682386549573051762656509436659646864484773992692236510159370773038594649927491807954191635151709189868007303973640312364678999645717438254334873104930242010546176\n", + "31872219281407242025505148642475109331663948030010491344733687844358944945421064967310388547820970408352359213697487269225694990179009814674781374751323403257628081559561462351695605167675284372388551941279783515209238245831229026662363729380633136520288327292047232179909791526492877475417113579821717193807584807644097527647305469671333646868883650312280989663788656507661713409911267085806708237966730821529702498972114194166091819277582149433578383639532136271637219758962252614390071122773223025154710411681628917523557526099053858210363406122853294409830276270946292893988830514538950951686480580886602618927728470029090747400687617046511462665469446846624685614084264191213318074804549715573780408305977947238915527798680393538207482620648181504876534152430149355791756374642327623133843473947861771150672096834149014464956451480803326284417202116346454345929350148770746553056995922154382822307758515805142704373984019252210715650875853634697920708113806880196144197384637328982263167395073688501517286678083973976140696077590122053014085412828620051470085033364773099146103525313018873319293728969547985384473020318741546077189299854983615908383270303418379736014607947280624729357999291434876508669746209860484021092352\n", + "63744438562814484051010297284950218663327896060020982689467375688717889890842129934620777095641940816704718427394974538451389980358019629349562749502646806515256163119122924703391210335350568744777103882559567030418476491662458053324727458761266273040576654584094464359819583052985754950834227159643434387615169615288195055294610939342667293737767300624561979327577313015323426819822534171613416475933461643059404997944228388332183638555164298867156767279064272543274439517924505228780142245546446050309420823363257835047115052198107716420726812245706588819660552541892585787977661029077901903372961161773205237855456940058181494801375234093022925330938893693249371228168528382426636149609099431147560816611955894477831055597360787076414965241296363009753068304860298711583512749284655246267686947895723542301344193668298028929912902961606652568834404232692908691858700297541493106113991844308765644615517031610285408747968038504421431301751707269395841416227613760392288394769274657964526334790147377003034573356167947952281392155180244106028170825657240102940170066729546198292207050626037746638587457939095970768946040637483092154378599709967231816766540606836759472029215894561249458715998582869753017339492419720968042184704\n", + "127488877125628968102020594569900437326655792120041965378934751377435779781684259869241554191283881633409436854789949076902779960716039258699125499005293613030512326238245849406782420670701137489554207765119134060836952983324916106649454917522532546081153309168188928719639166105971509901668454319286868775230339230576390110589221878685334587475534601249123958655154626030646853639645068343226832951866923286118809995888456776664367277110328597734313534558128545086548879035849010457560284491092892100618841646726515670094230104396215432841453624491413177639321105083785171575955322058155803806745922323546410475710913880116362989602750468186045850661877787386498742456337056764853272299218198862295121633223911788955662111194721574152829930482592726019506136609720597423167025498569310492535373895791447084602688387336596057859825805923213305137668808465385817383717400595082986212227983688617531289231034063220570817495936077008842862603503414538791682832455227520784576789538549315929052669580294754006069146712335895904562784310360488212056341651314480205880340133459092396584414101252075493277174915878191941537892081274966184308757199419934463633533081213673518944058431789122498917431997165739506034678984839441936084369408\n", + "254977754251257936204041189139800874653311584240083930757869502754871559563368519738483108382567763266818873709579898153805559921432078517398250998010587226061024652476491698813564841341402274979108415530238268121673905966649832213298909835045065092162306618336377857439278332211943019803336908638573737550460678461152780221178443757370669174951069202498247917310309252061293707279290136686453665903733846572237619991776913553328734554220657195468627069116257090173097758071698020915120568982185784201237683293453031340188460208792430865682907248982826355278642210167570343151910644116311607613491844647092820951421827760232725979205500936372091701323755574772997484912674113529706544598436397724590243266447823577911324222389443148305659860965185452039012273219441194846334050997138620985070747791582894169205376774673192115719651611846426610275337616930771634767434801190165972424455967377235062578462068126441141634991872154017685725207006829077583365664910455041569153579077098631858105339160589508012138293424671791809125568620720976424112683302628960411760680266918184793168828202504150986554349831756383883075784162549932368617514398839868927267066162427347037888116863578244997834863994331479012069357969678883872168738816\n", + "509955508502515872408082378279601749306623168480167861515739005509743119126737039476966216765135526533637747419159796307611119842864157034796501996021174452122049304952983397627129682682804549958216831060476536243347811933299664426597819670090130184324613236672755714878556664423886039606673817277147475100921356922305560442356887514741338349902138404996495834620618504122587414558580273372907331807467693144475239983553827106657469108441314390937254138232514180346195516143396041830241137964371568402475366586906062680376920417584861731365814497965652710557284420335140686303821288232623215226983689294185641902843655520465451958411001872744183402647511149545994969825348227059413089196872795449180486532895647155822648444778886296611319721930370904078024546438882389692668101994277241970141495583165788338410753549346384231439303223692853220550675233861543269534869602380331944848911934754470125156924136252882283269983744308035371450414013658155166731329820910083138307158154197263716210678321179016024276586849343583618251137241441952848225366605257920823521360533836369586337656405008301973108699663512767766151568325099864737235028797679737854534132324854694075776233727156489995669727988662958024138715939357767744337477632\n", + "1019911017005031744816164756559203498613246336960335723031478011019486238253474078953932433530271053067275494838319592615222239685728314069593003992042348904244098609905966795254259365365609099916433662120953072486695623866599328853195639340180260368649226473345511429757113328847772079213347634554294950201842713844611120884713775029482676699804276809992991669241237008245174829117160546745814663614935386288950479967107654213314938216882628781874508276465028360692391032286792083660482275928743136804950733173812125360753840835169723462731628995931305421114568840670281372607642576465246430453967378588371283805687311040930903916822003745488366805295022299091989939650696454118826178393745590898360973065791294311645296889557772593222639443860741808156049092877764779385336203988554483940282991166331576676821507098692768462878606447385706441101350467723086539069739204760663889697823869508940250313848272505764566539967488616070742900828027316310333462659641820166276614316308394527432421356642358032048553173698687167236502274482883905696450733210515841647042721067672739172675312810016603946217399327025535532303136650199729474470057595359475709068264649709388151552467454312979991339455977325916048277431878715535488674955264\n", + "2039822034010063489632329513118406997226492673920671446062956022038972476506948157907864867060542106134550989676639185230444479371456628139186007984084697808488197219811933590508518730731218199832867324241906144973391247733198657706391278680360520737298452946691022859514226657695544158426695269108589900403685427689222241769427550058965353399608553619985983338482474016490349658234321093491629327229870772577900959934215308426629876433765257563749016552930056721384782064573584167320964551857486273609901466347624250721507681670339446925463257991862610842229137681340562745215285152930492860907934757176742567611374622081861807833644007490976733610590044598183979879301392908237652356787491181796721946131582588623290593779115545186445278887721483616312098185755529558770672407977108967880565982332663153353643014197385536925757212894771412882202700935446173078139478409521327779395647739017880500627696545011529133079934977232141485801656054632620666925319283640332553228632616789054864842713284716064097106347397374334473004548965767811392901466421031683294085442135345478345350625620033207892434798654051071064606273300399458948940115190718951418136529299418776303104934908625959982678911954651832096554863757431070977349910528\n", + "4079644068020126979264659026236813994452985347841342892125912044077944953013896315815729734121084212269101979353278370460888958742913256278372015968169395616976394439623867181017037461462436399665734648483812289946782495466397315412782557360721041474596905893382045719028453315391088316853390538217179800807370855378444483538855100117930706799217107239971966676964948032980699316468642186983258654459741545155801919868430616853259752867530515127498033105860113442769564129147168334641929103714972547219802932695248501443015363340678893850926515983725221684458275362681125490430570305860985721815869514353485135222749244163723615667288014981953467221180089196367959758602785816475304713574982363593443892263165177246581187558231090372890557775442967232624196371511059117541344815954217935761131964665326306707286028394771073851514425789542825764405401870892346156278956819042655558791295478035761001255393090023058266159869954464282971603312109265241333850638567280665106457265233578109729685426569432128194212694794748668946009097931535622785802932842063366588170884270690956690701251240066415784869597308102142129212546600798917897880230381437902836273058598837552606209869817251919965357823909303664193109727514862141954699821056\n", + "8159288136040253958529318052473627988905970695682685784251824088155889906027792631631459468242168424538203958706556740921777917485826512556744031936338791233952788879247734362034074922924872799331469296967624579893564990932794630825565114721442082949193811786764091438056906630782176633706781076434359601614741710756888967077710200235861413598434214479943933353929896065961398632937284373966517308919483090311603839736861233706519505735061030254996066211720226885539128258294336669283858207429945094439605865390497002886030726681357787701853031967450443368916550725362250980861140611721971443631739028706970270445498488327447231334576029963906934442360178392735919517205571632950609427149964727186887784526330354493162375116462180745781115550885934465248392743022118235082689631908435871522263929330652613414572056789542147703028851579085651528810803741784692312557913638085311117582590956071522002510786180046116532319739908928565943206624218530482667701277134561330212914530467156219459370853138864256388425389589497337892018195863071245571605865684126733176341768541381913381402502480132831569739194616204284258425093201597835795760460762875805672546117197675105212419739634503839930715647818607328386219455029724283909399642112\n", + "16318576272080507917058636104947255977811941391365371568503648176311779812055585263262918936484336849076407917413113481843555834971653025113488063872677582467905577758495468724068149845849745598662938593935249159787129981865589261651130229442884165898387623573528182876113813261564353267413562152868719203229483421513777934155420400471722827196868428959887866707859792131922797265874568747933034617838966180623207679473722467413039011470122060509992132423440453771078256516588673338567716414859890188879211730780994005772061453362715575403706063934900886737833101450724501961722281223443942887263478057413940540890996976654894462669152059927813868884720356785471839034411143265901218854299929454373775569052660708986324750232924361491562231101771868930496785486044236470165379263816871743044527858661305226829144113579084295406057703158171303057621607483569384625115827276170622235165181912143044005021572360092233064639479817857131886413248437060965335402554269122660425829060934312438918741706277728512776850779178994675784036391726142491143211731368253466352683537082763826762805004960265663139478389232408568516850186403195671591520921525751611345092234395350210424839479269007679861431295637214656772438910059448567818799284224\n", + "32637152544161015834117272209894511955623882782730743137007296352623559624111170526525837872968673698152815834826226963687111669943306050226976127745355164935811155516990937448136299691699491197325877187870498319574259963731178523302260458885768331796775247147056365752227626523128706534827124305737438406458966843027555868310840800943445654393736857919775733415719584263845594531749137495866069235677932361246415358947444934826078022940244121019984264846880907542156513033177346677135432829719780377758423461561988011544122906725431150807412127869801773475666202901449003923444562446887885774526956114827881081781993953309788925338304119855627737769440713570943678068822286531802437708599858908747551138105321417972649500465848722983124462203543737860993570972088472940330758527633743486089055717322610453658288227158168590812115406316342606115243214967138769250231654552341244470330363824286088010043144720184466129278959635714263772826496874121930670805108538245320851658121868624877837483412555457025553701558357989351568072783452284982286423462736506932705367074165527653525610009920531326278956778464817137033700372806391343183041843051503222690184468790700420849678958538015359722862591274429313544877820118897135637598568448\n", + "65274305088322031668234544419789023911247765565461486274014592705247119248222341053051675745937347396305631669652453927374223339886612100453952255490710329871622311033981874896272599383398982394651754375740996639148519927462357046604520917771536663593550494294112731504455253046257413069654248611474876812917933686055111736621681601886891308787473715839551466831439168527691189063498274991732138471355864722492830717894889869652156045880488242039968529693761815084313026066354693354270865659439560755516846923123976023088245813450862301614824255739603546951332405802898007846889124893775771549053912229655762163563987906619577850676608239711255475538881427141887356137644573063604875417199717817495102276210642835945299000931697445966248924407087475721987141944176945880661517055267486972178111434645220907316576454316337181624230812632685212230486429934277538500463309104682488940660727648572176020086289440368932258557919271428527545652993748243861341610217076490641703316243737249755674966825110914051107403116715978703136145566904569964572846925473013865410734148331055307051220019841062652557913556929634274067400745612782686366083686103006445380368937581400841699357917076030719445725182548858627089755640237794271275197136896\n", + "130548610176644063336469088839578047822495531130922972548029185410494238496444682106103351491874694792611263339304907854748446679773224200907904510981420659743244622067963749792545198766797964789303508751481993278297039854924714093209041835543073327187100988588225463008910506092514826139308497222949753625835867372110223473243363203773782617574947431679102933662878337055382378126996549983464276942711729444985661435789779739304312091760976484079937059387523630168626052132709386708541731318879121511033693846247952046176491626901724603229648511479207093902664811605796015693778249787551543098107824459311524327127975813239155701353216479422510951077762854283774712275289146127209750834399435634990204552421285671890598001863394891932497848814174951443974283888353891761323034110534973944356222869290441814633152908632674363248461625265370424460972859868555077000926618209364977881321455297144352040172578880737864517115838542857055091305987496487722683220434152981283406632487474499511349933650221828102214806233431957406272291133809139929145693850946027730821468296662110614102440039682125305115827113859268548134801491225565372732167372206012890760737875162801683398715834152061438891450365097717254179511280475588542550394273792\n", + "261097220353288126672938177679156095644991062261845945096058370820988476992889364212206702983749389585222526678609815709496893359546448401815809021962841319486489244135927499585090397533595929578607017502963986556594079709849428186418083671086146654374201977176450926017821012185029652278616994445899507251671734744220446946486726407547565235149894863358205867325756674110764756253993099966928553885423458889971322871579559478608624183521952968159874118775047260337252104265418773417083462637758243022067387692495904092352983253803449206459297022958414187805329623211592031387556499575103086196215648918623048654255951626478311402706432958845021902155525708567549424550578292254419501668798871269980409104842571343781196003726789783864995697628349902887948567776707783522646068221069947888712445738580883629266305817265348726496923250530740848921945719737110154001853236418729955762642910594288704080345157761475729034231677085714110182611974992975445366440868305962566813264974948999022699867300443656204429612466863914812544582267618279858291387701892055461642936593324221228204880079364250610231654227718537096269602982451130745464334744412025781521475750325603366797431668304122877782900730195434508359022560951177085100788547584\n", + "522194440706576253345876355358312191289982124523691890192116741641976953985778728424413405967498779170445053357219631418993786719092896803631618043925682638972978488271854999170180795067191859157214035005927973113188159419698856372836167342172293308748403954352901852035642024370059304557233988891799014503343469488440893892973452815095130470299789726716411734651513348221529512507986199933857107770846917779942645743159118957217248367043905936319748237550094520674504208530837546834166925275516486044134775384991808184705966507606898412918594045916828375610659246423184062775112999150206172392431297837246097308511903252956622805412865917690043804311051417135098849101156584508839003337597742539960818209685142687562392007453579567729991395256699805775897135553415567045292136442139895777424891477161767258532611634530697452993846501061481697843891439474220308003706472837459911525285821188577408160690315522951458068463354171428220365223949985950890732881736611925133626529949897998045399734600887312408859224933727829625089164535236559716582775403784110923285873186648442456409760158728501220463308455437074192539205964902261490928669488824051563042951500651206733594863336608245755565801460390869016718045121902354170201577095168\n", + "1044388881413152506691752710716624382579964249047383780384233483283953907971557456848826811934997558340890106714439262837987573438185793607263236087851365277945956976543709998340361590134383718314428070011855946226376318839397712745672334684344586617496807908705803704071284048740118609114467977783598029006686938976881787785946905630190260940599579453432823469303026696443059025015972399867714215541693835559885291486318237914434496734087811872639496475100189041349008417061675093668333850551032972088269550769983616369411933015213796825837188091833656751221318492846368125550225998300412344784862595674492194617023806505913245610825731835380087608622102834270197698202313169017678006675195485079921636419370285375124784014907159135459982790513399611551794271106831134090584272884279791554849782954323534517065223269061394905987693002122963395687782878948440616007412945674919823050571642377154816321380631045902916136926708342856440730447899971901781465763473223850267253059899795996090799469201774624817718449867455659250178329070473119433165550807568221846571746373296884912819520317457002440926616910874148385078411929804522981857338977648103126085903001302413467189726673216491511131602920781738033436090243804708340403154190336\n", + "2088777762826305013383505421433248765159928498094767560768466966567907815943114913697653623869995116681780213428878525675975146876371587214526472175702730555891913953087419996680723180268767436628856140023711892452752637678795425491344669368689173234993615817411607408142568097480237218228935955567196058013373877953763575571893811260380521881199158906865646938606053392886118050031944799735428431083387671119770582972636475828868993468175623745278992950200378082698016834123350187336667701102065944176539101539967232738823866030427593651674376183667313502442636985692736251100451996600824689569725191348984389234047613011826491221651463670760175217244205668540395396404626338035356013350390970159843272838740570750249568029814318270919965581026799223103588542213662268181168545768559583109699565908647069034130446538122789811975386004245926791375565757896881232014825891349839646101143284754309632642761262091805832273853416685712881460895799943803562931526946447700534506119799591992181598938403549249635436899734911318500356658140946238866331101615136443693143492746593769825639040634914004881853233821748296770156823859609045963714677955296206252171806002604826934379453346432983022263205841563476066872180487609416680806308380672\n", + "4177555525652610026767010842866497530319856996189535121536933933135815631886229827395307247739990233363560426857757051351950293752743174429052944351405461111783827906174839993361446360537534873257712280047423784905505275357590850982689338737378346469987231634823214816285136194960474436457871911134392116026747755907527151143787622520761043762398317813731293877212106785772236100063889599470856862166775342239541165945272951657737986936351247490557985900400756165396033668246700374673335402204131888353078203079934465477647732060855187303348752367334627004885273971385472502200903993201649379139450382697968778468095226023652982443302927341520350434488411337080790792809252676070712026700781940319686545677481141500499136059628636541839931162053598446207177084427324536362337091537119166219399131817294138068260893076245579623950772008491853582751131515793762464029651782699679292202286569508619265285522524183611664547706833371425762921791599887607125863053892895401069012239599183984363197876807098499270873799469822637000713316281892477732662203230272887386286985493187539651278081269828009763706467643496593540313647719218091927429355910592412504343612005209653868758906692865966044526411683126952133744360975218833361612616761344\n", + "8355111051305220053534021685732995060639713992379070243073867866271631263772459654790614495479980466727120853715514102703900587505486348858105888702810922223567655812349679986722892721075069746515424560094847569811010550715181701965378677474756692939974463269646429632570272389920948872915743822268784232053495511815054302287575245041522087524796635627462587754424213571544472200127779198941713724333550684479082331890545903315475973872702494981115971800801512330792067336493400749346670804408263776706156406159868930955295464121710374606697504734669254009770547942770945004401807986403298758278900765395937556936190452047305964886605854683040700868976822674161581585618505352141424053401563880639373091354962283000998272119257273083679862324107196892414354168854649072724674183074238332438798263634588276136521786152491159247901544016983707165502263031587524928059303565399358584404573139017238530571045048367223329095413666742851525843583199775214251726107785790802138024479198367968726395753614196998541747598939645274001426632563784955465324406460545774772573970986375079302556162539656019527412935286993187080627295438436183854858711821184825008687224010419307737517813385731932089052823366253904267488721950437666723225233522688\n", + "16710222102610440107068043371465990121279427984758140486147735732543262527544919309581228990959960933454241707431028205407801175010972697716211777405621844447135311624699359973445785442150139493030849120189695139622021101430363403930757354949513385879948926539292859265140544779841897745831487644537568464106991023630108604575150490083044175049593271254925175508848427143088944400255558397883427448667101368958164663781091806630951947745404989962231943601603024661584134672986801498693341608816527553412312812319737861910590928243420749213395009469338508019541095885541890008803615972806597516557801530791875113872380904094611929773211709366081401737953645348323163171237010704282848106803127761278746182709924566001996544238514546167359724648214393784828708337709298145449348366148476664877596527269176552273043572304982318495803088033967414331004526063175049856118607130798717168809146278034477061142090096734446658190827333485703051687166399550428503452215571581604276048958396735937452791507228393997083495197879290548002853265127569910930648812921091549545147941972750158605112325079312039054825870573986374161254590876872367709717423642369650017374448020838615475035626771463864178105646732507808534977443900875333446450467045376\n", + "33420444205220880214136086742931980242558855969516280972295471465086525055089838619162457981919921866908483414862056410815602350021945395432423554811243688894270623249398719946891570884300278986061698240379390279244042202860726807861514709899026771759897853078585718530281089559683795491662975289075136928213982047260217209150300980166088350099186542509850351017696854286177888800511116795766854897334202737916329327562183613261903895490809979924463887203206049323168269345973602997386683217633055106824625624639475723821181856486841498426790018938677016039082191771083780017607231945613195033115603061583750227744761808189223859546423418732162803475907290696646326342474021408565696213606255522557492365419849132003993088477029092334719449296428787569657416675418596290898696732296953329755193054538353104546087144609964636991606176067934828662009052126350099712237214261597434337618292556068954122284180193468893316381654666971406103374332799100857006904431143163208552097916793471874905583014456787994166990395758581096005706530255139821861297625842183099090295883945500317210224650158624078109651741147972748322509181753744735419434847284739300034748896041677230950071253542927728356211293465015617069954887801750666892900934090752\n", + "66840888410441760428272173485863960485117711939032561944590942930173050110179677238324915963839843733816966829724112821631204700043890790864847109622487377788541246498797439893783141768600557972123396480758780558488084405721453615723029419798053543519795706157171437060562179119367590983325950578150273856427964094520434418300601960332176700198373085019700702035393708572355777601022233591533709794668405475832658655124367226523807790981619959848927774406412098646336538691947205994773366435266110213649251249278951447642363712973682996853580037877354032078164383542167560035214463891226390066231206123167500455489523616378447719092846837464325606951814581393292652684948042817131392427212511045114984730839698264007986176954058184669438898592857575139314833350837192581797393464593906659510386109076706209092174289219929273983212352135869657324018104252700199424474428523194868675236585112137908244568360386937786632763309333942812206748665598201714013808862286326417104195833586943749811166028913575988333980791517162192011413060510279643722595251684366198180591767891000634420449300317248156219303482295945496645018363507489470838869694569478600069497792083354461900142507085855456712422586930031234139909775603501333785801868181504\n", + "133681776820883520856544346971727920970235423878065123889181885860346100220359354476649831927679687467633933659448225643262409400087781581729694219244974755577082492997594879787566283537201115944246792961517561116976168811442907231446058839596107087039591412314342874121124358238735181966651901156300547712855928189040868836601203920664353400396746170039401404070787417144711555202044467183067419589336810951665317310248734453047615581963239919697855548812824197292673077383894411989546732870532220427298502498557902895284727425947365993707160075754708064156328767084335120070428927782452780132462412246335000910979047232756895438185693674928651213903629162786585305369896085634262784854425022090229969461679396528015972353908116369338877797185715150278629666701674385163594786929187813319020772218153412418184348578439858547966424704271739314648036208505400398848948857046389737350473170224275816489136720773875573265526618667885624413497331196403428027617724572652834208391667173887499622332057827151976667961583034324384022826121020559287445190503368732396361183535782001268840898600634496312438606964591890993290036727014978941677739389138957200138995584166708923800285014171710913424845173860062468279819551207002667571603736363008\n", + "267363553641767041713088693943455841940470847756130247778363771720692200440718708953299663855359374935267867318896451286524818800175563163459388438489949511154164985995189759575132567074402231888493585923035122233952337622885814462892117679192214174079182824628685748242248716477470363933303802312601095425711856378081737673202407841328706800793492340078802808141574834289423110404088934366134839178673621903330634620497468906095231163926479839395711097625648394585346154767788823979093465741064440854597004997115805790569454851894731987414320151509416128312657534168670240140857855564905560264924824492670001821958094465513790876371387349857302427807258325573170610739792171268525569708850044180459938923358793056031944707816232738677755594371430300557259333403348770327189573858375626638041544436306824836368697156879717095932849408543478629296072417010800797697897714092779474700946340448551632978273441547751146531053237335771248826994662392806856055235449145305668416783334347774999244664115654303953335923166068648768045652242041118574890381006737464792722367071564002537681797201268992624877213929183781986580073454029957883355478778277914400277991168333417847600570028343421826849690347720124936559639102414005335143207472726016\n", + "534727107283534083426177387886911683880941695512260495556727543441384400881437417906599327710718749870535734637792902573049637600351126326918776876979899022308329971990379519150265134148804463776987171846070244467904675245771628925784235358384428348158365649257371496484497432954940727866607604625202190851423712756163475346404815682657413601586984680157605616283149668578846220808177868732269678357347243806661269240994937812190462327852959678791422195251296789170692309535577647958186931482128881709194009994231611581138909703789463974828640303018832256625315068337340480281715711129811120529849648985340003643916188931027581752742774699714604855614516651146341221479584342537051139417700088360919877846717586112063889415632465477355511188742860601114518666806697540654379147716751253276083088872613649672737394313759434191865698817086957258592144834021601595395795428185558949401892680897103265956546883095502293062106474671542497653989324785613712110470898290611336833566668695549998489328231308607906671846332137297536091304484082237149780762013474929585444734143128005075363594402537985249754427858367563973160146908059915766710957556555828800555982336666835695201140056686843653699380695440249873119278204828010670286414945452032\n", + "1069454214567068166852354775773823367761883391024520991113455086882768801762874835813198655421437499741071469275585805146099275200702252653837553753959798044616659943980759038300530268297608927553974343692140488935809350491543257851568470716768856696316731298514742992968994865909881455733215209250404381702847425512326950692809631365314827203173969360315211232566299337157692441616355737464539356714694487613322538481989875624380924655705919357582844390502593578341384619071155295916373862964257763418388019988463223162277819407578927949657280606037664513250630136674680960563431422259622241059699297970680007287832377862055163505485549399429209711229033302292682442959168685074102278835400176721839755693435172224127778831264930954711022377485721202229037333613395081308758295433502506552166177745227299345474788627518868383731397634173914517184289668043203190791590856371117898803785361794206531913093766191004586124212949343084995307978649571227424220941796581222673667133337391099996978656462617215813343692664274595072182608968164474299561524026949859170889468286256010150727188805075970499508855716735127946320293816119831533421915113111657601111964673333671390402280113373687307398761390880499746238556409656021340572829890904064\n", + "2138908429134136333704709551547646735523766782049041982226910173765537603525749671626397310842874999482142938551171610292198550401404505307675107507919596089233319887961518076601060536595217855107948687384280977871618700983086515703136941433537713392633462597029485985937989731819762911466430418500808763405694851024653901385619262730629654406347938720630422465132598674315384883232711474929078713429388975226645076963979751248761849311411838715165688781005187156682769238142310591832747725928515526836776039976926446324555638815157855899314561212075329026501260273349361921126862844519244482119398595941360014575664755724110327010971098798858419422458066604585364885918337370148204557670800353443679511386870344448255557662529861909422044754971442404458074667226790162617516590867005013104332355490454598690949577255037736767462795268347829034368579336086406381583181712742235797607570723588413063826187532382009172248425898686169990615957299142454848441883593162445347334266674782199993957312925234431626687385328549190144365217936328948599123048053899718341778936572512020301454377610151940999017711433470255892640587632239663066843830226223315202223929346667342780804560226747374614797522781760999492477112819312042681145659781808128\n", + "4277816858268272667409419103095293471047533564098083964453820347531075207051499343252794621685749998964285877102343220584397100802809010615350215015839192178466639775923036153202121073190435710215897374768561955743237401966173031406273882867075426785266925194058971971875979463639525822932860837001617526811389702049307802771238525461259308812695877441260844930265197348630769766465422949858157426858777950453290153927959502497523698622823677430331377562010374313365538476284621183665495451857031053673552079953852892649111277630315711798629122424150658053002520546698723842253725689038488964238797191882720029151329511448220654021942197597716838844916133209170729771836674740296409115341600706887359022773740688896511115325059723818844089509942884808916149334453580325235033181734010026208664710980909197381899154510075473534925590536695658068737158672172812763166363425484471595215141447176826127652375064764018344496851797372339981231914598284909696883767186324890694668533349564399987914625850468863253374770657098380288730435872657897198246096107799436683557873145024040602908755220303881998035422866940511785281175264479326133687660452446630404447858693334685561609120453494749229595045563521998984954225638624085362291319563616256\n", + "8555633716536545334818838206190586942095067128196167928907640695062150414102998686505589243371499997928571754204686441168794201605618021230700430031678384356933279551846072306404242146380871420431794749537123911486474803932346062812547765734150853570533850388117943943751958927279051645865721674003235053622779404098615605542477050922518617625391754882521689860530394697261539532930845899716314853717555900906580307855919004995047397245647354860662755124020748626731076952569242367330990903714062107347104159907705785298222555260631423597258244848301316106005041093397447684507451378076977928477594383765440058302659022896441308043884395195433677689832266418341459543673349480592818230683201413774718045547481377793022230650119447637688179019885769617832298668907160650470066363468020052417329421961818394763798309020150947069851181073391316137474317344345625526332726850968943190430282894353652255304750129528036688993703594744679962463829196569819393767534372649781389337066699128799975829251700937726506749541314196760577460871745315794396492192215598873367115746290048081205817510440607763996070845733881023570562350528958652267375320904893260808895717386669371123218240906989498459190091127043997969908451277248170724582639127232512\n", + "17111267433073090669637676412381173884190134256392335857815281390124300828205997373011178486742999995857143508409372882337588403211236042461400860063356768713866559103692144612808484292761742840863589499074247822972949607864692125625095531468301707141067700776235887887503917854558103291731443348006470107245558808197231211084954101845037235250783509765043379721060789394523079065861691799432629707435111801813160615711838009990094794491294709721325510248041497253462153905138484734661981807428124214694208319815411570596445110521262847194516489696602632212010082186794895369014902756153955856955188767530880116605318045792882616087768790390867355379664532836682919087346698961185636461366402827549436091094962755586044461300238895275376358039771539235664597337814321300940132726936040104834658843923636789527596618040301894139702362146782632274948634688691251052665453701937886380860565788707304510609500259056073377987407189489359924927658393139638787535068745299562778674133398257599951658503401875453013499082628393521154921743490631588792984384431197746734231492580096162411635020881215527992141691467762047141124701057917304534750641809786521617791434773338742246436481813978996918380182254087995939816902554496341449165278254465024\n", + "34222534866146181339275352824762347768380268512784671715630562780248601656411994746022356973485999991714287016818745764675176806422472084922801720126713537427733118207384289225616968585523485681727178998148495645945899215729384251250191062936603414282135401552471775775007835709116206583462886696012940214491117616394462422169908203690074470501567019530086759442121578789046158131723383598865259414870223603626321231423676019980189588982589419442651020496082994506924307810276969469323963614856248429388416639630823141192890221042525694389032979393205264424020164373589790738029805512307911713910377535061760233210636091585765232175537580781734710759329065673365838174693397922371272922732805655098872182189925511172088922600477790550752716079543078471329194675628642601880265453872080209669317687847273579055193236080603788279404724293565264549897269377382502105330907403875772761721131577414609021219000518112146755974814378978719849855316786279277575070137490599125557348266796515199903317006803750906026998165256787042309843486981263177585968768862395493468462985160192324823270041762431055984283382935524094282249402115834609069501283619573043235582869546677484492872963627957993836760364508175991879633805108992682898330556508930048\n", + "68445069732292362678550705649524695536760537025569343431261125560497203312823989492044713946971999983428574033637491529350353612844944169845603440253427074855466236414768578451233937171046971363454357996296991291891798431458768502500382125873206828564270803104943551550015671418232413166925773392025880428982235232788924844339816407380148941003134039060173518884243157578092316263446767197730518829740447207252642462847352039960379177965178838885302040992165989013848615620553938938647927229712496858776833279261646282385780442085051388778065958786410528848040328747179581476059611024615823427820755070123520466421272183171530464351075161563469421518658131346731676349386795844742545845465611310197744364379851022344177845200955581101505432159086156942658389351257285203760530907744160419338635375694547158110386472161207576558809448587130529099794538754765004210661814807751545523442263154829218042438001036224293511949628757957439699710633572558555150140274981198251114696533593030399806634013607501812053996330513574084619686973962526355171937537724790986936925970320384649646540083524862111968566765871048188564498804231669218139002567239146086471165739093354968985745927255915987673520729016351983759267610217985365796661113017860096\n", + "136890139464584725357101411299049391073521074051138686862522251120994406625647978984089427893943999966857148067274983058700707225689888339691206880506854149710932472829537156902467874342093942726908715992593982583783596862917537005000764251746413657128541606209887103100031342836464826333851546784051760857964470465577849688679632814760297882006268078120347037768486315156184632526893534395461037659480894414505284925694704079920758355930357677770604081984331978027697231241107877877295854459424993717553666558523292564771560884170102777556131917572821057696080657494359162952119222049231646855641510140247040932842544366343060928702150323126938843037316262693463352698773591689485091690931222620395488728759702044688355690401911162203010864318172313885316778702514570407521061815488320838677270751389094316220772944322415153117618897174261058199589077509530008421323629615503091046884526309658436084876002072448587023899257515914879399421267145117110300280549962396502229393067186060799613268027215003624107992661027148169239373947925052710343875075449581973873851940640769299293080167049724223937133531742096377128997608463338436278005134478292172942331478186709937971491854511831975347041458032703967518535220435970731593322226035720192\n", + "273780278929169450714202822598098782147042148102277373725044502241988813251295957968178855787887999933714296134549966117401414451379776679382413761013708299421864945659074313804935748684187885453817431985187965167567193725835074010001528503492827314257083212419774206200062685672929652667703093568103521715928940931155699377359265629520595764012536156240694075536972630312369265053787068790922075318961788829010569851389408159841516711860715355541208163968663956055394462482215755754591708918849987435107333117046585129543121768340205555112263835145642115392161314988718325904238444098463293711283020280494081865685088732686121857404300646253877686074632525386926705397547183378970183381862445240790977457519404089376711380803822324406021728636344627770633557405029140815042123630976641677354541502778188632441545888644830306235237794348522116399178155019060016842647259231006182093769052619316872169752004144897174047798515031829758798842534290234220600561099924793004458786134372121599226536054430007248215985322054296338478747895850105420687750150899163947747703881281538598586160334099448447874267063484192754257995216926676872556010268956584345884662956373419875942983709023663950694082916065407935037070440871941463186644452071440384\n", + "547560557858338901428405645196197564294084296204554747450089004483977626502591915936357711575775999867428592269099932234802828902759553358764827522027416598843729891318148627609871497368375770907634863970375930335134387451670148020003057006985654628514166424839548412400125371345859305335406187136207043431857881862311398754718531259041191528025072312481388151073945260624738530107574137581844150637923577658021139702778816319683033423721430711082416327937327912110788924964431511509183417837699974870214666234093170259086243536680411110224527670291284230784322629977436651808476888196926587422566040560988163731370177465372243714808601292507755372149265050773853410795094366757940366763724890481581954915038808178753422761607644648812043457272689255541267114810058281630084247261953283354709083005556377264883091777289660612470475588697044232798356310038120033685294518462012364187538105238633744339504008289794348095597030063659517597685068580468441201122199849586008917572268744243198453072108860014496431970644108592676957495791700210841375500301798327895495407762563077197172320668198896895748534126968385508515990433853353745112020537913168691769325912746839751885967418047327901388165832130815870074140881743882926373288904142880768\n", + "1095121115716677802856811290392395128588168592409109494900178008967955253005183831872715423151551999734857184538199864469605657805519106717529655044054833197687459782636297255219742994736751541815269727940751860670268774903340296040006114013971309257028332849679096824800250742691718610670812374272414086863715763724622797509437062518082383056050144624962776302147890521249477060215148275163688301275847155316042279405557632639366066847442861422164832655874655824221577849928863023018366835675399949740429332468186340518172487073360822220449055340582568461568645259954873303616953776393853174845132081121976327462740354930744487429617202585015510744298530101547706821590188733515880733527449780963163909830077616357506845523215289297624086914545378511082534229620116563260168494523906566709418166011112754529766183554579321224940951177394088465596712620076240067370589036924024728375076210477267488679008016579588696191194060127319035195370137160936882402244399699172017835144537488486396906144217720028992863941288217185353914991583400421682751000603596655790990815525126154394344641336397793791497068253936771017031980867706707490224041075826337383538651825493679503771934836094655802776331664261631740148281763487765852746577808285761536\n", + "2190242231433355605713622580784790257176337184818218989800356017935910506010367663745430846303103999469714369076399728939211315611038213435059310088109666395374919565272594510439485989473503083630539455881503721340537549806680592080012228027942618514056665699358193649600501485383437221341624748544828173727431527449245595018874125036164766112100289249925552604295781042498954120430296550327376602551694310632084558811115265278732133694885722844329665311749311648443155699857726046036733671350799899480858664936372681036344974146721644440898110681165136923137290519909746607233907552787706349690264162243952654925480709861488974859234405170031021488597060203095413643180377467031761467054899561926327819660155232715013691046430578595248173829090757022165068459240233126520336989047813133418836332022225509059532367109158642449881902354788176931193425240152480134741178073848049456750152420954534977358016033159177392382388120254638070390740274321873764804488799398344035670289074976972793812288435440057985727882576434370707829983166800843365502001207193311581981631050252308788689282672795587582994136507873542034063961735413414980448082151652674767077303650987359007543869672189311605552663328523263480296563526975531705493155616571523072\n", + "4380484462866711211427245161569580514352674369636437979600712035871821012020735327490861692606207998939428738152799457878422631222076426870118620176219332790749839130545189020878971978947006167261078911763007442681075099613361184160024456055885237028113331398716387299201002970766874442683249497089656347454863054898491190037748250072329532224200578499851105208591562084997908240860593100654753205103388621264169117622230530557464267389771445688659330623498623296886311399715452092073467342701599798961717329872745362072689948293443288881796221362330273846274581039819493214467815105575412699380528324487905309850961419722977949718468810340062042977194120406190827286360754934063522934109799123852655639320310465430027382092861157190496347658181514044330136918480466253040673978095626266837672664044451018119064734218317284899763804709576353862386850480304960269482356147696098913500304841909069954716032066318354784764776240509276140781480548643747529608977598796688071340578149953945587624576870880115971455765152868741415659966333601686731004002414386623163963262100504617577378565345591175165988273015747084068127923470826829960896164303305349534154607301974718015087739344378623211105326657046526960593127053951063410986311233143046144\n", + "8760968925733422422854490323139161028705348739272875959201424071743642024041470654981723385212415997878857476305598915756845262444152853740237240352438665581499678261090378041757943957894012334522157823526014885362150199226722368320048912111770474056226662797432774598402005941533748885366498994179312694909726109796982380075496500144659064448401156999702210417183124169995816481721186201309506410206777242528338235244461061114928534779542891377318661246997246593772622799430904184146934685403199597923434659745490724145379896586886577763592442724660547692549162079638986428935630211150825398761056648975810619701922839445955899436937620680124085954388240812381654572721509868127045868219598247705311278640620930860054764185722314380992695316363028088660273836960932506081347956191252533675345328088902036238129468436634569799527609419152707724773700960609920538964712295392197827000609683818139909432064132636709569529552481018552281562961097287495059217955197593376142681156299907891175249153741760231942911530305737482831319932667203373462008004828773246327926524201009235154757130691182350331976546031494168136255846941653659921792328606610699068309214603949436030175478688757246422210653314093053921186254107902126821972622466286092288\n", + "17521937851466844845708980646278322057410697478545751918402848143487284048082941309963446770424831995757714952611197831513690524888305707480474480704877331162999356522180756083515887915788024669044315647052029770724300398453444736640097824223540948112453325594865549196804011883067497770732997988358625389819452219593964760150993000289318128896802313999404420834366248339991632963442372402619012820413554485056676470488922122229857069559085782754637322493994493187545245598861808368293869370806399195846869319490981448290759793173773155527184885449321095385098324159277972857871260422301650797522113297951621239403845678891911798873875241360248171908776481624763309145443019736254091736439196495410622557281241861720109528371444628761985390632726056177320547673921865012162695912382505067350690656177804072476258936873269139599055218838305415449547401921219841077929424590784395654001219367636279818864128265273419139059104962037104563125922194574990118435910395186752285362312599815782350498307483520463885823060611474965662639865334406746924016009657546492655853048402018470309514261382364700663953092062988336272511693883307319843584657213221398136618429207898872060350957377514492844421306628186107842372508215804253643945244932572184576\n", + "35043875702933689691417961292556644114821394957091503836805696286974568096165882619926893540849663991515429905222395663027381049776611414960948961409754662325998713044361512167031775831576049338088631294104059541448600796906889473280195648447081896224906651189731098393608023766134995541465995976717250779638904439187929520301986000578636257793604627998808841668732496679983265926884744805238025640827108970113352940977844244459714139118171565509274644987988986375090491197723616736587738741612798391693738638981962896581519586347546311054369770898642190770196648318555945715742520844603301595044226595903242478807691357783823597747750482720496343817552963249526618290886039472508183472878392990821245114562483723440219056742889257523970781265452112354641095347843730024325391824765010134701381312355608144952517873746538279198110437676610830899094803842439682155858849181568791308002438735272559637728256530546838278118209924074209126251844389149980236871820790373504570724625199631564700996614967040927771646121222949931325279730668813493848032019315092985311706096804036940619028522764729401327906184125976672545023387766614639687169314426442796273236858415797744120701914755028985688842613256372215684745016431608507287890489865144369152\n", + "70087751405867379382835922585113288229642789914183007673611392573949136192331765239853787081699327983030859810444791326054762099553222829921897922819509324651997426088723024334063551663152098676177262588208119082897201593813778946560391296894163792449813302379462196787216047532269991082931991953434501559277808878375859040603972001157272515587209255997617683337464993359966531853769489610476051281654217940226705881955688488919428278236343131018549289975977972750180982395447233473175477483225596783387477277963925793163039172695092622108739541797284381540393296637111891431485041689206603190088453191806484957615382715567647195495500965440992687635105926499053236581772078945016366945756785981642490229124967446880438113485778515047941562530904224709282190695687460048650783649530020269402762624711216289905035747493076558396220875353221661798189607684879364311717698363137582616004877470545119275456513061093676556236419848148418252503688778299960473743641580747009141449250399263129401993229934081855543292242445899862650559461337626987696064038630185970623412193608073881238057045529458802655812368251953345090046775533229279374338628852885592546473716831595488241403829510057971377685226512744431369490032863217014575780979730288738304\n", + "140175502811734758765671845170226576459285579828366015347222785147898272384663530479707574163398655966061719620889582652109524199106445659843795845639018649303994852177446048668127103326304197352354525176416238165794403187627557893120782593788327584899626604758924393574432095064539982165863983906869003118555617756751718081207944002314545031174418511995235366674929986719933063707538979220952102563308435880453411763911376977838856556472686262037098579951955945500361964790894466946350954966451193566774954555927851586326078345390185244217479083594568763080786593274223782862970083378413206380176906383612969915230765431135294390991001930881985375270211852998106473163544157890032733891513571963284980458249934893760876226971557030095883125061808449418564381391374920097301567299060040538805525249422432579810071494986153116792441750706443323596379215369758728623435396726275165232009754941090238550913026122187353112472839696296836505007377556599920947487283161494018282898500798526258803986459868163711086584484891799725301118922675253975392128077260371941246824387216147762476114091058917605311624736503906690180093551066458558748677257705771185092947433663190976482807659020115942755370453025488862738980065726434029151561959460577476608\n", + "280351005623469517531343690340453152918571159656732030694445570295796544769327060959415148326797311932123439241779165304219048398212891319687591691278037298607989704354892097336254206652608394704709050352832476331588806375255115786241565187576655169799253209517848787148864190129079964331727967813738006237111235513503436162415888004629090062348837023990470733349859973439866127415077958441904205126616871760906823527822753955677713112945372524074197159903911891000723929581788933892701909932902387133549909111855703172652156690780370488434958167189137526161573186548447565725940166756826412760353812767225939830461530862270588781982003861763970750540423705996212946327088315780065467783027143926569960916499869787521752453943114060191766250123616898837128762782749840194603134598120081077611050498844865159620142989972306233584883501412886647192758430739517457246870793452550330464019509882180477101826052244374706224945679392593673010014755113199841894974566322988036565797001597052517607972919736327422173168969783599450602237845350507950784256154520743882493648774432295524952228182117835210623249473007813380360187102132917117497354515411542370185894867326381952965615318040231885510740906050977725477960131452868058303123918921154953216\n", + "560702011246939035062687380680906305837142319313464061388891140591593089538654121918830296653594623864246878483558330608438096796425782639375183382556074597215979408709784194672508413305216789409418100705664952663177612750510231572483130375153310339598506419035697574297728380258159928663455935627476012474222471027006872324831776009258180124697674047980941466699719946879732254830155916883808410253233743521813647055645507911355426225890745048148394319807823782001447859163577867785403819865804774267099818223711406345304313381560740976869916334378275052323146373096895131451880333513652825520707625534451879660923061724541177563964007723527941501080847411992425892654176631560130935566054287853139921832999739575043504907886228120383532500247233797674257525565499680389206269196240162155222100997689730319240285979944612467169767002825773294385516861479034914493741586905100660928039019764360954203652104488749412449891358785187346020029510226399683789949132645976073131594003194105035215945839472654844346337939567198901204475690701015901568512309041487764987297548864591049904456364235670421246498946015626760720374204265834234994709030823084740371789734652763905931230636080463771021481812101955450955920262905736116606247837842309906432\n", + "1121404022493878070125374761361812611674284638626928122777782281183186179077308243837660593307189247728493756967116661216876193592851565278750366765112149194431958817419568389345016826610433578818836201411329905326355225501020463144966260750306620679197012838071395148595456760516319857326911871254952024948444942054013744649663552018516360249395348095961882933399439893759464509660311833767616820506467487043627294111291015822710852451781490096296788639615647564002895718327155735570807639731609548534199636447422812690608626763121481953739832668756550104646292746193790262903760667027305651041415251068903759321846123449082355127928015447055883002161694823984851785308353263120261871132108575706279843665999479150087009815772456240767065000494467595348515051130999360778412538392480324310444201995379460638480571959889224934339534005651546588771033722958069828987483173810201321856078039528721908407304208977498824899782717570374692040059020452799367579898265291952146263188006388210070431891678945309688692675879134397802408951381402031803137024618082975529974595097729182099808912728471340842492997892031253521440748408531668469989418061646169480743579469305527811862461272160927542042963624203910901911840525811472233212495675684619812864\n", + "2242808044987756140250749522723625223348569277253856245555564562366372358154616487675321186614378495456987513934233322433752387185703130557500733530224298388863917634839136778690033653220867157637672402822659810652710451002040926289932521500613241358394025676142790297190913521032639714653823742509904049896889884108027489299327104037032720498790696191923765866798879787518929019320623667535233641012934974087254588222582031645421704903562980192593577279231295128005791436654311471141615279463219097068399272894845625381217253526242963907479665337513100209292585492387580525807521334054611302082830502137807518643692246898164710255856030894111766004323389647969703570616706526240523742264217151412559687331998958300174019631544912481534130000988935190697030102261998721556825076784960648620888403990758921276961143919778449868679068011303093177542067445916139657974966347620402643712156079057443816814608417954997649799565435140749384080118040905598735159796530583904292526376012776420140863783357890619377385351758268795604817902762804063606274049236165951059949190195458364199617825456942681684985995784062507042881496817063336939978836123292338961487158938611055623724922544321855084085927248407821803823681051622944466424991351369239625728\n", + "4485616089975512280501499045447250446697138554507712491111129124732744716309232975350642373228756990913975027868466644867504774371406261115001467060448596777727835269678273557380067306441734315275344805645319621305420902004081852579865043001226482716788051352285580594381827042065279429307647485019808099793779768216054978598654208074065440997581392383847531733597759575037858038641247335070467282025869948174509176445164063290843409807125960385187154558462590256011582873308622942283230558926438194136798545789691250762434507052485927814959330675026200418585170984775161051615042668109222604165661004275615037287384493796329420511712061788223532008646779295939407141233413052481047484528434302825119374663997916600348039263089824963068260001977870381394060204523997443113650153569921297241776807981517842553922287839556899737358136022606186355084134891832279315949932695240805287424312158114887633629216835909995299599130870281498768160236081811197470319593061167808585052752025552840281727566715781238754770703516537591209635805525608127212548098472331902119898380390916728399235650913885363369971991568125014085762993634126673879957672246584677922974317877222111247449845088643710168171854496815643607647362103245888932849982702738479251456\n", + "8971232179951024561002998090894500893394277109015424982222258249465489432618465950701284746457513981827950055736933289735009548742812522230002934120897193555455670539356547114760134612883468630550689611290639242610841804008163705159730086002452965433576102704571161188763654084130558858615294970039616199587559536432109957197308416148130881995162784767695063467195519150075716077282494670140934564051739896349018352890328126581686819614251920770374309116925180512023165746617245884566461117852876388273597091579382501524869014104971855629918661350052400837170341969550322103230085336218445208331322008551230074574768987592658841023424123576447064017293558591878814282466826104962094969056868605650238749327995833200696078526179649926136520003955740762788120409047994886227300307139842594483553615963035685107844575679113799474716272045212372710168269783664558631899865390481610574848624316229775267258433671819990599198261740562997536320472163622394940639186122335617170105504051105680563455133431562477509541407033075182419271611051216254425096196944663804239796760781833456798471301827770726739943983136250028171525987268253347759915344493169355845948635754444222494899690177287420336343708993631287215294724206491777865699965405476958502912\n", + "17942464359902049122005996181789001786788554218030849964444516498930978865236931901402569492915027963655900111473866579470019097485625044460005868241794387110911341078713094229520269225766937261101379222581278485221683608016327410319460172004905930867152205409142322377527308168261117717230589940079232399175119072864219914394616832296261763990325569535390126934391038300151432154564989340281869128103479792698036705780656253163373639228503841540748618233850361024046331493234491769132922235705752776547194183158765003049738028209943711259837322700104801674340683939100644206460170672436890416662644017102460149149537975185317682046848247152894128034587117183757628564933652209924189938113737211300477498655991666401392157052359299852273040007911481525576240818095989772454600614279685188967107231926071370215689151358227598949432544090424745420336539567329117263799730780963221149697248632459550534516867343639981198396523481125995072640944327244789881278372244671234340211008102211361126910266863124955019082814066150364838543222102432508850192393889327608479593521563666913596942603655541453479887966272500056343051974536506695519830688986338711691897271508888444989799380354574840672687417987262574430589448412983555731399930810953917005824\n", + "35884928719804098244011992363578003573577108436061699928889032997861957730473863802805138985830055927311800222947733158940038194971250088920011736483588774221822682157426188459040538451533874522202758445162556970443367216032654820638920344009811861734304410818284644755054616336522235434461179880158464798350238145728439828789233664592523527980651139070780253868782076600302864309129978680563738256206959585396073411561312506326747278457007683081497236467700722048092662986468983538265844471411505553094388366317530006099476056419887422519674645400209603348681367878201288412920341344873780833325288034204920298299075950370635364093696494305788256069174234367515257129867304419848379876227474422600954997311983332802784314104718599704546080015822963051152481636191979544909201228559370377934214463852142740431378302716455197898865088180849490840673079134658234527599461561926442299394497264919101069033734687279962396793046962251990145281888654489579762556744489342468680422016204422722253820533726249910038165628132300729677086444204865017700384787778655216959187043127333827193885207311082906959775932545000112686103949073013391039661377972677423383794543017776889979598760709149681345374835974525148861178896825967111462799861621907834011648\n", + "71769857439608196488023984727156007147154216872123399857778065995723915460947727605610277971660111854623600445895466317880076389942500177840023472967177548443645364314852376918081076903067749044405516890325113940886734432065309641277840688019623723468608821636569289510109232673044470868922359760316929596700476291456879657578467329185047055961302278141560507737564153200605728618259957361127476512413919170792146823122625012653494556914015366162994472935401444096185325972937967076531688942823011106188776732635060012198952112839774845039349290800419206697362735756402576825840682689747561666650576068409840596598151900741270728187392988611576512138348468735030514259734608839696759752454948845201909994623966665605568628209437199409092160031645926102304963272383959089818402457118740755868428927704285480862756605432910395797730176361698981681346158269316469055198923123852884598788994529838202138067469374559924793586093924503980290563777308979159525113488978684937360844032408845444507641067452499820076331256264601459354172888409730035400769575557310433918374086254667654387770414622165813919551865090000225372207898146026782079322755945354846767589086035553779959197521418299362690749671949050297722357793651934222925599723243815668023296\n", + "143539714879216392976047969454312014294308433744246799715556131991447830921895455211220555943320223709247200891790932635760152779885000355680046945934355096887290728629704753836162153806135498088811033780650227881773468864130619282555681376039247446937217643273138579020218465346088941737844719520633859193400952582913759315156934658370094111922604556283121015475128306401211457236519914722254953024827838341584293646245250025306989113828030732325988945870802888192370651945875934153063377885646022212377553465270120024397904225679549690078698581600838413394725471512805153651681365379495123333301152136819681193196303801482541456374785977223153024276696937470061028519469217679393519504909897690403819989247933331211137256418874398818184320063291852204609926544767918179636804914237481511736857855408570961725513210865820791595460352723397963362692316538632938110397846247705769197577989059676404276134938749119849587172187849007960581127554617958319050226977957369874721688064817690889015282134904999640152662512529202918708345776819460070801539151114620867836748172509335308775540829244331627839103730180000450744415796292053564158645511890709693535178172071107559918395042836598725381499343898100595444715587303868445851199446487631336046592\n", + "287079429758432785952095938908624028588616867488493599431112263982895661843790910422441111886640447418494401783581865271520305559770000711360093891868710193774581457259409507672324307612270996177622067561300455763546937728261238565111362752078494893874435286546277158040436930692177883475689439041267718386801905165827518630313869316740188223845209112566242030950256612802422914473039829444509906049655676683168587292490500050613978227656061464651977891741605776384741303891751868306126755771292044424755106930540240048795808451359099380157397163201676826789450943025610307303362730758990246666602304273639362386392607602965082912749571954446306048553393874940122057038938435358787039009819795380807639978495866662422274512837748797636368640126583704409219853089535836359273609828474963023473715710817141923451026421731641583190920705446795926725384633077265876220795692495411538395155978119352808552269877498239699174344375698015921162255109235916638100453955914739749443376129635381778030564269809999280305325025058405837416691553638920141603078302229241735673496345018670617551081658488663255678207460360000901488831592584107128317291023781419387070356344142215119836790085673197450762998687796201190889431174607736891702398892975262672093184\n", + "574158859516865571904191877817248057177233734976987198862224527965791323687581820844882223773280894836988803567163730543040611119540001422720187783737420387549162914518819015344648615224541992355244135122600911527093875456522477130222725504156989787748870573092554316080873861384355766951378878082535436773603810331655037260627738633480376447690418225132484061900513225604845828946079658889019812099311353366337174584981000101227956455312122929303955783483211552769482607783503736612253511542584088849510213861080480097591616902718198760314794326403353653578901886051220614606725461517980493333204608547278724772785215205930165825499143908892612097106787749880244114077876870717574078019639590761615279956991733324844549025675497595272737280253167408818439706179071672718547219656949926046947431421634283846902052843463283166381841410893591853450769266154531752441591384990823076790311956238705617104539754996479398348688751396031842324510218471833276200907911829479498886752259270763556061128539619998560610650050116811674833383107277840283206156604458483471346992690037341235102163316977326511356414920720001802977663185168214256634582047562838774140712688284430239673580171346394901525997375592402381778862349215473783404797785950525344186368\n", + "1148317719033731143808383755634496114354467469953974397724449055931582647375163641689764447546561789673977607134327461086081222239080002845440375567474840775098325829037638030689297230449083984710488270245201823054187750913044954260445451008313979575497741146185108632161747722768711533902757756165070873547207620663310074521255477266960752895380836450264968123801026451209691657892159317778039624198622706732674349169962000202455912910624245858607911566966423105538965215567007473224507023085168177699020427722160960195183233805436397520629588652806707307157803772102441229213450923035960986666409217094557449545570430411860331650998287817785224194213575499760488228155753741435148156039279181523230559913983466649689098051350995190545474560506334817636879412358143345437094439313899852093894862843268567693804105686926566332763682821787183706901538532309063504883182769981646153580623912477411234209079509992958796697377502792063684649020436943666552401815823658958997773504518541527112122257079239997121221300100233623349666766214555680566412313208916966942693985380074682470204326633954653022712829841440003605955326370336428513269164095125677548281425376568860479347160342692789803051994751184804763557724698430947566809595571901050688372736\n", + "2296635438067462287616767511268992228708934939907948795448898111863165294750327283379528895093123579347955214268654922172162444478160005690880751134949681550196651658075276061378594460898167969420976540490403646108375501826089908520890902016627959150995482292370217264323495445537423067805515512330141747094415241326620149042510954533921505790761672900529936247602052902419383315784318635556079248397245413465348698339924000404911825821248491717215823133932846211077930431134014946449014046170336355398040855444321920390366467610872795041259177305613414614315607544204882458426901846071921973332818434189114899091140860823720663301996575635570448388427150999520976456311507482870296312078558363046461119827966933299378196102701990381090949121012669635273758824716286690874188878627799704187789725686537135387608211373853132665527365643574367413803077064618127009766365539963292307161247824954822468418159019985917593394755005584127369298040873887333104803631647317917995547009037083054224244514158479994242442600200467246699333532429111361132824626417833933885387970760149364940408653267909306045425659682880007211910652740672857026538328190251355096562850753137720958694320685385579606103989502369609527115449396861895133619191143802101376745472\n", + "4593270876134924575233535022537984457417869879815897590897796223726330589500654566759057790186247158695910428537309844344324888956320011381761502269899363100393303316150552122757188921796335938841953080980807292216751003652179817041781804033255918301990964584740434528646990891074846135611031024660283494188830482653240298085021909067843011581523345801059872495204105804838766631568637271112158496794490826930697396679848000809823651642496983434431646267865692422155860862268029892898028092340672710796081710888643840780732935221745590082518354611226829228631215088409764916853803692143843946665636868378229798182281721647441326603993151271140896776854301999041952912623014965740592624157116726092922239655933866598756392205403980762181898242025339270547517649432573381748377757255599408375579451373074270775216422747706265331054731287148734827606154129236254019532731079926584614322495649909644936836318039971835186789510011168254738596081747774666209607263294635835991094018074166108448489028316959988484885200400934493398667064858222722265649252835667867770775941520298729880817306535818612090851319365760014423821305481345714053076656380502710193125701506275441917388641370771159212207979004739219054230898793723790267238382287604202753490944\n", + "9186541752269849150467070045075968914835739759631795181795592447452661179001309133518115580372494317391820857074619688688649777912640022763523004539798726200786606632301104245514377843592671877683906161961614584433502007304359634083563608066511836603981929169480869057293981782149692271222062049320566988377660965306480596170043818135686023163046691602119744990408211609677533263137274542224316993588981653861394793359696001619647303284993966868863292535731384844311721724536059785796056184681345421592163421777287681561465870443491180165036709222453658457262430176819529833707607384287687893331273736756459596364563443294882653207986302542281793553708603998083905825246029931481185248314233452185844479311867733197512784410807961524363796484050678541095035298865146763496755514511198816751158902746148541550432845495412530662109462574297469655212308258472508039065462159853169228644991299819289873672636079943670373579020022336509477192163495549332419214526589271671982188036148332216896978056633919976969770400801868986797334129716445444531298505671335735541551883040597459761634613071637224181702638731520028847642610962691428106153312761005420386251403012550883834777282741542318424415958009478438108461797587447580534476764575208405506981888\n", + "18373083504539698300934140090151937829671479519263590363591184894905322358002618267036231160744988634783641714149239377377299555825280045527046009079597452401573213264602208491028755687185343755367812323923229168867004014608719268167127216133023673207963858338961738114587963564299384542444124098641133976755321930612961192340087636271372046326093383204239489980816423219355066526274549084448633987177963307722789586719392003239294606569987933737726585071462769688623443449072119571592112369362690843184326843554575363122931740886982360330073418444907316914524860353639059667415214768575375786662547473512919192729126886589765306415972605084563587107417207996167811650492059862962370496628466904371688958623735466395025568821615923048727592968101357082190070597730293526993511029022397633502317805492297083100865690990825061324218925148594939310424616516945016078130924319706338457289982599638579747345272159887340747158040044673018954384326991098664838429053178543343964376072296664433793956113267839953939540801603737973594668259432890889062597011342671471083103766081194919523269226143274448363405277463040057695285221925382856212306625522010840772502806025101767669554565483084636848831916018956876216923595174895161068953529150416811013963776\n", + "36746167009079396601868280180303875659342959038527180727182369789810644716005236534072462321489977269567283428298478754754599111650560091054092018159194904803146426529204416982057511374370687510735624647846458337734008029217438536334254432266047346415927716677923476229175927128598769084888248197282267953510643861225922384680175272542744092652186766408478979961632846438710133052549098168897267974355926615445579173438784006478589213139975867475453170142925539377246886898144239143184224738725381686368653687109150726245863481773964720660146836889814633829049720707278119334830429537150751573325094947025838385458253773179530612831945210169127174214834415992335623300984119725924740993256933808743377917247470932790051137643231846097455185936202714164380141195460587053987022058044795267004635610984594166201731381981650122648437850297189878620849233033890032156261848639412676914579965199277159494690544319774681494316080089346037908768653982197329676858106357086687928752144593328867587912226535679907879081603207475947189336518865781778125194022685342942166207532162389839046538452286548896726810554926080115390570443850765712424613251044021681545005612050203535339109130966169273697663832037913752433847190349790322137907058300833622027927552\n", + "73492334018158793203736560360607751318685918077054361454364739579621289432010473068144924642979954539134566856596957509509198223301120182108184036318389809606292853058408833964115022748741375021471249295692916675468016058434877072668508864532094692831855433355846952458351854257197538169776496394564535907021287722451844769360350545085488185304373532816957959923265692877420266105098196337794535948711853230891158346877568012957178426279951734950906340285851078754493773796288478286368449477450763372737307374218301452491726963547929441320293673779629267658099441414556238669660859074301503146650189894051676770916507546359061225663890420338254348429668831984671246601968239451849481986513867617486755834494941865580102275286463692194910371872405428328760282390921174107974044116089590534009271221969188332403462763963300245296875700594379757241698466067780064312523697278825353829159930398554318989381088639549362988632160178692075817537307964394659353716212714173375857504289186657735175824453071359815758163206414951894378673037731563556250388045370685884332415064324779678093076904573097793453621109852160230781140887701531424849226502088043363090011224100407070678218261932338547395327664075827504867694380699580644275814116601667244055855104\n", + "146984668036317586407473120721215502637371836154108722908729479159242578864020946136289849285959909078269133713193915019018396446602240364216368072636779619212585706116817667928230045497482750042942498591385833350936032116869754145337017729064189385663710866711693904916703708514395076339552992789129071814042575444903689538720701090170976370608747065633915919846531385754840532210196392675589071897423706461782316693755136025914356852559903469901812680571702157508987547592576956572736898954901526745474614748436602904983453927095858882640587347559258535316198882829112477339321718148603006293300379788103353541833015092718122451327780840676508696859337663969342493203936478903698963973027735234973511668989883731160204550572927384389820743744810856657520564781842348215948088232179181068018542443938376664806925527926600490593751401188759514483396932135560128625047394557650707658319860797108637978762177279098725977264320357384151635074615928789318707432425428346751715008578373315470351648906142719631516326412829903788757346075463127112500776090741371768664830128649559356186153809146195586907242219704320461562281775403062849698453004176086726180022448200814141356436523864677094790655328151655009735388761399161288551628233203334488111710208\n", + "293969336072635172814946241442431005274743672308217445817458958318485157728041892272579698571919818156538267426387830038036792893204480728432736145273559238425171412233635335856460090994965500085884997182771666701872064233739508290674035458128378771327421733423387809833407417028790152679105985578258143628085150889807379077441402180341952741217494131267831839693062771509681064420392785351178143794847412923564633387510272051828713705119806939803625361143404315017975095185153913145473797909803053490949229496873205809966907854191717765281174695118517070632397765658224954678643436297206012586600759576206707083666030185436244902655561681353017393718675327938684986407872957807397927946055470469947023337979767462320409101145854768779641487489621713315041129563684696431896176464358362136037084887876753329613851055853200981187502802377519028966793864271120257250094789115301415316639721594217275957524354558197451954528640714768303270149231857578637414864850856693503430017156746630940703297812285439263032652825659807577514692150926254225001552181482743537329660257299118712372307618292391173814484439408640923124563550806125699396906008352173452360044896401628282712873047729354189581310656303310019470777522798322577103256466406668976223420416\n", + "587938672145270345629892482884862010549487344616434891634917916636970315456083784545159397143839636313076534852775660076073585786408961456865472290547118476850342824467270671712920181989931000171769994365543333403744128467479016581348070916256757542654843466846775619666814834057580305358211971156516287256170301779614758154882804360683905482434988262535663679386125543019362128840785570702356287589694825847129266775020544103657427410239613879607250722286808630035950190370307826290947595819606106981898458993746411619933815708383435530562349390237034141264795531316449909357286872594412025173201519152413414167332060370872489805311123362706034787437350655877369972815745915614795855892110940939894046675959534924640818202291709537559282974979243426630082259127369392863792352928716724272074169775753506659227702111706401962375005604755038057933587728542240514500189578230602830633279443188434551915048709116394903909057281429536606540298463715157274829729701713387006860034313493261881406595624570878526065305651319615155029384301852508450003104362965487074659320514598237424744615236584782347628968878817281846249127101612251398793812016704346904720089792803256565425746095458708379162621312606620038941555045596645154206512932813337952446840832\n", + "1175877344290540691259784965769724021098974689232869783269835833273940630912167569090318794287679272626153069705551320152147171572817922913730944581094236953700685648934541343425840363979862000343539988731086666807488256934958033162696141832513515085309686933693551239333629668115160610716423942313032574512340603559229516309765608721367810964869976525071327358772251086038724257681571141404712575179389651694258533550041088207314854820479227759214501444573617260071900380740615652581895191639212213963796917987492823239867631416766871061124698780474068282529591062632899818714573745188824050346403038304826828334664120741744979610622246725412069574874701311754739945631491831229591711784221881879788093351919069849281636404583419075118565949958486853260164518254738785727584705857433448544148339551507013318455404223412803924750011209510076115867175457084481029000379156461205661266558886376869103830097418232789807818114562859073213080596927430314549659459403426774013720068626986523762813191249141757052130611302639230310058768603705016900006208725930974149318641029196474849489230473169564695257937757634563692498254203224502797587624033408693809440179585606513130851492190917416758325242625213240077883110091193290308413025865626675904893681664\n", + "2351754688581081382519569931539448042197949378465739566539671666547881261824335138180637588575358545252306139411102640304294343145635845827461889162188473907401371297869082686851680727959724000687079977462173333614976513869916066325392283665027030170619373867387102478667259336230321221432847884626065149024681207118459032619531217442735621929739953050142654717544502172077448515363142282809425150358779303388517067100082176414629709640958455518429002889147234520143800761481231305163790383278424427927593835974985646479735262833533742122249397560948136565059182125265799637429147490377648100692806076609653656669328241483489959221244493450824139149749402623509479891262983662459183423568443763759576186703838139698563272809166838150237131899916973706520329036509477571455169411714866897088296679103014026636910808446825607849500022419020152231734350914168962058000758312922411322533117772753738207660194836465579615636229125718146426161193854860629099318918806853548027440137253973047525626382498283514104261222605278460620117537207410033800012417451861948298637282058392949698978460946339129390515875515269127384996508406449005595175248066817387618880359171213026261702984381834833516650485250426480155766220182386580616826051731253351809787363328\n", + "4703509377162162765039139863078896084395898756931479133079343333095762523648670276361275177150717090504612278822205280608588686291271691654923778324376947814802742595738165373703361455919448001374159954924346667229953027739832132650784567330054060341238747734774204957334518672460642442865695769252130298049362414236918065239062434885471243859479906100285309435089004344154897030726284565618850300717558606777034134200164352829259419281916911036858005778294469040287601522962462610327580766556848855855187671949971292959470525667067484244498795121896273130118364250531599274858294980755296201385612153219307313338656482966979918442488986901648278299498805247018959782525967324918366847136887527519152373407676279397126545618333676300474263799833947413040658073018955142910338823429733794176593358206028053273821616893651215699000044838040304463468701828337924116001516625844822645066235545507476415320389672931159231272458251436292852322387709721258198637837613707096054880274507946095051252764996567028208522445210556921240235074414820067600024834903723896597274564116785899397956921892678258781031751030538254769993016812898011190350496133634775237760718342426052523405968763669667033300970500852960311532440364773161233652103462506703619574726656\n", + "9407018754324325530078279726157792168791797513862958266158686666191525047297340552722550354301434181009224557644410561217177372582543383309847556648753895629605485191476330747406722911838896002748319909848693334459906055479664265301569134660108120682477495469548409914669037344921284885731391538504260596098724828473836130478124869770942487718959812200570618870178008688309794061452569131237700601435117213554068268400328705658518838563833822073716011556588938080575203045924925220655161533113697711710375343899942585918941051334134968488997590243792546260236728501063198549716589961510592402771224306438614626677312965933959836884977973803296556598997610494037919565051934649836733694273775055038304746815352558794253091236667352600948527599667894826081316146037910285820677646859467588353186716412056106547643233787302431398000089676080608926937403656675848232003033251689645290132471091014952830640779345862318462544916502872585704644775419442516397275675227414192109760549015892190102505529993134056417044890421113842480470148829640135200049669807447793194549128233571798795913843785356517562063502061076509539986033625796022380700992267269550475521436684852105046811937527339334066601941001705920623064880729546322467304206925013407239149453312\n", + "18814037508648651060156559452315584337583595027725916532317373332383050094594681105445100708602868362018449115288821122434354745165086766619695113297507791259210970382952661494813445823677792005496639819697386668919812110959328530603138269320216241364954990939096819829338074689842569771462783077008521192197449656947672260956249739541884975437919624401141237740356017376619588122905138262475401202870234427108136536800657411317037677127667644147432023113177876161150406091849850441310323066227395423420750687799885171837882102668269936977995180487585092520473457002126397099433179923021184805542448612877229253354625931867919673769955947606593113197995220988075839130103869299673467388547550110076609493630705117588506182473334705201897055199335789652162632292075820571641355293718935176706373432824112213095286467574604862796000179352161217853874807313351696464006066503379290580264942182029905661281558691724636925089833005745171409289550838885032794551350454828384219521098031784380205011059986268112834089780842227684960940297659280270400099339614895586389098256467143597591827687570713035124127004122153019079972067251592044761401984534539100951042873369704210093623875054678668133203882003411841246129761459092644934608413850026814478298906624\n", + "37628075017297302120313118904631168675167190055451833064634746664766100189189362210890201417205736724036898230577642244868709490330173533239390226595015582518421940765905322989626891647355584010993279639394773337839624221918657061206276538640432482729909981878193639658676149379685139542925566154017042384394899313895344521912499479083769950875839248802282475480712034753239176245810276524950802405740468854216273073601314822634075354255335288294864046226355752322300812183699700882620646132454790846841501375599770343675764205336539873955990360975170185040946914004252794198866359846042369611084897225754458506709251863735839347539911895213186226395990441976151678260207738599346934777095100220153218987261410235177012364946669410403794110398671579304325264584151641143282710587437870353412746865648224426190572935149209725592000358704322435707749614626703392928012133006758581160529884364059811322563117383449273850179666011490342818579101677770065589102700909656768439042196063568760410022119972536225668179561684455369921880595318560540800198679229791172778196512934287195183655375141426070248254008244306038159944134503184089522803969069078201902085746739408420187247750109357336266407764006823682492259522918185289869216827700053628956597813248\n", + "75256150034594604240626237809262337350334380110903666129269493329532200378378724421780402834411473448073796461155284489737418980660347066478780453190031165036843881531810645979253783294711168021986559278789546675679248443837314122412553077280864965459819963756387279317352298759370279085851132308034084768789798627790689043824998958167539901751678497604564950961424069506478352491620553049901604811480937708432546147202629645268150708510670576589728092452711504644601624367399401765241292264909581693683002751199540687351528410673079747911980721950340370081893828008505588397732719692084739222169794451508917013418503727471678695079823790426372452791980883952303356520415477198693869554190200440306437974522820470354024729893338820807588220797343158608650529168303282286565421174875740706825493731296448852381145870298419451184000717408644871415499229253406785856024266013517162321059768728119622645126234766898547700359332022980685637158203355540131178205401819313536878084392127137520820044239945072451336359123368910739843761190637121081600397358459582345556393025868574390367310750282852140496508016488612076319888269006368179045607938138156403804171493478816840374495500218714672532815528013647364984519045836370579738433655400107257913195626496\n", + "150512300069189208481252475618524674700668760221807332258538986659064400756757448843560805668822946896147592922310568979474837961320694132957560906380062330073687763063621291958507566589422336043973118557579093351358496887674628244825106154561729930919639927512774558634704597518740558171702264616068169537579597255581378087649997916335079803503356995209129901922848139012956704983241106099803209622961875416865092294405259290536301417021341153179456184905423009289203248734798803530482584529819163387366005502399081374703056821346159495823961443900680740163787656017011176795465439384169478444339588903017834026837007454943357390159647580852744905583961767904606713040830954397387739108380400880612875949045640940708049459786677641615176441594686317217301058336606564573130842349751481413650987462592897704762291740596838902368001434817289742830998458506813571712048532027034324642119537456239245290252469533797095400718664045961371274316406711080262356410803638627073756168784254275041640088479890144902672718246737821479687522381274242163200794716919164691112786051737148780734621500565704280993016032977224152639776538012736358091215876276312807608342986957633680748991000437429345065631056027294729969038091672741159476867310800214515826391252992\n", + "301024600138378416962504951237049349401337520443614664517077973318128801513514897687121611337645893792295185844621137958949675922641388265915121812760124660147375526127242583917015133178844672087946237115158186702716993775349256489650212309123459861839279855025549117269409195037481116343404529232136339075159194511162756175299995832670159607006713990418259803845696278025913409966482212199606419245923750833730184588810518581072602834042682306358912369810846018578406497469597607060965169059638326774732011004798162749406113642692318991647922887801361480327575312034022353590930878768338956888679177806035668053674014909886714780319295161705489811167923535809213426081661908794775478216760801761225751898091281881416098919573355283230352883189372634434602116673213129146261684699502962827301974925185795409524583481193677804736002869634579485661996917013627143424097064054068649284239074912478490580504939067594190801437328091922742548632813422160524712821607277254147512337568508550083280176959780289805345436493475642959375044762548484326401589433838329382225572103474297561469243001131408561986032065954448305279553076025472716182431752552625615216685973915267361497982000874858690131262112054589459938076183345482318953734621600429031652782505984\n", + "602049200276756833925009902474098698802675040887229329034155946636257603027029795374243222675291787584590371689242275917899351845282776531830243625520249320294751052254485167834030266357689344175892474230316373405433987550698512979300424618246919723678559710051098234538818390074962232686809058464272678150318389022325512350599991665340319214013427980836519607691392556051826819932964424399212838491847501667460369177621037162145205668085364612717824739621692037156812994939195214121930338119276653549464022009596325498812227285384637983295845775602722960655150624068044707181861757536677913777358355612071336107348029819773429560638590323410979622335847071618426852163323817589550956433521603522451503796182563762832197839146710566460705766378745268869204233346426258292523369399005925654603949850371590819049166962387355609472005739269158971323993834027254286848194128108137298568478149824956981161009878135188381602874656183845485097265626844321049425643214554508295024675137017100166560353919560579610690872986951285918750089525096968652803178867676658764451144206948595122938486002262817123972064131908896610559106152050945432364863505105251230433371947830534722995964001749717380262524224109178919876152366690964637907469243200858063305565011968\n", + "1204098400553513667850019804948197397605350081774458658068311893272515206054059590748486445350583575169180743378484551835798703690565553063660487251040498640589502104508970335668060532715378688351784948460632746810867975101397025958600849236493839447357119420102196469077636780149924465373618116928545356300636778044651024701199983330680638428026855961673039215382785112103653639865928848798425676983695003334920738355242074324290411336170729225435649479243384074313625989878390428243860676238553307098928044019192650997624454570769275966591691551205445921310301248136089414363723515073355827554716711224142672214696059639546859121277180646821959244671694143236853704326647635179101912867043207044903007592365127525664395678293421132921411532757490537738408466692852516585046738798011851309207899700743181638098333924774711218944011478538317942647987668054508573696388256216274597136956299649913962322019756270376763205749312367690970194531253688642098851286429109016590049350274034200333120707839121159221381745973902571837500179050193937305606357735353317528902288413897190245876972004525634247944128263817793221118212304101890864729727010210502460866743895661069445991928003499434760525048448218357839752304733381929275814938486401716126611130023936\n", + "2408196801107027335700039609896394795210700163548917316136623786545030412108119181496972890701167150338361486756969103671597407381131106127320974502080997281179004209017940671336121065430757376703569896921265493621735950202794051917201698472987678894714238840204392938155273560299848930747236233857090712601273556089302049402399966661361276856053711923346078430765570224207307279731857697596851353967390006669841476710484148648580822672341458450871298958486768148627251979756780856487721352477106614197856088038385301995248909141538551933183383102410891842620602496272178828727447030146711655109433422448285344429392119279093718242554361293643918489343388286473707408653295270358203825734086414089806015184730255051328791356586842265842823065514981075476816933385705033170093477596023702618415799401486363276196667849549422437888022957076635885295975336109017147392776512432549194273912599299827924644039512540753526411498624735381940389062507377284197702572858218033180098700548068400666241415678242318442763491947805143675000358100387874611212715470706635057804576827794380491753944009051268495888256527635586442236424608203781729459454020421004921733487791322138891983856006998869521050096896436715679504609466763858551629876972803432253222260047872\n", + "4816393602214054671400079219792789590421400327097834632273247573090060824216238362993945781402334300676722973513938207343194814762262212254641949004161994562358008418035881342672242130861514753407139793842530987243471900405588103834403396945975357789428477680408785876310547120599697861494472467714181425202547112178604098804799933322722553712107423846692156861531140448414614559463715395193702707934780013339682953420968297297161645344682916901742597916973536297254503959513561712975442704954213228395712176076770603990497818283077103866366766204821783685241204992544357657454894060293423310218866844896570688858784238558187436485108722587287836978686776572947414817306590540716407651468172828179612030369460510102657582713173684531685646131029962150953633866771410066340186955192047405236831598802972726552393335699098844875776045914153271770591950672218034294785553024865098388547825198599655849288079025081507052822997249470763880778125014754568395405145716436066360197401096136801332482831356484636885526983895610287350000716200775749222425430941413270115609153655588760983507888018102536991776513055271172884472849216407563458918908040842009843466975582644277783967712013997739042100193792873431359009218933527717103259753945606864506444520095744\n", + "9632787204428109342800158439585579180842800654195669264546495146180121648432476725987891562804668601353445947027876414686389629524524424509283898008323989124716016836071762685344484261723029506814279587685061974486943800811176207668806793891950715578856955360817571752621094241199395722988944935428362850405094224357208197609599866645445107424214847693384313723062280896829229118927430790387405415869560026679365906841936594594323290689365833803485195833947072594509007919027123425950885409908426456791424352153541207980995636566154207732733532409643567370482409985088715314909788120586846620437733689793141377717568477116374872970217445174575673957373553145894829634613181081432815302936345656359224060738921020205315165426347369063371292262059924301907267733542820132680373910384094810473663197605945453104786671398197689751552091828306543541183901344436068589571106049730196777095650397199311698576158050163014105645994498941527761556250029509136790810291432872132720394802192273602664965662712969273771053967791220574700001432401551498444850861882826540231218307311177521967015776036205073983553026110542345768945698432815126917837816081684019686933951165288555567935424027995478084200387585746862718018437867055434206519507891213729012889040191488\n", + "19265574408856218685600316879171158361685601308391338529092990292360243296864953451975783125609337202706891894055752829372779259049048849018567796016647978249432033672143525370688968523446059013628559175370123948973887601622352415337613587783901431157713910721635143505242188482398791445977889870856725700810188448714416395219199733290890214848429695386768627446124561793658458237854861580774810831739120053358731813683873189188646581378731667606970391667894145189018015838054246851901770819816852913582848704307082415961991273132308415465467064819287134740964819970177430629819576241173693240875467379586282755435136954232749745940434890349151347914747106291789659269226362162865630605872691312718448121477842040410630330852694738126742584524119848603814535467085640265360747820768189620947326395211890906209573342796395379503104183656613087082367802688872137179142212099460393554191300794398623397152316100326028211291988997883055523112500059018273581620582865744265440789604384547205329931325425938547542107935582441149400002864803102996889701723765653080462436614622355043934031552072410147967106052221084691537891396865630253835675632163368039373867902330577111135870848055990956168400775171493725436036875734110868413039015782427458025778080382976\n", + "38531148817712437371200633758342316723371202616782677058185980584720486593729906903951566251218674405413783788111505658745558518098097698037135592033295956498864067344287050741377937046892118027257118350740247897947775203244704830675227175567802862315427821443270287010484376964797582891955779741713451401620376897428832790438399466581780429696859390773537254892249123587316916475709723161549621663478240106717463627367746378377293162757463335213940783335788290378036031676108493703803541639633705827165697408614164831923982546264616830930934129638574269481929639940354861259639152482347386481750934759172565510870273908465499491880869780698302695829494212583579318538452724325731261211745382625436896242955684080821260661705389476253485169048239697207629070934171280530721495641536379241894652790423781812419146685592790759006208367313226174164735605377744274358284424198920787108382601588797246794304632200652056422583977995766111046225000118036547163241165731488530881579208769094410659862650851877095084215871164882298800005729606205993779403447531306160924873229244710087868063104144820295934212104442169383075782793731260507671351264326736078747735804661154222271741696111981912336801550342987450872073751468221736826078031564854916051556160765952\n", + "77062297635424874742401267516684633446742405233565354116371961169440973187459813807903132502437348810827567576223011317491117036196195396074271184066591912997728134688574101482755874093784236054514236701480495795895550406489409661350454351135605724630855642886540574020968753929595165783911559483426902803240753794857665580876798933163560859393718781547074509784498247174633832951419446323099243326956480213434927254735492756754586325514926670427881566671576580756072063352216987407607083279267411654331394817228329663847965092529233661861868259277148538963859279880709722519278304964694772963501869518345131021740547816930998983761739561396605391658988425167158637076905448651462522423490765250873792485911368161642521323410778952506970338096479394415258141868342561061442991283072758483789305580847563624838293371185581518012416734626452348329471210755488548716568848397841574216765203177594493588609264401304112845167955991532222092450000236073094326482331462977061763158417538188821319725301703754190168431742329764597600011459212411987558806895062612321849746458489420175736126208289640591868424208884338766151565587462521015342702528653472157495471609322308444543483392223963824673603100685974901744147502936443473652156063129709832103112321531904\n", + "154124595270849749484802535033369266893484810467130708232743922338881946374919627615806265004874697621655135152446022634982234072392390792148542368133183825995456269377148202965511748187568472109028473402960991591791100812978819322700908702271211449261711285773081148041937507859190331567823118966853805606481507589715331161753597866327121718787437563094149019568996494349267665902838892646198486653912960426869854509470985513509172651029853340855763133343153161512144126704433974815214166558534823308662789634456659327695930185058467323723736518554297077927718559761419445038556609929389545927003739036690262043481095633861997967523479122793210783317976850334317274153810897302925044846981530501747584971822736323285042646821557905013940676192958788830516283736685122122885982566145516967578611161695127249676586742371163036024833469252904696658942421510977097433137696795683148433530406355188987177218528802608225690335911983064444184900000472146188652964662925954123526316835076377642639450603407508380336863484659529195200022918424823975117613790125224643699492916978840351472252416579281183736848417768677532303131174925042030685405057306944314990943218644616889086966784447927649347206201371949803488295005872886947304312126259419664206224643063808\n", + "308249190541699498969605070066738533786969620934261416465487844677763892749839255231612530009749395243310270304892045269964468144784781584297084736266367651990912538754296405931023496375136944218056946805921983183582201625957638645401817404542422898523422571546162296083875015718380663135646237933707611212963015179430662323507195732654243437574875126188298039137992988698535331805677785292396973307825920853739709018941971027018345302059706681711526266686306323024288253408867949630428333117069646617325579268913318655391860370116934647447473037108594155855437119522838890077113219858779091854007478073380524086962191267723995935046958245586421566635953700668634548307621794605850089693963061003495169943645472646570085293643115810027881352385917577661032567473370244245771965132291033935157222323390254499353173484742326072049666938505809393317884843021954194866275393591366296867060812710377974354437057605216451380671823966128888369800000944292377305929325851908247052633670152755285278901206815016760673726969319058390400045836849647950235227580250449287398985833957680702944504833158562367473696835537355064606262349850084061370810114613888629981886437289233778173933568895855298694412402743899606976590011745773894608624252518839328412449286127616\n", + "616498381083398997939210140133477067573939241868522832930975689355527785499678510463225060019498790486620540609784090539928936289569563168594169472532735303981825077508592811862046992750273888436113893611843966367164403251915277290803634809084845797046845143092324592167750031436761326271292475867415222425926030358861324647014391465308486875149750252376596078275985977397070663611355570584793946615651841707479418037883942054036690604119413363423052533372612646048576506817735899260856666234139293234651158537826637310783720740233869294894946074217188311710874239045677780154226439717558183708014956146761048173924382535447991870093916491172843133271907401337269096615243589211700179387926122006990339887290945293140170587286231620055762704771835155322065134946740488491543930264582067870314444646780508998706346969484652144099333877011618786635769686043908389732550787182732593734121625420755948708874115210432902761343647932257776739600001888584754611858651703816494105267340305510570557802413630033521347453938638116780800091673699295900470455160500898574797971667915361405889009666317124734947393671074710129212524699700168122741620229227777259963772874578467556347867137791710597388824805487799213953180023491547789217248505037678656824898572255232\n", + "1232996762166797995878420280266954135147878483737045665861951378711055570999357020926450120038997580973241081219568181079857872579139126337188338945065470607963650155017185623724093985500547776872227787223687932734328806503830554581607269618169691594093690286184649184335500062873522652542584951734830444851852060717722649294028782930616973750299500504753192156551971954794141327222711141169587893231303683414958836075767884108073381208238826726846105066745225292097153013635471798521713332468278586469302317075653274621567441480467738589789892148434376623421748478091355560308452879435116367416029912293522096347848765070895983740187832982345686266543814802674538193230487178423400358775852244013980679774581890586280341174572463240111525409543670310644130269893480976983087860529164135740628889293561017997412693938969304288198667754023237573271539372087816779465101574365465187468243250841511897417748230420865805522687295864515553479200003777169509223717303407632988210534680611021141115604827260067042694907877276233561600183347398591800940910321001797149595943335830722811778019332634249469894787342149420258425049399400336245483240458455554519927545749156935112695734275583421194777649610975598427906360046983095578434497010075357313649797144510464\n", + "2465993524333595991756840560533908270295756967474091331723902757422111141998714041852900240077995161946482162439136362159715745158278252674376677890130941215927300310034371247448187971001095553744455574447375865468657613007661109163214539236339383188187380572369298368671000125747045305085169903469660889703704121435445298588057565861233947500599001009506384313103943909588282654445422282339175786462607366829917672151535768216146762416477653453692210133490450584194306027270943597043426664936557172938604634151306549243134882960935477179579784296868753246843496956182711120616905758870232734832059824587044192695697530141791967480375665964691372533087629605349076386460974356846800717551704488027961359549163781172560682349144926480223050819087340621288260539786961953966175721058328271481257778587122035994825387877938608576397335508046475146543078744175633558930203148730930374936486501683023794835496460841731611045374591729031106958400007554339018447434606815265976421069361222042282231209654520134085389815754552467123200366694797183601881820642003594299191886671661445623556038665268498939789574684298840516850098798800672490966480916911109039855091498313870225391468551166842389555299221951196855812720093966191156868994020150714627299594289020928\n", + "4931987048667191983513681121067816540591513934948182663447805514844222283997428083705800480155990323892964324878272724319431490316556505348753355780261882431854600620068742494896375942002191107488911148894751730937315226015322218326429078472678766376374761144738596737342000251494090610170339806939321779407408242870890597176115131722467895001198002019012768626207887819176565308890844564678351572925214733659835344303071536432293524832955306907384420266980901168388612054541887194086853329873114345877209268302613098486269765921870954359159568593737506493686993912365422241233811517740465469664119649174088385391395060283583934960751331929382745066175259210698152772921948713693601435103408976055922719098327562345121364698289852960446101638174681242576521079573923907932351442116656542962515557174244071989650775755877217152794671016092950293086157488351267117860406297461860749872973003366047589670992921683463222090749183458062213916800015108678036894869213630531952842138722444084564462419309040268170779631509104934246400733389594367203763641284007188598383773343322891247112077330536997879579149368597681033700197597601344981932961833822218079710182996627740450782937102333684779110598443902393711625440187932382313737988040301429254599188578041856\n", + "9863974097334383967027362242135633081183027869896365326895611029688444567994856167411600960311980647785928649756545448638862980633113010697506711560523764863709201240137484989792751884004382214977822297789503461874630452030644436652858156945357532752749522289477193474684000502988181220340679613878643558814816485741781194352230263444935790002396004038025537252415775638353130617781689129356703145850429467319670688606143072864587049665910613814768840533961802336777224109083774388173706659746228691754418536605226196972539531843741908718319137187475012987373987824730844482467623035480930939328239298348176770782790120567167869921502663858765490132350518421396305545843897427387202870206817952111845438196655124690242729396579705920892203276349362485153042159147847815864702884233313085925031114348488143979301551511754434305589342032185900586172314976702534235720812594923721499745946006732095179341985843366926444181498366916124427833600030217356073789738427261063905684277444888169128924838618080536341559263018209868492801466779188734407527282568014377196767546686645782494224154661073995759158298737195362067400395195202689963865923667644436159420365993255480901565874204667369558221196887804787423250880375864764627475976080602858509198377156083712\n", + "19727948194668767934054724484271266162366055739792730653791222059376889135989712334823201920623961295571857299513090897277725961266226021395013423121047529727418402480274969979585503768008764429955644595579006923749260904061288873305716313890715065505499044578954386949368001005976362440681359227757287117629632971483562388704460526889871580004792008076051074504831551276706261235563378258713406291700858934639341377212286145729174099331821227629537681067923604673554448218167548776347413319492457383508837073210452393945079063687483817436638274374950025974747975649461688964935246070961861878656478596696353541565580241134335739843005327717530980264701036842792611091687794854774405740413635904223690876393310249380485458793159411841784406552698724970306084318295695631729405768466626171850062228696976287958603103023508868611178684064371801172344629953405068471441625189847442999491892013464190358683971686733852888362996733832248855667200060434712147579476854522127811368554889776338257849677236161072683118526036419736985602933558377468815054565136028754393535093373291564988448309322147991518316597474390724134800790390405379927731847335288872318840731986510961803131748409334739116442393775609574846501760751729529254951952161205717018396754312167424\n", + "39455896389337535868109448968542532324732111479585461307582444118753778271979424669646403841247922591143714599026181794555451922532452042790026846242095059454836804960549939959171007536017528859911289191158013847498521808122577746611432627781430131010998089157908773898736002011952724881362718455514574235259265942967124777408921053779743160009584016152102149009663102553412522471126756517426812583401717869278682754424572291458348198663642455259075362135847209347108896436335097552694826638984914767017674146420904787890158127374967634873276548749900051949495951298923377929870492141923723757312957193392707083131160482268671479686010655435061960529402073685585222183375589709548811480827271808447381752786620498760970917586318823683568813105397449940612168636591391263458811536933252343700124457393952575917206206047017737222357368128743602344689259906810136942883250379694885998983784026928380717367943373467705776725993467664497711334400120869424295158953709044255622737109779552676515699354472322145366237052072839473971205867116754937630109130272057508787070186746583129976896618644295983036633194948781448269601580780810759855463694670577744637681463973021923606263496818669478232884787551219149693003521503459058509903904322411434036793508624334848\n", + "78911792778675071736218897937085064649464222959170922615164888237507556543958849339292807682495845182287429198052363589110903845064904085580053692484190118909673609921099879918342015072035057719822578382316027694997043616245155493222865255562860262021996178315817547797472004023905449762725436911029148470518531885934249554817842107559486320019168032304204298019326205106825044942253513034853625166803435738557365508849144582916696397327284910518150724271694418694217792872670195105389653277969829534035348292841809575780316254749935269746553097499800103898991902597846755859740984283847447514625914386785414166262320964537342959372021310870123921058804147371170444366751179419097622961654543616894763505573240997521941835172637647367137626210794899881224337273182782526917623073866504687400248914787905151834412412094035474444714736257487204689378519813620273885766500759389771997967568053856761434735886746935411553451986935328995422668800241738848590317907418088511245474219559105353031398708944644290732474104145678947942411734233509875260218260544115017574140373493166259953793237288591966073266389897562896539203161561621519710927389341155489275362927946043847212526993637338956465769575102438299386007043006918117019807808644822868073587017248669696\n", + "157823585557350143472437795874170129298928445918341845230329776475015113087917698678585615364991690364574858396104727178221807690129808171160107384968380237819347219842199759836684030144070115439645156764632055389994087232490310986445730511125720524043992356631635095594944008047810899525450873822058296941037063771868499109635684215118972640038336064608408596038652410213650089884507026069707250333606871477114731017698289165833392794654569821036301448543388837388435585745340390210779306555939659068070696585683619151560632509499870539493106194999600207797983805195693511719481968567694895029251828773570828332524641929074685918744042621740247842117608294742340888733502358838195245923309087233789527011146481995043883670345275294734275252421589799762448674546365565053835246147733009374800497829575810303668824824188070948889429472514974409378757039627240547771533001518779543995935136107713522869471773493870823106903973870657990845337600483477697180635814836177022490948439118210706062797417889288581464948208291357895884823468467019750520436521088230035148280746986332519907586474577183932146532779795125793078406323123243039421854778682310978550725855892087694425053987274677912931539150204876598772014086013836234039615617289645736147174034497339392\n", + "315647171114700286944875591748340258597856891836683690460659552950030226175835397357171230729983380729149716792209454356443615380259616342320214769936760475638694439684399519673368060288140230879290313529264110779988174464980621972891461022251441048087984713263270191189888016095621799050901747644116593882074127543736998219271368430237945280076672129216817192077304820427300179769014052139414500667213742954229462035396578331666785589309139642072602897086777674776871171490680780421558613111879318136141393171367238303121265018999741078986212389999200415595967610391387023438963937135389790058503657547141656665049283858149371837488085243480495684235216589484681777467004717676390491846618174467579054022292963990087767340690550589468550504843179599524897349092731130107670492295466018749600995659151620607337649648376141897778858945029948818757514079254481095543066003037559087991870272215427045738943546987741646213807947741315981690675200966955394361271629672354044981896878236421412125594835778577162929896416582715791769646936934039501040873042176460070296561493972665039815172949154367864293065559590251586156812646246486078843709557364621957101451711784175388850107974549355825863078300409753197544028172027672468079231234579291472294348068994678784\n", + "631294342229400573889751183496680517195713783673367380921319105900060452351670794714342461459966761458299433584418908712887230760519232684640429539873520951277388879368799039346736120576280461758580627058528221559976348929961243945782922044502882096175969426526540382379776032191243598101803495288233187764148255087473996438542736860475890560153344258433634384154609640854600359538028104278829001334427485908458924070793156663333571178618279284145205794173555349553742342981361560843117226223758636272282786342734476606242530037999482157972424779998400831191935220782774046877927874270779580117007315094283313330098567716298743674976170486960991368470433178969363554934009435352780983693236348935158108044585927980175534681381101178937101009686359199049794698185462260215340984590932037499201991318303241214675299296752283795557717890059897637515028158508962191086132006075118175983740544430854091477887093975483292427615895482631963381350401933910788722543259344708089963793756472842824251189671557154325859792833165431583539293873868079002081746084352920140593122987945330079630345898308735728586131119180503172313625292492972157687419114729243914202903423568350777700215949098711651726156600819506395088056344055344936158462469158582944588696137989357568\n", + "1262588684458801147779502366993361034391427567346734761842638211800120904703341589428684922919933522916598867168837817425774461521038465369280859079747041902554777758737598078693472241152560923517161254117056443119952697859922487891565844089005764192351938853053080764759552064382487196203606990576466375528296510174947992877085473720951781120306688516867268768309219281709200719076056208557658002668854971816917848141586313326667142357236558568290411588347110699107484685962723121686234452447517272544565572685468953212485060075998964315944849559996801662383870441565548093755855748541559160234014630188566626660197135432597487349952340973921982736940866357938727109868018870705561967386472697870316216089171855960351069362762202357874202019372718398099589396370924520430681969181864074998403982636606482429350598593504567591115435780119795275030056317017924382172264012150236351967481088861708182955774187950966584855231790965263926762700803867821577445086518689416179927587512945685648502379343114308651719585666330863167078587747736158004163492168705840281186245975890660159260691796617471457172262238361006344627250584985944315374838229458487828405806847136701555400431898197423303452313201639012790176112688110689872316924938317165889177392275978715136\n", + "2525177368917602295559004733986722068782855134693469523685276423600241809406683178857369845839867045833197734337675634851548923042076930738561718159494083805109555517475196157386944482305121847034322508234112886239905395719844975783131688178011528384703877706106161529519104128764974392407213981152932751056593020349895985754170947441903562240613377033734537536618438563418401438152112417115316005337709943633835696283172626653334284714473117136580823176694221398214969371925446243372468904895034545089131145370937906424970120151997928631889699119993603324767740883131096187511711497083118320468029260377133253320394270865194974699904681947843965473881732715877454219736037741411123934772945395740632432178343711920702138725524404715748404038745436796199178792741849040861363938363728149996807965273212964858701197187009135182230871560239590550060112634035848764344528024300472703934962177723416365911548375901933169710463581930527853525401607735643154890173037378832359855175025891371297004758686228617303439171332661726334157175495472316008326984337411680562372491951781320318521383593234942914344524476722012689254501169971888630749676458916975656811613694273403110800863796394846606904626403278025580352225376221379744633849876634331778354784551957430272\n", + "5050354737835204591118009467973444137565710269386939047370552847200483618813366357714739691679734091666395468675351269703097846084153861477123436318988167610219111034950392314773888964610243694068645016468225772479810791439689951566263376356023056769407755412212323059038208257529948784814427962305865502113186040699791971508341894883807124481226754067469075073236877126836802876304224834230632010675419887267671392566345253306668569428946234273161646353388442796429938743850892486744937809790069090178262290741875812849940240303995857263779398239987206649535481766262192375023422994166236640936058520754266506640788541730389949399809363895687930947763465431754908439472075482822247869545890791481264864356687423841404277451048809431496808077490873592398357585483698081722727876727456299993615930546425929717402394374018270364461743120479181100120225268071697528689056048600945407869924355446832731823096751803866339420927163861055707050803215471286309780346074757664719710350051782742594009517372457234606878342665323452668314350990944632016653968674823361124744983903562640637042767186469885828689048953444025378509002339943777261499352917833951313623227388546806221601727592789693213809252806556051160704450752442759489267699753268663556709569103914860544\n", + "10100709475670409182236018935946888275131420538773878094741105694400967237626732715429479383359468183332790937350702539406195692168307722954246872637976335220438222069900784629547777929220487388137290032936451544959621582879379903132526752712046113538815510824424646118076416515059897569628855924611731004226372081399583943016683789767614248962453508134938150146473754253673605752608449668461264021350839774535342785132690506613337138857892468546323292706776885592859877487701784973489875619580138180356524581483751625699880480607991714527558796479974413299070963532524384750046845988332473281872117041508533013281577083460779898799618727791375861895526930863509816878944150965644495739091781582962529728713374847682808554902097618862993616154981747184796715170967396163445455753454912599987231861092851859434804788748036540728923486240958362200240450536143395057378112097201890815739848710893665463646193503607732678841854327722111414101606430942572619560692149515329439420700103565485188019034744914469213756685330646905336628701981889264033307937349646722249489967807125281274085534372939771657378097906888050757018004679887554522998705835667902627246454777093612443203455185579386427618505613112102321408901504885518978535399506537327113419138207829721088\n", + "20201418951340818364472037871893776550262841077547756189482211388801934475253465430858958766718936366665581874701405078812391384336615445908493745275952670440876444139801569259095555858440974776274580065872903089919243165758759806265053505424092227077631021648849292236152833030119795139257711849223462008452744162799167886033367579535228497924907016269876300292947508507347211505216899336922528042701679549070685570265381013226674277715784937092646585413553771185719754975403569946979751239160276360713049162967503251399760961215983429055117592959948826598141927065048769500093691976664946563744234083017066026563154166921559797599237455582751723791053861727019633757888301931288991478183563165925059457426749695365617109804195237725987232309963494369593430341934792326890911506909825199974463722185703718869609577496073081457846972481916724400480901072286790114756224194403781631479697421787330927292387007215465357683708655444222828203212861885145239121384299030658878841400207130970376038069489828938427513370661293810673257403963778528066615874699293444498979935614250562548171068745879543314756195813776101514036009359775109045997411671335805254492909554187224886406910371158772855237011226224204642817803009771037957070799013074654226838276415659442176\n", + "40402837902681636728944075743787553100525682155095512378964422777603868950506930861717917533437872733331163749402810157624782768673230891816987490551905340881752888279603138518191111716881949552549160131745806179838486331517519612530107010848184454155262043297698584472305666060239590278515423698446924016905488325598335772066735159070456995849814032539752600585895017014694423010433798673845056085403359098141371140530762026453348555431569874185293170827107542371439509950807139893959502478320552721426098325935006502799521922431966858110235185919897653196283854130097539000187383953329893127488468166034132053126308333843119595198474911165503447582107723454039267515776603862577982956367126331850118914853499390731234219608390475451974464619926988739186860683869584653781823013819650399948927444371407437739219154992146162915693944963833448800961802144573580229512448388807563262959394843574661854584774014430930715367417310888445656406425723770290478242768598061317757682800414261940752076138979657876855026741322587621346514807927557056133231749398586888997959871228501125096342137491759086629512391627552203028072018719550218091994823342671610508985819108374449772813820742317545710474022452448409285635606019542075914141598026149308453676552831318884352\n", + "80805675805363273457888151487575106201051364310191024757928845555207737901013861723435835066875745466662327498805620315249565537346461783633974981103810681763505776559206277036382223433763899105098320263491612359676972663035039225060214021696368908310524086595397168944611332120479180557030847396893848033810976651196671544133470318140913991699628065079505201171790034029388846020867597347690112170806718196282742281061524052906697110863139748370586341654215084742879019901614279787919004956641105442852196651870013005599043844863933716220470371839795306392567708260195078000374767906659786254976936332068264106252616667686239190396949822331006895164215446908078535031553207725155965912734252663700237829706998781462468439216780950903948929239853977478373721367739169307563646027639300799897854888742814875478438309984292325831387889927666897601923604289147160459024896777615126525918789687149323709169548028861861430734834621776891312812851447540580956485537196122635515365600828523881504152277959315753710053482645175242693029615855114112266463498797173777995919742457002250192684274983518173259024783255104406056144037439100436183989646685343221017971638216748899545627641484635091420948044904896818571271212039084151828283196052298616907353105662637768704\n", + "161611351610726546915776302975150212402102728620382049515857691110415475802027723446871670133751490933324654997611240630499131074692923567267949962207621363527011553118412554072764446867527798210196640526983224719353945326070078450120428043392737816621048173190794337889222664240958361114061694793787696067621953302393343088266940636281827983399256130159010402343580068058777692041735194695380224341613436392565484562123048105813394221726279496741172683308430169485758039803228559575838009913282210885704393303740026011198087689727867432440940743679590612785135416520390156000749535813319572509953872664136528212505233335372478380793899644662013790328430893816157070063106415450311931825468505327400475659413997562924936878433561901807897858479707954956747442735478338615127292055278601599795709777485629750956876619968584651662775779855333795203847208578294320918049793555230253051837579374298647418339096057723722861469669243553782625625702895081161912971074392245271030731201657047763008304555918631507420106965290350485386059231710228224532926997594347555991839484914004500385368549967036346518049566510208812112288074878200872367979293370686442035943276433497799091255282969270182841896089809793637142542424078168303656566392104597233814706211325275537408\n", + "323222703221453093831552605950300424804205457240764099031715382220830951604055446893743340267502981866649309995222481260998262149385847134535899924415242727054023106236825108145528893735055596420393281053966449438707890652140156900240856086785475633242096346381588675778445328481916722228123389587575392135243906604786686176533881272563655966798512260318020804687160136117555384083470389390760448683226872785130969124246096211626788443452558993482345366616860338971516079606457119151676019826564421771408786607480052022396175379455734864881881487359181225570270833040780312001499071626639145019907745328273056425010466670744956761587799289324027580656861787632314140126212830900623863650937010654800951318827995125849873756867123803615795716959415909913494885470956677230254584110557203199591419554971259501913753239937169303325551559710667590407694417156588641836099587110460506103675158748597294836678192115447445722939338487107565251251405790162323825942148784490542061462403314095526016609111837263014840213930580700970772118463420456449065853995188695111983678969828009000770737099934072693036099133020417624224576149756401744735958586741372884071886552866995598182510565938540365683792179619587274285084848156336607313132784209194467629412422650551074816\n", + "646445406442906187663105211900600849608410914481528198063430764441661903208110893787486680535005963733298619990444962521996524298771694269071799848830485454108046212473650216291057787470111192840786562107932898877415781304280313800481712173570951266484192692763177351556890656963833444456246779175150784270487813209573372353067762545127311933597024520636041609374320272235110768166940778781520897366453745570261938248492192423253576886905117986964690733233720677943032159212914238303352039653128843542817573214960104044792350758911469729763762974718362451140541666081560624002998143253278290039815490656546112850020933341489913523175598578648055161313723575264628280252425661801247727301874021309601902637655990251699747513734247607231591433918831819826989770941913354460509168221114406399182839109942519003827506479874338606651103119421335180815388834313177283672199174220921012207350317497194589673356384230894891445878676974215130502502811580324647651884297568981084122924806628191052033218223674526029680427861161401941544236926840912898131707990377390223967357939656018001541474199868145386072198266040835248449152299512803489471917173482745768143773105733991196365021131877080731367584359239174548570169696312673214626265568418388935258824845301102149632\n", + "1292890812885812375326210423801201699216821828963056396126861528883323806416221787574973361070011927466597239980889925043993048597543388538143599697660970908216092424947300432582115574940222385681573124215865797754831562608560627600963424347141902532968385385526354703113781313927666888912493558350301568540975626419146744706135525090254623867194049041272083218748640544470221536333881557563041794732907491140523876496984384846507153773810235973929381466467441355886064318425828476606704079306257687085635146429920208089584701517822939459527525949436724902281083332163121248005996286506556580079630981313092225700041866682979827046351197157296110322627447150529256560504851323602495454603748042619203805275311980503399495027468495214463182867837663639653979541883826708921018336442228812798365678219885038007655012959748677213302206238842670361630777668626354567344398348441842024414700634994389179346712768461789782891757353948430261005005623160649295303768595137962168245849613256382104066436447349052059360855722322803883088473853681825796263415980754780447934715879312036003082948399736290772144396532081670496898304599025606978943834346965491536287546211467982392730042263754161462735168718478349097140339392625346429252531136836777870517649690602204299264\n", + "2585781625771624750652420847602403398433643657926112792253723057766647612832443575149946722140023854933194479961779850087986097195086777076287199395321941816432184849894600865164231149880444771363146248431731595509663125217121255201926848694283805065936770771052709406227562627855333777824987116700603137081951252838293489412271050180509247734388098082544166437497281088940443072667763115126083589465814982281047752993968769693014307547620471947858762932934882711772128636851656953213408158612515374171270292859840416179169403035645878919055051898873449804562166664326242496011992573013113160159261962626184451400083733365959654092702394314592220645254894301058513121009702647204990909207496085238407610550623961006798990054936990428926365735675327279307959083767653417842036672884457625596731356439770076015310025919497354426604412477685340723261555337252709134688796696883684048829401269988778358693425536923579565783514707896860522010011246321298590607537190275924336491699226512764208132872894698104118721711444645607766176947707363651592526831961509560895869431758624072006165896799472581544288793064163340993796609198051213957887668693930983072575092422935964785460084527508322925470337436956698194280678785250692858505062273673555741035299381204408598528\n", + "5171563251543249501304841695204806796867287315852225584507446115533295225664887150299893444280047709866388959923559700175972194390173554152574398790643883632864369699789201730328462299760889542726292496863463191019326250434242510403853697388567610131873541542105418812455125255710667555649974233401206274163902505676586978824542100361018495468776196165088332874994562177880886145335526230252167178931629964562095505987937539386028615095240943895717525865869765423544257273703313906426816317225030748342540585719680832358338806071291757838110103797746899609124333328652484992023985146026226320318523925252368902800167466731919308185404788629184441290509788602117026242019405294409981818414992170476815221101247922013597980109873980857852731471350654558615918167535306835684073345768915251193462712879540152030620051838994708853208824955370681446523110674505418269377593393767368097658802539977556717386851073847159131567029415793721044020022492642597181215074380551848672983398453025528416265745789396208237443422889291215532353895414727303185053663923019121791738863517248144012331793598945163088577586128326681987593218396102427915775337387861966145150184845871929570920169055016645850940674873913396388561357570501385717010124547347111482070598762408817197056\n", + "10343126503086499002609683390409613593734574631704451169014892231066590451329774300599786888560095419732777919847119400351944388780347108305148797581287767265728739399578403460656924599521779085452584993726926382038652500868485020807707394777135220263747083084210837624910250511421335111299948466802412548327805011353173957649084200722036990937552392330176665749989124355761772290671052460504334357863259929124191011975875078772057230190481887791435051731739530847088514547406627812853632634450061496685081171439361664716677612142583515676220207595493799218248666657304969984047970292052452640637047850504737805600334933463838616370809577258368882581019577204234052484038810588819963636829984340953630442202495844027195960219747961715705462942701309117231836335070613671368146691537830502386925425759080304061240103677989417706417649910741362893046221349010836538755186787534736195317605079955113434773702147694318263134058831587442088040044985285194362430148761103697345966796906051056832531491578792416474886845778582431064707790829454606370107327846038243583477727034496288024663587197890326177155172256653363975186436792204855831550674775723932290300369691743859141840338110033291701881349747826792777122715141002771434020249094694222964141197524817634394112\n", + "20686253006172998005219366780819227187469149263408902338029784462133180902659548601199573777120190839465555839694238800703888777560694216610297595162575534531457478799156806921313849199043558170905169987453852764077305001736970041615414789554270440527494166168421675249820501022842670222599896933604825096655610022706347915298168401444073981875104784660353331499978248711523544581342104921008668715726519858248382023951750157544114460380963775582870103463479061694177029094813255625707265268900122993370162342878723329433355224285167031352440415190987598436497333314609939968095940584104905281274095701009475611200669866927677232741619154516737765162039154408468104968077621177639927273659968681907260884404991688054391920439495923431410925885402618234463672670141227342736293383075661004773850851518160608122480207355978835412835299821482725786092442698021673077510373575069472390635210159910226869547404295388636526268117663174884176080089970570388724860297522207394691933593812102113665062983157584832949773691557164862129415581658909212740214655692076487166955454068992576049327174395780652354310344513306727950372873584409711663101349551447864580600739383487718283680676220066583403762699495653585554245430282005542868040498189388445928282395049635268788224\n", + "41372506012345996010438733561638454374938298526817804676059568924266361805319097202399147554240381678931111679388477601407777555121388433220595190325151069062914957598313613842627698398087116341810339974907705528154610003473940083230829579108540881054988332336843350499641002045685340445199793867209650193311220045412695830596336802888147963750209569320706662999956497423047089162684209842017337431453039716496764047903500315088228920761927551165740206926958123388354058189626511251414530537800245986740324685757446658866710448570334062704880830381975196872994666629219879936191881168209810562548191402018951222401339733855354465483238309033475530324078308816936209936155242355279854547319937363814521768809983376108783840878991846862821851770805236468927345340282454685472586766151322009547701703036321216244960414711957670825670599642965451572184885396043346155020747150138944781270420319820453739094808590777273052536235326349768352160179941140777449720595044414789383867187624204227330125966315169665899547383114329724258831163317818425480429311384152974333910908137985152098654348791561304708620689026613455900745747168819423326202699102895729161201478766975436567361352440133166807525398991307171108490860564011085736080996378776891856564790099270537576448\n", + "82745012024691992020877467123276908749876597053635609352119137848532723610638194404798295108480763357862223358776955202815555110242776866441190380650302138125829915196627227685255396796174232683620679949815411056309220006947880166461659158217081762109976664673686700999282004091370680890399587734419300386622440090825391661192673605776295927500419138641413325999912994846094178325368419684034674862906079432993528095807000630176457841523855102331480413853916246776708116379253022502829061075600491973480649371514893317733420897140668125409761660763950393745989333258439759872383762336419621125096382804037902444802679467710708930966476618066951060648156617633872419872310484710559709094639874727629043537619966752217567681757983693725643703541610472937854690680564909370945173532302644019095403406072642432489920829423915341651341199285930903144369770792086692310041494300277889562540840639640907478189617181554546105072470652699536704320359882281554899441190088829578767734375248408454660251932630339331799094766228659448517662326635636850960858622768305948667821816275970304197308697583122609417241378053226911801491494337638846652405398205791458322402957533950873134722704880266333615050797982614342216981721128022171472161992757553783713129580198541075152896\n", + "165490024049383984041754934246553817499753194107271218704238275697065447221276388809596590216961526715724446717553910405631110220485553732882380761300604276251659830393254455370510793592348465367241359899630822112618440013895760332923318316434163524219953329347373401998564008182741361780799175468838600773244880181650783322385347211552591855000838277282826651999825989692188356650736839368069349725812158865987056191614001260352915683047710204662960827707832493553416232758506045005658122151200983946961298743029786635466841794281336250819523321527900787491978666516879519744767524672839242250192765608075804889605358935421417861932953236133902121296313235267744839744620969421119418189279749455258087075239933504435135363515967387451287407083220945875709381361129818741890347064605288038190806812145284864979841658847830683302682398571861806288739541584173384620082988600555779125081681279281814956379234363109092210144941305399073408640719764563109798882380177659157535468750496816909320503865260678663598189532457318897035324653271273701921717245536611897335643632551940608394617395166245218834482756106453823602982988675277693304810796411582916644805915067901746269445409760532667230101595965228684433963442256044342944323985515107567426259160397082150305792\n", + "330980048098767968083509868493107634999506388214542437408476551394130894442552777619193180433923053431448893435107820811262220440971107465764761522601208552503319660786508910741021587184696930734482719799261644225236880027791520665846636632868327048439906658694746803997128016365482723561598350937677201546489760363301566644770694423105183710001676554565653303999651979384376713301473678736138699451624317731974112383228002520705831366095420409325921655415664987106832465517012090011316244302401967893922597486059573270933683588562672501639046643055801574983957333033759039489535049345678484500385531216151609779210717870842835723865906472267804242592626470535489679489241938842238836378559498910516174150479867008870270727031934774902574814166441891751418762722259637483780694129210576076381613624290569729959683317695661366605364797143723612577479083168346769240165977201111558250163362558563629912758468726218184420289882610798146817281439529126219597764760355318315070937500993633818641007730521357327196379064914637794070649306542547403843434491073223794671287265103881216789234790332490437668965512212907647205965977350555386609621592823165833289611830135803492538890819521065334460203191930457368867926884512088685888647971030215134852518320794164300611584\n", + "661960096197535936167019736986215269999012776429084874816953102788261788885105555238386360867846106862897786870215641622524440881942214931529523045202417105006639321573017821482043174369393861468965439598523288450473760055583041331693273265736654096879813317389493607994256032730965447123196701875354403092979520726603133289541388846210367420003353109131306607999303958768753426602947357472277398903248635463948224766456005041411662732190840818651843310831329974213664931034024180022632488604803935787845194972119146541867367177125345003278093286111603149967914666067518078979070098691356969000771062432303219558421435741685671447731812944535608485185252941070979358978483877684477672757118997821032348300959734017740541454063869549805149628332883783502837525444519274967561388258421152152763227248581139459919366635391322733210729594287447225154958166336693538480331954402223116500326725117127259825516937452436368840579765221596293634562879058252439195529520710636630141875001987267637282015461042714654392758129829275588141298613085094807686868982146447589342574530207762433578469580664980875337931024425815294411931954701110773219243185646331666579223660271606985077781639042130668920406383860914737735853769024177371777295942060430269705036641588328601223168\n", + "1323920192395071872334039473972430539998025552858169749633906205576523577770211110476772721735692213725795573740431283245048881763884429863059046090404834210013278643146035642964086348738787722937930879197046576900947520111166082663386546531473308193759626634778987215988512065461930894246393403750708806185959041453206266579082777692420734840006706218262613215998607917537506853205894714944554797806497270927896449532912010082823325464381681637303686621662659948427329862068048360045264977209607871575690389944238293083734734354250690006556186572223206299935829332135036157958140197382713938001542124864606439116842871483371342895463625889071216970370505882141958717956967755368955345514237995642064696601919468035481082908127739099610299256665767567005675050889038549935122776516842304305526454497162278919838733270782645466421459188574894450309916332673387076960663908804446233000653450234254519651033874904872737681159530443192587269125758116504878391059041421273260283750003974535274564030922085429308785516259658551176282597226170189615373737964292895178685149060415524867156939161329961750675862048851630588823863909402221546438486371292663333158447320543213970155563278084261337840812767721829475471707538048354743554591884120860539410073283176657202446336\n", + "2647840384790143744668078947944861079996051105716339499267812411153047155540422220953545443471384427451591147480862566490097763527768859726118092180809668420026557286292071285928172697477575445875861758394093153801895040222332165326773093062946616387519253269557974431977024130923861788492786807501417612371918082906412533158165555384841469680013412436525226431997215835075013706411789429889109595612994541855792899065824020165646650928763363274607373243325319896854659724136096720090529954419215743151380779888476586167469468708501380013112373144446412599871658664270072315916280394765427876003084249729212878233685742966742685790927251778142433940741011764283917435913935510737910691028475991284129393203838936070962165816255478199220598513331535134011350101778077099870245553033684608611052908994324557839677466541565290932842918377149788900619832665346774153921327817608892466001306900468509039302067749809745475362319060886385174538251516233009756782118082842546520567500007949070549128061844170858617571032519317102352565194452340379230747475928585790357370298120831049734313878322659923501351724097703261177647727818804443092876972742585326666316894641086427940311126556168522675681625535443658950943415076096709487109183768241721078820146566353314404892672\n", + "5295680769580287489336157895889722159992102211432678998535624822306094311080844441907090886942768854903182294961725132980195527055537719452236184361619336840053114572584142571856345394955150891751723516788186307603790080444664330653546186125893232775038506539115948863954048261847723576985573615002835224743836165812825066316331110769682939360026824873050452863994431670150027412823578859778219191225989083711585798131648040331293301857526726549214746486650639793709319448272193440181059908838431486302761559776953172334938937417002760026224746288892825199743317328540144631832560789530855752006168499458425756467371485933485371581854503556284867881482023528567834871827871021475821382056951982568258786407677872141924331632510956398441197026663070268022700203556154199740491106067369217222105817988649115679354933083130581865685836754299577801239665330693548307842655635217784932002613800937018078604135499619490950724638121772770349076503032466019513564236165685093041135000015898141098256123688341717235142065038634204705130388904680758461494951857171580714740596241662099468627756645319847002703448195406522355295455637608886185753945485170653332633789282172855880622253112337045351363251070887317901886830152193418974218367536483442157640293132706628809785344\n", + "10591361539160574978672315791779444319984204422865357997071249644612188622161688883814181773885537709806364589923450265960391054111075438904472368723238673680106229145168285143712690789910301783503447033576372615207580160889328661307092372251786465550077013078231897727908096523695447153971147230005670449487672331625650132632662221539365878720053649746100905727988863340300054825647157719556438382451978167423171596263296080662586603715053453098429492973301279587418638896544386880362119817676862972605523119553906344669877874834005520052449492577785650399486634657080289263665121579061711504012336998916851512934742971866970743163709007112569735762964047057135669743655742042951642764113903965136517572815355744283848663265021912796882394053326140536045400407112308399480982212134738434444211635977298231358709866166261163731371673508599155602479330661387096615685311270435569864005227601874036157208270999238981901449276243545540698153006064932039027128472331370186082270000031796282196512247376683434470284130077268409410260777809361516922989903714343161429481192483324198937255513290639694005406896390813044710590911275217772371507890970341306665267578564345711761244506224674090702726502141774635803773660304386837948436735072966884315280586265413257619570688\n", + "21182723078321149957344631583558888639968408845730715994142499289224377244323377767628363547771075419612729179846900531920782108222150877808944737446477347360212458290336570287425381579820603567006894067152745230415160321778657322614184744503572931100154026156463795455816193047390894307942294460011340898975344663251300265265324443078731757440107299492201811455977726680600109651294315439112876764903956334846343192526592161325173207430106906196858985946602559174837277793088773760724239635353725945211046239107812689339755749668011040104898985155571300798973269314160578527330243158123423008024673997833703025869485943733941486327418014225139471525928094114271339487311484085903285528227807930273035145630711488567697326530043825593764788106652281072090800814224616798961964424269476868888423271954596462717419732332522327462743347017198311204958661322774193231370622540871139728010455203748072314416541998477963802898552487091081396306012129864078054256944662740372164540000063592564393024494753366868940568260154536818820521555618723033845979807428686322858962384966648397874511026581279388010813792781626089421181822550435544743015781940682613330535157128691423522489012449348181405453004283549271607547320608773675896873470145933768630561172530826515239141376\n", + "42365446156642299914689263167117777279936817691461431988284998578448754488646755535256727095542150839225458359693801063841564216444301755617889474892954694720424916580673140574850763159641207134013788134305490460830320643557314645228369489007145862200308052312927590911632386094781788615884588920022681797950689326502600530530648886157463514880214598984403622911955453361200219302588630878225753529807912669692686385053184322650346414860213812393717971893205118349674555586177547521448479270707451890422092478215625378679511499336022080209797970311142601597946538628321157054660486316246846016049347995667406051738971887467882972654836028450278943051856188228542678974622968171806571056455615860546070291261422977135394653060087651187529576213304562144181601628449233597923928848538953737776846543909192925434839464665044654925486694034396622409917322645548386462741245081742279456020910407496144628833083996955927605797104974182162792612024259728156108513889325480744329080000127185128786048989506733737881136520309073637641043111237446067691959614857372645717924769933296795749022053162558776021627585563252178842363645100871089486031563881365226661070314257382847044978024898696362810906008567098543215094641217547351793746940291867537261122345061653030478282752\n", + "84730892313284599829378526334235554559873635382922863976569997156897508977293511070513454191084301678450916719387602127683128432888603511235778949785909389440849833161346281149701526319282414268027576268610980921660641287114629290456738978014291724400616104625855181823264772189563577231769177840045363595901378653005201061061297772314927029760429197968807245823910906722400438605177261756451507059615825339385372770106368645300692829720427624787435943786410236699349111172355095042896958541414903780844184956431250757359022998672044160419595940622285203195893077256642314109320972632493692032098695991334812103477943774935765945309672056900557886103712376457085357949245936343613142112911231721092140582522845954270789306120175302375059152426609124288363203256898467195847857697077907475553693087818385850869678929330089309850973388068793244819834645291096772925482490163484558912041820814992289257666167993911855211594209948364325585224048519456312217027778650961488658160000254370257572097979013467475762273040618147275282086222474892135383919229714745291435849539866593591498044106325117552043255171126504357684727290201742178972063127762730453322140628514765694089956049797392725621812017134197086430189282435094703587493880583735074522244690123306060956565504\n", + "169461784626569199658757052668471109119747270765845727953139994313795017954587022141026908382168603356901833438775204255366256865777207022471557899571818778881699666322692562299403052638564828536055152537221961843321282574229258580913477956028583448801232209251710363646529544379127154463538355680090727191802757306010402122122595544629854059520858395937614491647821813444800877210354523512903014119231650678770745540212737290601385659440855249574871887572820473398698222344710190085793917082829807561688369912862501514718045997344088320839191881244570406391786154513284628218641945264987384064197391982669624206955887549871531890619344113801115772207424752914170715898491872687226284225822463442184281165045691908541578612240350604750118304853218248576726406513796934391695715394155814951107386175636771701739357858660178619701946776137586489639669290582193545850964980326969117824083641629984578515332335987823710423188419896728651170448097038912624434055557301922977316320000508740515144195958026934951524546081236294550564172444949784270767838459429490582871699079733187182996088212650235104086510342253008715369454580403484357944126255525460906644281257029531388179912099594785451243624034268394172860378564870189407174987761167470149044489380246612121913131008\n", + "338923569253138399317514105336942218239494541531691455906279988627590035909174044282053816764337206713803666877550408510732513731554414044943115799143637557763399332645385124598806105277129657072110305074443923686642565148458517161826955912057166897602464418503420727293059088758254308927076711360181454383605514612020804244245191089259708119041716791875228983295643626889601754420709047025806028238463301357541491080425474581202771318881710499149743775145640946797396444689420380171587834165659615123376739825725003029436091994688176641678383762489140812783572309026569256437283890529974768128394783965339248413911775099743063781238688227602231544414849505828341431796983745374452568451644926884368562330091383817083157224480701209500236609706436497153452813027593868783391430788311629902214772351273543403478715717320357239403893552275172979279338581164387091701929960653938235648167283259969157030664671975647420846376839793457302340896194077825248868111114603845954632640001017481030288391916053869903049092162472589101128344889899568541535676918858981165743398159466374365992176425300470208173020684506017430738909160806968715888252511050921813288562514059062776359824199189570902487248068536788345720757129740378814349975522334940298088978760493224243826262016\n", + "677847138506276798635028210673884436478989083063382911812559977255180071818348088564107633528674413427607333755100817021465027463108828089886231598287275115526798665290770249197612210554259314144220610148887847373285130296917034323653911824114333795204928837006841454586118177516508617854153422720362908767211029224041608488490382178519416238083433583750457966591287253779203508841418094051612056476926602715082982160850949162405542637763420998299487550291281893594792889378840760343175668331319230246753479651450006058872183989376353283356767524978281625567144618053138512874567781059949536256789567930678496827823550199486127562477376455204463088829699011656682863593967490748905136903289853768737124660182767634166314448961402419000473219412872994306905626055187737566782861576623259804429544702547086806957431434640714478807787104550345958558677162328774183403859921307876471296334566519938314061329343951294841692753679586914604681792388155650497736222229207691909265280002034962060576783832107739806098184324945178202256689779799137083071353837717962331486796318932748731984352850600940416346041369012034861477818321613937431776505022101843626577125028118125552719648398379141804974496137073576691441514259480757628699951044669880596177957520986448487652524032\n", + "1355694277012553597270056421347768872957978166126765823625119954510360143636696177128215267057348826855214667510201634042930054926217656179772463196574550231053597330581540498395224421108518628288441220297775694746570260593834068647307823648228667590409857674013682909172236355033017235708306845440725817534422058448083216976980764357038832476166867167500915933182574507558407017682836188103224112953853205430165964321701898324811085275526841996598975100582563787189585778757681520686351336662638460493506959302900012117744367978752706566713535049956563251134289236106277025749135562119899072513579135861356993655647100398972255124954752910408926177659398023313365727187934981497810273806579707537474249320365535268332628897922804838000946438825745988613811252110375475133565723153246519608859089405094173613914862869281428957615574209100691917117354324657548366807719842615752942592669133039876628122658687902589683385507359173829209363584776311300995472444458415383818530560004069924121153567664215479612196368649890356404513379559598274166142707675435924662973592637865497463968705701201880832692082738024069722955636643227874863553010044203687253154250056236251105439296796758283609948992274147153382883028518961515257399902089339761192355915041972896975305048064\n", + "2711388554025107194540112842695537745915956332253531647250239909020720287273392354256430534114697653710429335020403268085860109852435312359544926393149100462107194661163080996790448842217037256576882440595551389493140521187668137294615647296457335180819715348027365818344472710066034471416613690881451635068844116896166433953961528714077664952333734335001831866365149015116814035365672376206448225907706410860331928643403796649622170551053683993197950201165127574379171557515363041372702673325276920987013918605800024235488735957505413133427070099913126502268578472212554051498271124239798145027158271722713987311294200797944510249909505820817852355318796046626731454375869962995620547613159415074948498640731070536665257795845609676001892877651491977227622504220750950267131446306493039217718178810188347227829725738562857915231148418201383834234708649315096733615439685231505885185338266079753256245317375805179366771014718347658418727169552622601990944888916830767637061120008139848242307135328430959224392737299780712809026759119196548332285415350871849325947185275730994927937411402403761665384165476048139445911273286455749727106020088407374506308500112472502210878593593516567219897984548294306765766057037923030514799804178679522384711830083945793950610096128\n", + "5422777108050214389080225685391075491831912664507063294500479818041440574546784708512861068229395307420858670040806536171720219704870624719089852786298200924214389322326161993580897684434074513153764881191102778986281042375336274589231294592914670361639430696054731636688945420132068942833227381762903270137688233792332867907923057428155329904667468670003663732730298030233628070731344752412896451815412821720663857286807593299244341102107367986395900402330255148758343115030726082745405346650553841974027837211600048470977471915010826266854140199826253004537156944425108102996542248479596290054316543445427974622588401595889020499819011641635704710637592093253462908751739925991241095226318830149896997281462141073330515591691219352003785755302983954455245008441501900534262892612986078435436357620376694455659451477125715830462296836402767668469417298630193467230879370463011770370676532159506512490634751610358733542029436695316837454339105245203981889777833661535274122240016279696484614270656861918448785474599561425618053518238393096664570830701743698651894370551461989855874822804807523330768330952096278891822546572911499454212040176814749012617000224945004421757187187033134439795969096588613531532114075846061029599608357359044769423660167891587901220192256\n", + "10845554216100428778160451370782150983663825329014126589000959636082881149093569417025722136458790614841717340081613072343440439409741249438179705572596401848428778644652323987161795368868149026307529762382205557972562084750672549178462589185829340723278861392109463273377890840264137885666454763525806540275376467584665735815846114856310659809334937340007327465460596060467256141462689504825792903630825643441327714573615186598488682204214735972791800804660510297516686230061452165490810693301107683948055674423200096941954943830021652533708280399652506009074313888850216205993084496959192580108633086890855949245176803191778040999638023283271409421275184186506925817503479851982482190452637660299793994562924282146661031183382438704007571510605967908910490016883003801068525785225972156870872715240753388911318902954251431660924593672805535336938834597260386934461758740926023540741353064319013024981269503220717467084058873390633674908678210490407963779555667323070548244480032559392969228541313723836897570949199122851236107036476786193329141661403487397303788741102923979711749645609615046661536661904192557783645093145822998908424080353629498025234000449890008843514374374066268879591938193177227063064228151692122059199216714718089538847320335783175802440384512\n", + "21691108432200857556320902741564301967327650658028253178001919272165762298187138834051444272917581229683434680163226144686880878819482498876359411145192803696857557289304647974323590737736298052615059524764411115945124169501345098356925178371658681446557722784218926546755781680528275771332909527051613080550752935169331471631692229712621319618669874680014654930921192120934512282925379009651585807261651286882655429147230373196977364408429471945583601609321020595033372460122904330981621386602215367896111348846400193883909887660043305067416560799305012018148627777700432411986168993918385160217266173781711898490353606383556081999276046566542818842550368373013851635006959703964964380905275320599587989125848564293322062366764877408015143021211935817820980033766007602137051570451944313741745430481506777822637805908502863321849187345611070673877669194520773868923517481852047081482706128638026049962539006441434934168117746781267349817356420980815927559111334646141096488960065118785938457082627447673795141898398245702472214072953572386658283322806974794607577482205847959423499291219230093323073323808385115567290186291645997816848160707258996050468000899780017687028748748132537759183876386354454126128456303384244118398433429436179077694640671566351604880769024\n", + "43382216864401715112641805483128603934655301316056506356003838544331524596374277668102888545835162459366869360326452289373761757638964997752718822290385607393715114578609295948647181475472596105230119049528822231890248339002690196713850356743317362893115445568437853093511563361056551542665819054103226161101505870338662943263384459425242639237339749360029309861842384241869024565850758019303171614523302573765310858294460746393954728816858943891167203218642041190066744920245808661963242773204430735792222697692800387767819775320086610134833121598610024036297255555400864823972337987836770320434532347563423796980707212767112163998552093133085637685100736746027703270013919407929928761810550641199175978251697128586644124733529754816030286042423871635641960067532015204274103140903888627483490860963013555645275611817005726643698374691222141347755338389041547737847034963704094162965412257276052099925078012882869868336235493562534699634712841961631855118222669292282192977920130237571876914165254895347590283796796491404944428145907144773316566645613949589215154964411695918846998582438460186646146647616770231134580372583291995633696321414517992100936001799560035374057497496265075518367752772708908252256912606768488236796866858872358155389281343132703209761538048\n", + "86764433728803430225283610966257207869310602632113012712007677088663049192748555336205777091670324918733738720652904578747523515277929995505437644580771214787430229157218591897294362950945192210460238099057644463780496678005380393427700713486634725786230891136875706187023126722113103085331638108206452322203011740677325886526768918850485278474679498720058619723684768483738049131701516038606343229046605147530621716588921492787909457633717887782334406437284082380133489840491617323926485546408861471584445395385600775535639550640173220269666243197220048072594511110801729647944675975673540640869064695126847593961414425534224327997104186266171275370201473492055406540027838815859857523621101282398351956503394257173288249467059509632060572084847743271283920135064030408548206281807777254966981721926027111290551223634011453287396749382444282695510676778083095475694069927408188325930824514552104199850156025765739736672470987125069399269425683923263710236445338584564385955840260475143753828330509790695180567593592982809888856291814289546633133291227899178430309928823391837693997164876920373292293295233540462269160745166583991267392642829035984201872003599120070748114994992530151036735505545417816504513825213536976473593733717744716310778562686265406419523076096\n", + "173528867457606860450567221932514415738621205264226025424015354177326098385497110672411554183340649837467477441305809157495047030555859991010875289161542429574860458314437183794588725901890384420920476198115288927560993356010760786855401426973269451572461782273751412374046253444226206170663276216412904644406023481354651773053537837700970556949358997440117239447369536967476098263403032077212686458093210295061243433177842985575818915267435775564668812874568164760266979680983234647852971092817722943168890790771201551071279101280346440539332486394440096145189022221603459295889351951347081281738129390253695187922828851068448655994208372532342550740402946984110813080055677631719715047242202564796703913006788514346576498934119019264121144169695486542567840270128060817096412563615554509933963443852054222581102447268022906574793498764888565391021353556166190951388139854816376651861649029104208399700312051531479473344941974250138798538851367846527420472890677169128771911680520950287507656661019581390361135187185965619777712583628579093266266582455798356860619857646783675387994329753840746584586590467080924538321490333167982534785285658071968403744007198240141496229989985060302073471011090835633009027650427073952947187467435489432621557125372530812839046152192\n", + "347057734915213720901134443865028831477242410528452050848030708354652196770994221344823108366681299674934954882611618314990094061111719982021750578323084859149720916628874367589177451803780768841840952396230577855121986712021521573710802853946538903144923564547502824748092506888452412341326552432825809288812046962709303546107075675401941113898717994880234478894739073934952196526806064154425372916186420590122486866355685971151637830534871551129337625749136329520533959361966469295705942185635445886337781581542403102142558202560692881078664972788880192290378044443206918591778703902694162563476258780507390375845657702136897311988416745064685101480805893968221626160111355263439430094484405129593407826013577028693152997868238038528242288339390973085135680540256121634192825127231109019867926887704108445162204894536045813149586997529777130782042707112332381902776279709632753303723298058208416799400624103062958946689883948500277597077702735693054840945781354338257543823361041900575015313322039162780722270374371931239555425167257158186532533164911596713721239715293567350775988659507681493169173180934161849076642980666335965069570571316143936807488014396480282992459979970120604146942022181671266018055300854147905894374934870978865243114250745061625678092304384\n", + "694115469830427441802268887730057662954484821056904101696061416709304393541988442689646216733362599349869909765223236629980188122223439964043501156646169718299441833257748735178354903607561537683681904792461155710243973424043043147421605707893077806289847129095005649496185013776904824682653104865651618577624093925418607092214151350803882227797435989760468957789478147869904393053612128308850745832372841180244973732711371942303275661069743102258675251498272659041067918723932938591411884371270891772675563163084806204285116405121385762157329945577760384580756088886413837183557407805388325126952517561014780751691315404273794623976833490129370202961611787936443252320222710526878860188968810259186815652027154057386305995736476077056484576678781946170271361080512243268385650254462218039735853775408216890324409789072091626299173995059554261564085414224664763805552559419265506607446596116416833598801248206125917893379767897000555194155405471386109681891562708676515087646722083801150030626644078325561444540748743862479110850334514316373065066329823193427442479430587134701551977319015362986338346361868323698153285961332671930139141142632287873614976028792960565984919959940241208293884044363342532036110601708295811788749869741957730486228501490123251356184608768\n", + "1388230939660854883604537775460115325908969642113808203392122833418608787083976885379292433466725198699739819530446473259960376244446879928087002313292339436598883666515497470356709807215123075367363809584922311420487946848086086294843211415786155612579694258190011298992370027553809649365306209731303237155248187850837214184428302701607764455594871979520937915578956295739808786107224256617701491664745682360489947465422743884606551322139486204517350502996545318082135837447865877182823768742541783545351126326169612408570232810242771524314659891155520769161512177772827674367114815610776650253905035122029561503382630808547589247953666980258740405923223575872886504640445421053757720377937620518373631304054308114772611991472952154112969153357563892340542722161024486536771300508924436079471707550816433780648819578144183252598347990119108523128170828449329527611105118838531013214893192232833667197602496412251835786759535794001110388310810942772219363783125417353030175293444167602300061253288156651122889081497487724958221700669028632746130132659646386854884958861174269403103954638030725972676692723736647396306571922665343860278282285264575747229952057585921131969839919880482416587768088726685064072221203416591623577499739483915460972457002980246502712369217536\n", + "2776461879321709767209075550920230651817939284227616406784245666837217574167953770758584866933450397399479639060892946519920752488893759856174004626584678873197767333030994940713419614430246150734727619169844622840975893696172172589686422831572311225159388516380022597984740055107619298730612419462606474310496375701674428368856605403215528911189743959041875831157912591479617572214448513235402983329491364720979894930845487769213102644278972409034701005993090636164271674895731754365647537485083567090702252652339224817140465620485543048629319782311041538323024355545655348734229631221553300507810070244059123006765261617095178495907333960517480811846447151745773009280890842107515440755875241036747262608108616229545223982945904308225938306715127784681085444322048973073542601017848872158943415101632867561297639156288366505196695980238217046256341656898659055222210237677062026429786384465667334395204992824503671573519071588002220776621621885544438727566250834706060350586888335204600122506576313302245778162994975449916443401338057265492260265319292773709769917722348538806207909276061451945353385447473294792613143845330687720556564570529151494459904115171842263939679839760964833175536177453370128144442406833183247154999478967830921944914005960493005424738435072\n", + "5552923758643419534418151101840461303635878568455232813568491333674435148335907541517169733866900794798959278121785893039841504977787519712348009253169357746395534666061989881426839228860492301469455238339689245681951787392344345179372845663144622450318777032760045195969480110215238597461224838925212948620992751403348856737713210806431057822379487918083751662315825182959235144428897026470805966658982729441959789861690975538426205288557944818069402011986181272328543349791463508731295074970167134181404505304678449634280931240971086097258639564622083076646048711091310697468459262443106601015620140488118246013530523234190356991814667921034961623692894303491546018561781684215030881511750482073494525216217232459090447965891808616451876613430255569362170888644097946147085202035697744317886830203265735122595278312576733010393391960476434092512683313797318110444420475354124052859572768931334668790409985649007343147038143176004441553243243771088877455132501669412120701173776670409200245013152626604491556325989950899832886802676114530984520530638585547419539835444697077612415818552122903890706770894946589585226287690661375441113129141058302988919808230343684527879359679521929666351072354906740256288884813666366494309998957935661843889828011920986010849476870144\n", + "11105847517286839068836302203680922607271757136910465627136982667348870296671815083034339467733801589597918556243571786079683009955575039424696018506338715492791069332123979762853678457720984602938910476679378491363903574784688690358745691326289244900637554065520090391938960220430477194922449677850425897241985502806697713475426421612862115644758975836167503324631650365918470288857794052941611933317965458883919579723381951076852410577115889636138804023972362544657086699582927017462590149940334268362809010609356899268561862481942172194517279129244166153292097422182621394936918524886213202031240280976236492027061046468380713983629335842069923247385788606983092037123563368430061763023500964146989050432434464918180895931783617232903753226860511138724341777288195892294170404071395488635773660406531470245190556625153466020786783920952868185025366627594636220888840950708248105719145537862669337580819971298014686294076286352008883106486487542177754910265003338824241402347553340818400490026305253208983112651979901799665773605352229061969041061277171094839079670889394155224831637104245807781413541789893179170452575381322750882226258282116605977839616460687369055758719359043859332702144709813480512577769627332732988619997915871323687779656023841972021698953740288\n", + "22211695034573678137672604407361845214543514273820931254273965334697740593343630166068678935467603179195837112487143572159366019911150078849392037012677430985582138664247959525707356915441969205877820953358756982727807149569377380717491382652578489801275108131040180783877920440860954389844899355700851794483971005613395426950852843225724231289517951672335006649263300731836940577715588105883223866635930917767839159446763902153704821154231779272277608047944725089314173399165854034925180299880668536725618021218713798537123724963884344389034558258488332306584194844365242789873837049772426404062480561952472984054122092936761427967258671684139846494771577213966184074247126736860123526047001928293978100864868929836361791863567234465807506453721022277448683554576391784588340808142790977271547320813062940490381113250306932041573567841905736370050733255189272441777681901416496211438291075725338675161639942596029372588152572704017766212972975084355509820530006677648482804695106681636800980052610506417966225303959803599331547210704458123938082122554342189678159341778788310449663274208491615562827083579786358340905150762645501764452516564233211955679232921374738111517438718087718665404289419626961025155539254665465977239995831742647375559312047683944043397907480576\n", + "44423390069147356275345208814723690429087028547641862508547930669395481186687260332137357870935206358391674224974287144318732039822300157698784074025354861971164277328495919051414713830883938411755641906717513965455614299138754761434982765305156979602550216262080361567755840881721908779689798711401703588967942011226790853901705686451448462579035903344670013298526601463673881155431176211766447733271861835535678318893527804307409642308463558544555216095889450178628346798331708069850360599761337073451236042437427597074247449927768688778069116516976664613168389688730485579747674099544852808124961123904945968108244185873522855934517343368279692989543154427932368148494253473720247052094003856587956201729737859672723583727134468931615012907442044554897367109152783569176681616285581954543094641626125880980762226500613864083147135683811472740101466510378544883555363802832992422876582151450677350323279885192058745176305145408035532425945950168711019641060013355296965609390213363273601960105221012835932450607919607198663094421408916247876164245108684379356318683557576620899326548416983231125654167159572716681810301525291003528905033128466423911358465842749476223034877436175437330808578839253922050311078509330931954479991663485294751118624095367888086795814961152\n", + "88846780138294712550690417629447380858174057095283725017095861338790962373374520664274715741870412716783348449948574288637464079644600315397568148050709723942328554656991838102829427661767876823511283813435027930911228598277509522869965530610313959205100432524160723135511681763443817559379597422803407177935884022453581707803411372902896925158071806689340026597053202927347762310862352423532895466543723671071356637787055608614819284616927117089110432191778900357256693596663416139700721199522674146902472084874855194148494899855537377556138233033953329226336779377460971159495348199089705616249922247809891936216488371747045711869034686736559385979086308855864736296988506947440494104188007713175912403459475719345447167454268937863230025814884089109794734218305567138353363232571163909086189283252251761961524453001227728166294271367622945480202933020757089767110727605665984845753164302901354700646559770384117490352610290816071064851891900337422039282120026710593931218780426726547203920210442025671864901215839214397326188842817832495752328490217368758712637367115153241798653096833966462251308334319145433363620603050582007057810066256932847822716931685498952446069754872350874661617157678507844100622157018661863908959983326970589502237248190735776173591629922304\n", + "177693560276589425101380835258894761716348114190567450034191722677581924746749041328549431483740825433566696899897148577274928159289200630795136296101419447884657109313983676205658855323535753647022567626870055861822457196555019045739931061220627918410200865048321446271023363526887635118759194845606814355871768044907163415606822745805793850316143613378680053194106405854695524621724704847065790933087447342142713275574111217229638569233854234178220864383557800714513387193326832279401442399045348293804944169749710388296989799711074755112276466067906658452673558754921942318990696398179411232499844495619783872432976743494091423738069373473118771958172617711729472593977013894880988208376015426351824806918951438690894334908537875726460051629768178219589468436611134276706726465142327818172378566504503523923048906002455456332588542735245890960405866041514179534221455211331969691506328605802709401293119540768234980705220581632142129703783800674844078564240053421187862437560853453094407840420884051343729802431678428794652377685635664991504656980434737517425274734230306483597306193667932924502616668638290866727241206101164014115620132513865695645433863370997904892139509744701749323234315357015688201244314037323727817919966653941179004474496381471552347183259844608\n", + "355387120553178850202761670517789523432696228381134900068383445355163849493498082657098862967481650867133393799794297154549856318578401261590272592202838895769314218627967352411317710647071507294045135253740111723644914393110038091479862122441255836820401730096642892542046727053775270237518389691213628711743536089814326831213645491611587700632287226757360106388212811709391049243449409694131581866174894684285426551148222434459277138467708468356441728767115601429026774386653664558802884798090696587609888339499420776593979599422149510224552932135813316905347117509843884637981392796358822464999688991239567744865953486988182847476138746946237543916345235423458945187954027789761976416752030852703649613837902877381788669817075751452920103259536356439178936873222268553413452930284655636344757133009007047846097812004910912665177085470491781920811732083028359068442910422663939383012657211605418802586239081536469961410441163264284259407567601349688157128480106842375724875121706906188815680841768102687459604863356857589304755371271329983009313960869475034850549468460612967194612387335865849005233337276581733454482412202328028231240265027731391290867726741995809784279019489403498646468630714031376402488628074647455635839933307882358008948992762943104694366519689216\n", + "710774241106357700405523341035579046865392456762269800136766890710327698986996165314197725934963301734266787599588594309099712637156802523180545184405677791538628437255934704822635421294143014588090270507480223447289828786220076182959724244882511673640803460193285785084093454107550540475036779382427257423487072179628653662427290983223175401264574453514720212776425623418782098486898819388263163732349789368570853102296444868918554276935416936712883457534231202858053548773307329117605769596181393175219776678998841553187959198844299020449105864271626633810694235019687769275962785592717644929999377982479135489731906973976365694952277493892475087832690470846917890375908055579523952833504061705407299227675805754763577339634151502905840206519072712878357873746444537106826905860569311272689514266018014095692195624009821825330354170940983563841623464166056718136885820845327878766025314423210837605172478163072939922820882326528568518815135202699376314256960213684751449750243413812377631361683536205374919209726713715178609510742542659966018627921738950069701098936921225934389224774671731698010466674553163466908964824404656056462480530055462782581735453483991619568558038978806997292937261428062752804977256149294911271679866615764716017897985525886209388733039378432\n", + "1421548482212715400811046682071158093730784913524539600273533781420655397973992330628395451869926603468533575199177188618199425274313605046361090368811355583077256874511869409645270842588286029176180541014960446894579657572440152365919448489765023347281606920386571570168186908215101080950073558764854514846974144359257307324854581966446350802529148907029440425552851246837564196973797638776526327464699578737141706204592889737837108553870833873425766915068462405716107097546614658235211539192362786350439553357997683106375918397688598040898211728543253267621388470039375538551925571185435289859998755964958270979463813947952731389904554987784950175665380941693835780751816111159047905667008123410814598455351611509527154679268303005811680413038145425756715747492889074213653811721138622545379028532036028191384391248019643650660708341881967127683246928332113436273771641690655757532050628846421675210344956326145879845641764653057137037630270405398752628513920427369502899500486827624755262723367072410749838419453427430357219021485085319932037255843477900139402197873842451868778449549343463396020933349106326933817929648809312112924961060110925565163470906967983239137116077957613994585874522856125505609954512298589822543359733231529432035795971051772418777466078756864\n", + "2843096964425430801622093364142316187461569827049079200547067562841310795947984661256790903739853206937067150398354377236398850548627210092722180737622711166154513749023738819290541685176572058352361082029920893789159315144880304731838896979530046694563213840773143140336373816430202161900147117529709029693948288718514614649709163932892701605058297814058880851105702493675128393947595277553052654929399157474283412409185779475674217107741667746851533830136924811432214195093229316470423078384725572700879106715995366212751836795377196081796423457086506535242776940078751077103851142370870579719997511929916541958927627895905462779809109975569900351330761883387671561503632222318095811334016246821629196910703223019054309358536606011623360826076290851513431494985778148427307623442277245090758057064072056382768782496039287301321416683763934255366493856664226872547543283381311515064101257692843350420689912652291759691283529306114274075260540810797505257027840854739005799000973655249510525446734144821499676838906854860714438042970170639864074511686955800278804395747684903737556899098686926792041866698212653867635859297618624225849922120221851130326941813935966478274232155915227989171749045712251011219909024597179645086719466463058864071591942103544837554932157513728\n", + "5686193928850861603244186728284632374923139654098158401094135125682621591895969322513581807479706413874134300796708754472797701097254420185444361475245422332309027498047477638581083370353144116704722164059841787578318630289760609463677793959060093389126427681546286280672747632860404323800294235059418059387896577437029229299418327865785403210116595628117761702211404987350256787895190555106105309858798314948566824818371558951348434215483335493703067660273849622864428390186458632940846156769451145401758213431990732425503673590754392163592846914173013070485553880157502154207702284741741159439995023859833083917855255791810925559618219951139800702661523766775343123007264444636191622668032493643258393821406446038108618717073212023246721652152581703026862989971556296854615246884554490181516114128144112765537564992078574602642833367527868510732987713328453745095086566762623030128202515385686700841379825304583519382567058612228548150521081621595010514055681709478011598001947310499021050893468289642999353677813709721428876085940341279728149023373911600557608791495369807475113798197373853584083733396425307735271718595237248451699844240443702260653883627871932956548464311830455978343498091424502022439818049194359290173438932926117728143183884207089675109864315027456\n", + "11372387857701723206488373456569264749846279308196316802188270251365243183791938645027163614959412827748268601593417508945595402194508840370888722950490844664618054996094955277162166740706288233409444328119683575156637260579521218927355587918120186778252855363092572561345495265720808647600588470118836118775793154874058458598836655731570806420233191256235523404422809974700513575790381110212210619717596629897133649636743117902696868430966670987406135320547699245728856780372917265881692313538902290803516426863981464851007347181508784327185693828346026140971107760315004308415404569483482318879990047719666167835710511583621851119236439902279601405323047533550686246014528889272383245336064987286516787642812892076217237434146424046493443304305163406053725979943112593709230493769108980363032228256288225531075129984157149205285666735055737021465975426656907490190173133525246060256405030771373401682759650609167038765134117224457096301042163243190021028111363418956023196003894620998042101786936579285998707355627419442857752171880682559456298046747823201115217582990739614950227596394747707168167466792850615470543437190474496903399688480887404521307767255743865913096928623660911956686996182849004044879636098388718580346877865852235456286367768414179350219728630054912\n", + "22744775715403446412976746913138529499692558616392633604376540502730486367583877290054327229918825655496537203186835017891190804389017680741777445900981689329236109992189910554324333481412576466818888656239367150313274521159042437854711175836240373556505710726185145122690990531441617295201176940237672237551586309748116917197673311463141612840466382512471046808845619949401027151580762220424421239435193259794267299273486235805393736861933341974812270641095398491457713560745834531763384627077804581607032853727962929702014694363017568654371387656692052281942215520630008616830809138966964637759980095439332335671421023167243702238472879804559202810646095067101372492029057778544766490672129974573033575285625784152434474868292848092986886608610326812107451959886225187418460987538217960726064456512576451062150259968314298410571333470111474042931950853313814980380346267050492120512810061542746803365519301218334077530268234448914192602084326486380042056222726837912046392007789241996084203573873158571997414711254838885715504343761365118912596093495646402230435165981479229900455192789495414336334933585701230941086874380948993806799376961774809042615534511487731826193857247321823913373992365698008089759272196777437160693755731704470912572735536828358700439457260109824\n", + "45489551430806892825953493826277058999385117232785267208753081005460972735167754580108654459837651310993074406373670035782381608778035361483554891801963378658472219984379821108648666962825152933637777312478734300626549042318084875709422351672480747113011421452370290245381981062883234590402353880475344475103172619496233834395346622926283225680932765024942093617691239898802054303161524440848842478870386519588534598546972471610787473723866683949624541282190796982915427121491669063526769254155609163214065707455925859404029388726035137308742775313384104563884431041260017233661618277933929275519960190878664671342842046334487404476945759609118405621292190134202744984058115557089532981344259949146067150571251568304868949736585696185973773217220653624214903919772450374836921975076435921452128913025152902124300519936628596821142666940222948085863901706627629960760692534100984241025620123085493606731038602436668155060536468897828385204168652972760084112445453675824092784015578483992168407147746317143994829422509677771431008687522730237825192186991292804460870331962958459800910385578990828672669867171402461882173748761897987613598753923549618085231069022975463652387714494643647826747984731396016179518544393554874321387511463408941825145471073656717400878914520219648\n", + "90979102861613785651906987652554117998770234465570534417506162010921945470335509160217308919675302621986148812747340071564763217556070722967109783603926757316944439968759642217297333925650305867275554624957468601253098084636169751418844703344961494226022842904740580490763962125766469180804707760950688950206345238992467668790693245852566451361865530049884187235382479797604108606323048881697684957740773039177069197093944943221574947447733367899249082564381593965830854242983338127053538508311218326428131414911851718808058777452070274617485550626768209127768862082520034467323236555867858551039920381757329342685684092668974808953891519218236811242584380268405489968116231114179065962688519898292134301142503136609737899473171392371947546434441307248429807839544900749673843950152871842904257826050305804248601039873257193642285333880445896171727803413255259921521385068201968482051240246170987213462077204873336310121072937795656770408337305945520168224890907351648185568031156967984336814295492634287989658845019355542862017375045460475650384373982585608921740663925916919601820771157981657345339734342804923764347497523795975227197507847099236170462138045950927304775428989287295653495969462792032359037088787109748642775022926817883650290942147313434801757829040439296\n", + "181958205723227571303813975305108235997540468931141068835012324021843890940671018320434617839350605243972297625494680143129526435112141445934219567207853514633888879937519284434594667851300611734551109249914937202506196169272339502837689406689922988452045685809481160981527924251532938361609415521901377900412690477984935337581386491705132902723731060099768374470764959595208217212646097763395369915481546078354138394187889886443149894895466735798498165128763187931661708485966676254107077016622436652856262829823703437616117554904140549234971101253536418255537724165040068934646473111735717102079840763514658685371368185337949617907783038436473622485168760536810979936232462228358131925377039796584268602285006273219475798946342784743895092868882614496859615679089801499347687900305743685808515652100611608497202079746514387284570667760891792343455606826510519843042770136403936964102480492341974426924154409746672620242145875591313540816674611891040336449781814703296371136062313935968673628590985268575979317690038711085724034750090920951300768747965171217843481327851833839203641542315963314690679468685609847528694995047591950454395015694198472340924276091901854609550857978574591306991938925584064718074177574219497285550045853635767300581884294626869603515658080878592\n", + "363916411446455142607627950610216471995080937862282137670024648043687781881342036640869235678701210487944595250989360286259052870224282891868439134415707029267777759875038568869189335702601223469102218499829874405012392338544679005675378813379845976904091371618962321963055848503065876723218831043802755800825380955969870675162772983410265805447462120199536748941529919190416434425292195526790739830963092156708276788375779772886299789790933471596996330257526375863323416971933352508214154033244873305712525659647406875232235109808281098469942202507072836511075448330080137869292946223471434204159681527029317370742736370675899235815566076872947244970337521073621959872464924456716263850754079593168537204570012546438951597892685569487790185737765228993719231358179602998695375800611487371617031304201223216994404159493028774569141335521783584686911213653021039686085540272807873928204960984683948853848308819493345240484291751182627081633349223782080672899563629406592742272124627871937347257181970537151958635380077422171448069500181841902601537495930342435686962655703667678407283084631926629381358937371219695057389990095183900908790031388396944681848552183803709219101715957149182613983877851168129436148355148438994571100091707271534601163768589253739207031316161757184\n", + "727832822892910285215255901220432943990161875724564275340049296087375563762684073281738471357402420975889190501978720572518105740448565783736878268831414058535555519750077137738378671405202446938204436999659748810024784677089358011350757626759691953808182743237924643926111697006131753446437662087605511601650761911939741350325545966820531610894924240399073497883059838380832868850584391053581479661926184313416553576751559545772599579581866943193992660515052751726646833943866705016428308066489746611425051319294813750464470219616562196939884405014145673022150896660160275738585892446942868408319363054058634741485472741351798471631132153745894489940675042147243919744929848913432527701508159186337074409140025092877903195785371138975580371475530457987438462716359205997390751601222974743234062608402446433988808318986057549138282671043567169373822427306042079372171080545615747856409921969367897707696617638986690480968583502365254163266698447564161345799127258813185484544249255743874694514363941074303917270760154844342896139000363683805203074991860684871373925311407335356814566169263853258762717874742439390114779980190367801817580062776793889363697104367607418438203431914298365227967755702336258872296710296877989142200183414543069202327537178507478414062632323514368\n", + "1455665645785820570430511802440865887980323751449128550680098592174751127525368146563476942714804841951778381003957441145036211480897131567473756537662828117071111039500154275476757342810404893876408873999319497620049569354178716022701515253519383907616365486475849287852223394012263506892875324175211023203301523823879482700651091933641063221789848480798146995766119676761665737701168782107162959323852368626833107153503119091545199159163733886387985321030105503453293667887733410032856616132979493222850102638589627500928940439233124393879768810028291346044301793320320551477171784893885736816638726108117269482970945482703596943262264307491788979881350084294487839489859697826865055403016318372674148818280050185755806391570742277951160742951060915974876925432718411994781503202445949486468125216804892867977616637972115098276565342087134338747644854612084158744342161091231495712819843938735795415393235277973380961937167004730508326533396895128322691598254517626370969088498511487749389028727882148607834541520309688685792278000727367610406149983721369742747850622814670713629132338527706517525435749484878780229559960380735603635160125553587778727394208735214836876406863828596730455935511404672517744593420593755978284400366829086138404655074357014956828125264647028736\n", + "2911331291571641140861023604881731775960647502898257101360197184349502255050736293126953885429609683903556762007914882290072422961794263134947513075325656234142222079000308550953514685620809787752817747998638995240099138708357432045403030507038767815232730972951698575704446788024527013785750648350422046406603047647758965401302183867282126443579696961596293991532239353523331475402337564214325918647704737253666214307006238183090398318327467772775970642060211006906587335775466820065713232265958986445700205277179255001857880878466248787759537620056582692088603586640641102954343569787771473633277452216234538965941890965407193886524528614983577959762700168588975678979719395653730110806032636745348297636560100371511612783141484555902321485902121831949753850865436823989563006404891898972936250433609785735955233275944230196553130684174268677495289709224168317488684322182462991425639687877471590830786470555946761923874334009461016653066793790256645383196509035252741938176997022975498778057455764297215669083040619377371584556001454735220812299967442739485495701245629341427258264677055413035050871498969757560459119920761471207270320251107175557454788417470429673752813727657193460911871022809345035489186841187511956568800733658172276809310148714029913656250529294057472\n", + "5822662583143282281722047209763463551921295005796514202720394368699004510101472586253907770859219367807113524015829764580144845923588526269895026150651312468284444158000617101907029371241619575505635495997277990480198277416714864090806061014077535630465461945903397151408893576049054027571501296700844092813206095295517930802604367734564252887159393923192587983064478707046662950804675128428651837295409474507332428614012476366180796636654935545551941284120422013813174671550933640131426464531917972891400410554358510003715761756932497575519075240113165384177207173281282205908687139575542947266554904432469077931883781930814387773049057229967155919525400337177951357959438791307460221612065273490696595273120200743023225566282969111804642971804243663899507701730873647979126012809783797945872500867219571471910466551888460393106261368348537354990579418448336634977368644364925982851279375754943181661572941111893523847748668018922033306133587580513290766393018070505483876353994045950997556114911528594431338166081238754743169112002909470441624599934885478970991402491258682854516529354110826070101742997939515120918239841522942414540640502214351114909576834940859347505627455314386921823742045618690070978373682375023913137601467316344553618620297428059827312501058588114944\n", + "11645325166286564563444094419526927103842590011593028405440788737398009020202945172507815541718438735614227048031659529160289691847177052539790052301302624936568888316001234203814058742483239151011270991994555980960396554833429728181612122028155071260930923891806794302817787152098108055143002593401688185626412190591035861605208735469128505774318787846385175966128957414093325901609350256857303674590818949014664857228024952732361593273309871091103882568240844027626349343101867280262852929063835945782800821108717020007431523513864995151038150480226330768354414346562564411817374279151085894533109808864938155863767563861628775546098114459934311839050800674355902715918877582614920443224130546981393190546240401486046451132565938223609285943608487327799015403461747295958252025619567595891745001734439142943820933103776920786212522736697074709981158836896673269954737288729851965702558751509886363323145882223787047695497336037844066612267175161026581532786036141010967752707988091901995112229823057188862676332162477509486338224005818940883249199869770957941982804982517365709033058708221652140203485995879030241836479683045884829081281004428702229819153669881718695011254910628773843647484091237380141956747364750047826275202934632689107237240594856119654625002117176229888\n", + "23290650332573129126888188839053854207685180023186056810881577474796018040405890345015631083436877471228454096063319058320579383694354105079580104602605249873137776632002468407628117484966478302022541983989111961920793109666859456363224244056310142521861847783613588605635574304196216110286005186803376371252824381182071723210417470938257011548637575692770351932257914828186651803218700513714607349181637898029329714456049905464723186546619742182207765136481688055252698686203734560525705858127671891565601642217434040014863047027729990302076300960452661536708828693125128823634748558302171789066219617729876311727535127723257551092196228919868623678101601348711805431837755165229840886448261093962786381092480802972092902265131876447218571887216974655598030806923494591916504051239135191783490003468878285887641866207553841572425045473394149419962317673793346539909474577459703931405117503019772726646291764447574095390994672075688133224534350322053163065572072282021935505415976183803990224459646114377725352664324955018972676448011637881766498399739541915883965609965034731418066117416443304280406971991758060483672959366091769658162562008857404459638307339763437390022509821257547687294968182474760283913494729500095652550405869265378214474481189712239309250004234352459776\n", + "46581300665146258253776377678107708415370360046372113621763154949592036080811780690031262166873754942456908192126638116641158767388708210159160209205210499746275553264004936815256234969932956604045083967978223923841586219333718912726448488112620285043723695567227177211271148608392432220572010373606752742505648762364143446420834941876514023097275151385540703864515829656373303606437401027429214698363275796058659428912099810929446373093239484364415530272963376110505397372407469121051411716255343783131203284434868080029726094055459980604152601920905323073417657386250257647269497116604343578132439235459752623455070255446515102184392457839737247356203202697423610863675510330459681772896522187925572762184961605944185804530263752894437143774433949311196061613846989183833008102478270383566980006937756571775283732415107683144850090946788298839924635347586693079818949154919407862810235006039545453292583528895148190781989344151376266449068700644106326131144144564043871010831952367607980448919292228755450705328649910037945352896023275763532996799479083831767931219930069462836132234832886608560813943983516120967345918732183539316325124017714808919276614679526874780045019642515095374589936364949520567826989459000191305100811738530756428948962379424478618500008468704919552\n", + "93162601330292516507552755356215416830740720092744227243526309899184072161623561380062524333747509884913816384253276233282317534777416420318320418410420999492551106528009873630512469939865913208090167935956447847683172438667437825452896976225240570087447391134454354422542297216784864441144020747213505485011297524728286892841669883753028046194550302771081407729031659312746607212874802054858429396726551592117318857824199621858892746186478968728831060545926752221010794744814938242102823432510687566262406568869736160059452188110919961208305203841810646146835314772500515294538994233208687156264878470919505246910140510893030204368784915679474494712406405394847221727351020660919363545793044375851145524369923211888371609060527505788874287548867898622392123227693978367666016204956540767133960013875513143550567464830215366289700181893576597679849270695173386159637898309838815725620470012079090906585167057790296381563978688302752532898137401288212652262288289128087742021663904735215960897838584457510901410657299820075890705792046551527065993598958167663535862439860138925672264469665773217121627887967032241934691837464367078632650248035429617838553229359053749560090039285030190749179872729899041135653978918000382610201623477061512857897924758848957237000016937409839104\n", + "186325202660585033015105510712430833661481440185488454487052619798368144323247122760125048667495019769827632768506552466564635069554832840636640836820841998985102213056019747261024939879731826416180335871912895695366344877334875650905793952450481140174894782268908708845084594433569728882288041494427010970022595049456573785683339767506056092389100605542162815458063318625493214425749604109716858793453103184234637715648399243717785492372957937457662121091853504442021589489629876484205646865021375132524813137739472320118904376221839922416610407683621292293670629545001030589077988466417374312529756941839010493820281021786060408737569831358948989424812810789694443454702041321838727091586088751702291048739846423776743218121055011577748575097735797244784246455387956735332032409913081534267920027751026287101134929660430732579400363787153195359698541390346772319275796619677631451240940024158181813170334115580592763127957376605505065796274802576425304524576578256175484043327809470431921795677168915021802821314599640151781411584093103054131987197916335327071724879720277851344528939331546434243255775934064483869383674928734157265300496070859235677106458718107499120180078570060381498359745459798082271307957836000765220403246954123025715795849517697914474000033874819678208\n", + "372650405321170066030211021424861667322962880370976908974105239596736288646494245520250097334990039539655265537013104933129270139109665681273281673641683997970204426112039494522049879759463652832360671743825791390732689754669751301811587904900962280349789564537817417690169188867139457764576082988854021940045190098913147571366679535012112184778201211084325630916126637250986428851499208219433717586906206368469275431296798487435570984745915874915324242183707008884043178979259752968411293730042750265049626275478944640237808752443679844833220815367242584587341259090002061178155976932834748625059513883678020987640562043572120817475139662717897978849625621579388886909404082643677454183172177503404582097479692847553486436242110023155497150195471594489568492910775913470664064819826163068535840055502052574202269859320861465158800727574306390719397082780693544638551593239355262902481880048316363626340668231161185526255914753211010131592549605152850609049153156512350968086655618940863843591354337830043605642629199280303562823168186206108263974395832670654143449759440555702689057878663092868486511551868128967738767349857468314530600992141718471354212917436214998240360157140120762996719490919596164542615915672001530440806493908246051431591699035395828948000067749639356416\n", + "745300810642340132060422042849723334645925760741953817948210479193472577292988491040500194669980079079310531074026209866258540278219331362546563347283367995940408852224078989044099759518927305664721343487651582781465379509339502603623175809801924560699579129075634835380338377734278915529152165977708043880090380197826295142733359070024224369556402422168651261832253274501972857702998416438867435173812412736938550862593596974871141969491831749830648484367414017768086357958519505936822587460085500530099252550957889280475617504887359689666441630734485169174682518180004122356311953865669497250119027767356041975281124087144241634950279325435795957699251243158777773818808165287354908366344355006809164194959385695106972872484220046310994300390943188979136985821551826941328129639652326137071680111004105148404539718641722930317601455148612781438794165561387089277103186478710525804963760096632727252681336462322371052511829506422020263185099210305701218098306313024701936173311237881727687182708675660087211285258398560607125646336372412216527948791665341308286899518881111405378115757326185736973023103736257935477534699714936629061201984283436942708425834872429996480720314280241525993438981839192329085231831344003060881612987816492102863183398070791657896000135499278712832\n", + "1490601621284680264120844085699446669291851521483907635896420958386945154585976982081000389339960158158621062148052419732517080556438662725093126694566735991880817704448157978088199519037854611329442686975303165562930759018679005207246351619603849121399158258151269670760676755468557831058304331955416087760180760395652590285466718140048448739112804844337302523664506549003945715405996832877734870347624825473877101725187193949742283938983663499661296968734828035536172715917039011873645174920171001060198505101915778560951235009774719379332883261468970338349365036360008244712623907731338994500238055534712083950562248174288483269900558650871591915398502486317555547637616330574709816732688710013618328389918771390213945744968440092621988600781886377958273971643103653882656259279304652274143360222008210296809079437283445860635202910297225562877588331122774178554206372957421051609927520193265454505362672924644742105023659012844040526370198420611402436196612626049403872346622475763455374365417351320174422570516797121214251292672744824433055897583330682616573799037762222810756231514652371473946046207472515870955069399429873258122403968566873885416851669744859992961440628560483051986877963678384658170463662688006121763225975632984205726366796141583315792000270998557425664\n", + "2981203242569360528241688171398893338583703042967815271792841916773890309171953964162000778679920316317242124296104839465034161112877325450186253389133471983761635408896315956176399038075709222658885373950606331125861518037358010414492703239207698242798316516302539341521353510937115662116608663910832175520361520791305180570933436280096897478225609688674605047329013098007891430811993665755469740695249650947754203450374387899484567877967326999322593937469656071072345431834078023747290349840342002120397010203831557121902470019549438758665766522937940676698730072720016489425247815462677989000476111069424167901124496348576966539801117301743183830797004972635111095275232661149419633465377420027236656779837542780427891489936880185243977201563772755916547943286207307765312518558609304548286720444016420593618158874566891721270405820594451125755176662245548357108412745914842103219855040386530909010725345849289484210047318025688081052740396841222804872393225252098807744693244951526910748730834702640348845141033594242428502585345489648866111795166661365233147598075524445621512463029304742947892092414945031741910138798859746516244807937133747770833703339489719985922881257120966103973755927356769316340927325376012243526451951265968411452733592283166631584000541997114851328\n", + "5962406485138721056483376342797786677167406085935630543585683833547780618343907928324001557359840632634484248592209678930068322225754650900372506778266943967523270817792631912352798076151418445317770747901212662251723036074716020828985406478415396485596633032605078683042707021874231324233217327821664351040723041582610361141866872560193794956451219377349210094658026196015782861623987331510939481390499301895508406900748775798969135755934653998645187874939312142144690863668156047494580699680684004240794020407663114243804940039098877517331533045875881353397460145440032978850495630925355978000952222138848335802248992697153933079602234603486367661594009945270222190550465322298839266930754840054473313559675085560855782979873760370487954403127545511833095886572414615530625037117218609096573440888032841187236317749133783442540811641188902251510353324491096714216825491829684206439710080773061818021450691698578968420094636051376162105480793682445609744786450504197615489386489903053821497461669405280697690282067188484857005170690979297732223590333322730466295196151048891243024926058609485895784184829890063483820277597719493032489615874267495541667406678979439971845762514241932207947511854713538632681854650752024487052903902531936822905467184566333263168001083994229702656\n", + "11924812970277442112966752685595573354334812171871261087171367667095561236687815856648003114719681265268968497184419357860136644451509301800745013556533887935046541635585263824705596152302836890635541495802425324503446072149432041657970812956830792971193266065210157366085414043748462648466434655643328702081446083165220722283733745120387589912902438754698420189316052392031565723247974663021878962780998603791016813801497551597938271511869307997290375749878624284289381727336312094989161399361368008481588040815326228487609880078197755034663066091751762706794920290880065957700991261850711956001904444277696671604497985394307866159204469206972735323188019890540444381100930644597678533861509680108946627119350171121711565959747520740975908806255091023666191773144829231061250074234437218193146881776065682374472635498267566885081623282377804503020706648982193428433650983659368412879420161546123636042901383397157936840189272102752324210961587364891219489572901008395230978772979806107642994923338810561395380564134376969714010341381958595464447180666645460932590392302097782486049852117218971791568369659780126967640555195438986064979231748534991083334813357958879943691525028483864415895023709427077265363709301504048974105807805063873645810934369132666526336002167988459405312\n", + "23849625940554884225933505371191146708669624343742522174342735334191122473375631713296006229439362530537936994368838715720273288903018603601490027113067775870093083271170527649411192304605673781271082991604850649006892144298864083315941625913661585942386532130420314732170828087496925296932869311286657404162892166330441444567467490240775179825804877509396840378632104784063131446495949326043757925561997207582033627602995103195876543023738615994580751499757248568578763454672624189978322798722736016963176081630652456975219760156395510069326132183503525413589840581760131915401982523701423912003808888555393343208995970788615732318408938413945470646376039781080888762201861289195357067723019360217893254238700342243423131919495041481951817612510182047332383546289658462122500148468874436386293763552131364748945270996535133770163246564755609006041413297964386856867301967318736825758840323092247272085802766794315873680378544205504648421923174729782438979145802016790461957545959612215285989846677621122790761128268753939428020682763917190928894361333290921865180784604195564972099704234437943583136739319560253935281110390877972129958463497069982166669626715917759887383050056967728831790047418854154530727418603008097948211615610127747291621868738265333052672004335976918810624\n", + "47699251881109768451867010742382293417339248687485044348685470668382244946751263426592012458878725061075873988737677431440546577806037207202980054226135551740186166542341055298822384609211347562542165983209701298013784288597728166631883251827323171884773064260840629464341656174993850593865738622573314808325784332660882889134934980481550359651609755018793680757264209568126262892991898652087515851123994415164067255205990206391753086047477231989161502999514497137157526909345248379956645597445472033926352163261304913950439520312791020138652264367007050827179681163520263830803965047402847824007617777110786686417991941577231464636817876827890941292752079562161777524403722578390714135446038720435786508477400684486846263838990082963903635225020364094664767092579316924245000296937748872772587527104262729497890541993070267540326493129511218012082826595928773713734603934637473651517680646184494544171605533588631747360757088411009296843846349459564877958291604033580923915091919224430571979693355242245581522256537507878856041365527834381857788722666581843730361569208391129944199408468875887166273478639120507870562220781755944259916926994139964333339253431835519774766100113935457663580094837708309061454837206016195896423231220255494583243737476530666105344008671953837621248\n", + "95398503762219536903734021484764586834678497374970088697370941336764489893502526853184024917757450122151747977475354862881093155612074414405960108452271103480372333084682110597644769218422695125084331966419402596027568577195456333263766503654646343769546128521681258928683312349987701187731477245146629616651568665321765778269869960963100719303219510037587361514528419136252525785983797304175031702247988830328134510411980412783506172094954463978323005999028994274315053818690496759913291194890944067852704326522609827900879040625582040277304528734014101654359362327040527661607930094805695648015235554221573372835983883154462929273635753655781882585504159124323555048807445156781428270892077440871573016954801368973692527677980165927807270450040728189329534185158633848490000593875497745545175054208525458995781083986140535080652986259022436024165653191857547427469207869274947303035361292368989088343211067177263494721514176822018593687692698919129755916583208067161847830183838448861143959386710484491163044513075015757712082731055668763715577445333163687460723138416782259888398816937751774332546957278241015741124441563511888519833853988279928666678506863671039549532200227870915327160189675416618122909674412032391792846462440510989166487474953061332210688017343907675242496\n", + "190797007524439073807468042969529173669356994749940177394741882673528979787005053706368049835514900244303495954950709725762186311224148828811920216904542206960744666169364221195289538436845390250168663932838805192055137154390912666527533007309292687539092257043362517857366624699975402375462954490293259233303137330643531556539739921926201438606439020075174723029056838272505051571967594608350063404495977660656269020823960825567012344189908927956646011998057988548630107637380993519826582389781888135705408653045219655801758081251164080554609057468028203308718724654081055323215860189611391296030471108443146745671967766308925858547271507311563765171008318248647110097614890313562856541784154881743146033909602737947385055355960331855614540900081456378659068370317267696980001187750995491090350108417050917991562167972281070161305972518044872048331306383715094854938415738549894606070722584737978176686422134354526989443028353644037187375385397838259511833166416134323695660367676897722287918773420968982326089026150031515424165462111337527431154890666327374921446276833564519776797633875503548665093914556482031482248883127023777039667707976559857333357013727342079099064400455741830654320379350833236245819348824064783585692924881021978332974949906122664421376034687815350484992\n", + "381594015048878147614936085939058347338713989499880354789483765347057959574010107412736099671029800488606991909901419451524372622448297657623840433809084413921489332338728442390579076873690780500337327865677610384110274308781825333055066014618585375078184514086725035714733249399950804750925908980586518466606274661287063113079479843852402877212878040150349446058113676545010103143935189216700126808991955321312538041647921651134024688379817855913292023996115977097260215274761987039653164779563776271410817306090439311603516162502328161109218114936056406617437449308162110646431720379222782592060942216886293491343935532617851717094543014623127530342016636497294220195229780627125713083568309763486292067819205475894770110711920663711229081800162912757318136740634535393960002375501990982180700216834101835983124335944562140322611945036089744096662612767430189709876831477099789212141445169475956353372844268709053978886056707288074374750770795676519023666332832268647391320735353795444575837546841937964652178052300063030848330924222675054862309781332654749842892553667129039553595267751007097330187829112964062964497766254047554079335415953119714666714027454684158198128800911483661308640758701666472491638697648129567171385849762043956665949899812245328842752069375630700969984\n", + "763188030097756295229872171878116694677427978999760709578967530694115919148020214825472199342059600977213983819802838903048745244896595315247680867618168827842978664677456884781158153747381561000674655731355220768220548617563650666110132029237170750156369028173450071429466498799901609501851817961173036933212549322574126226158959687704805754425756080300698892116227353090020206287870378433400253617983910642625076083295843302268049376759635711826584047992231954194520430549523974079306329559127552542821634612180878623207032325004656322218436229872112813234874898616324221292863440758445565184121884433772586982687871065235703434189086029246255060684033272994588440390459561254251426167136619526972584135638410951789540221423841327422458163600325825514636273481269070787920004751003981964361400433668203671966248671889124280645223890072179488193325225534860379419753662954199578424282890338951912706745688537418107957772113414576148749501541591353038047332665664537294782641470707590889151675093683875929304356104600126061696661848445350109724619562665309499685785107334258079107190535502014194660375658225928125928995532508095108158670831906239429333428054909368316396257601822967322617281517403332944983277395296259134342771699524087913331899799624490657685504138751261401939968\n", + "1526376060195512590459744343756233389354855957999521419157935061388231838296040429650944398684119201954427967639605677806097490489793190630495361735236337655685957329354913769562316307494763122001349311462710441536441097235127301332220264058474341500312738056346900142858932997599803219003703635922346073866425098645148252452317919375409611508851512160601397784232454706180040412575740756866800507235967821285250152166591686604536098753519271423653168095984463908389040861099047948158612659118255105085643269224361757246414064650009312644436872459744225626469749797232648442585726881516891130368243768867545173965375742130471406868378172058492510121368066545989176880780919122508502852334273239053945168271276821903579080442847682654844916327200651651029272546962538141575840009502007963928722800867336407343932497343778248561290447780144358976386650451069720758839507325908399156848565780677903825413491377074836215915544226829152297499003083182706076094665331329074589565282941415181778303350187367751858608712209200252123393323696890700219449239125330618999371570214668516158214381071004028389320751316451856251857991065016190216317341663812478858666856109818736632792515203645934645234563034806665889966554790592518268685543399048175826663799599248981315371008277502522803879936\n", + "3052752120391025180919488687512466778709711915999042838315870122776463676592080859301888797368238403908855935279211355612194980979586381260990723470472675311371914658709827539124632614989526244002698622925420883072882194470254602664440528116948683000625476112693800285717865995199606438007407271844692147732850197290296504904635838750819223017703024321202795568464909412360080825151481513733601014471935642570500304333183373209072197507038542847306336191968927816778081722198095896317225318236510210171286538448723514492828129300018625288873744919488451252939499594465296885171453763033782260736487537735090347930751484260942813736756344116985020242736133091978353761561838245017005704668546478107890336542553643807158160885695365309689832654401303302058545093925076283151680019004015927857445601734672814687864994687556497122580895560288717952773300902139441517679014651816798313697131561355807650826982754149672431831088453658304594998006166365412152189330662658149179130565882830363556606700374735503717217424418400504246786647393781400438898478250661237998743140429337032316428762142008056778641502632903712503715982130032380432634683327624957717333712219637473265585030407291869290469126069613331779933109581185036537371086798096351653327599198497962630742016555005045607759872\n", + "6105504240782050361838977375024933557419423831998085676631740245552927353184161718603777594736476807817711870558422711224389961959172762521981446940945350622743829317419655078249265229979052488005397245850841766145764388940509205328881056233897366001250952225387600571435731990399212876014814543689384295465700394580593009809271677501638446035406048642405591136929818824720161650302963027467202028943871285141000608666366746418144395014077085694612672383937855633556163444396191792634450636473020420342573076897447028985656258600037250577747489838976902505878999188930593770342907526067564521472975075470180695861502968521885627473512688233970040485472266183956707523123676490034011409337092956215780673085107287614316321771390730619379665308802606604117090187850152566303360038008031855714891203469345629375729989375112994245161791120577435905546601804278883035358029303633596627394263122711615301653965508299344863662176907316609189996012332730824304378661325316298358261131765660727113213400749471007434434848836801008493573294787562800877796956501322475997486280858674064632857524284016113557283005265807425007431964260064760865269366655249915434667424439274946531170060814583738580938252139226663559866219162370073074742173596192703306655198396995925261484033110010091215519744\n", + "12211008481564100723677954750049867114838847663996171353263480491105854706368323437207555189472953615635423741116845422448779923918345525043962893881890701245487658634839310156498530459958104976010794491701683532291528777881018410657762112467794732002501904450775201142871463980798425752029629087378768590931400789161186019618543355003276892070812097284811182273859637649440323300605926054934404057887742570282001217332733492836288790028154171389225344767875711267112326888792383585268901272946040840685146153794894057971312517200074501155494979677953805011757998377861187540685815052135129042945950150940361391723005937043771254947025376467940080970944532367913415046247352980068022818674185912431561346170214575228632643542781461238759330617605213208234180375700305132606720076016063711429782406938691258751459978750225988490323582241154871811093203608557766070716058607267193254788526245423230603307931016598689727324353814633218379992024665461648608757322650632596716522263531321454226426801498942014868869697673602016987146589575125601755593913002644951994972561717348129265715048568032227114566010531614850014863928520129521730538733310499830869334848878549893062340121629167477161876504278453327119732438324740146149484347192385406613310396793991850522968066220020182431039488\n", + "24422016963128201447355909500099734229677695327992342706526960982211709412736646874415110378945907231270847482233690844897559847836691050087925787763781402490975317269678620312997060919916209952021588983403367064583057555762036821315524224935589464005003808901550402285742927961596851504059258174757537181862801578322372039237086710006553784141624194569622364547719275298880646601211852109868808115775485140564002434665466985672577580056308342778450689535751422534224653777584767170537802545892081681370292307589788115942625034400149002310989959355907610023515996755722375081371630104270258085891900301880722783446011874087542509894050752935880161941889064735826830092494705960136045637348371824863122692340429150457265287085562922477518661235210426416468360751400610265213440152032127422859564813877382517502919957500451976980647164482309743622186407217115532141432117214534386509577052490846461206615862033197379454648707629266436759984049330923297217514645301265193433044527062642908452853602997884029737739395347204033974293179150251203511187826005289903989945123434696258531430097136064454229132021063229700029727857040259043461077466620999661738669697757099786124680243258334954323753008556906654239464876649480292298968694384770813226620793587983701045936132440040364862078976\n", + "48844033926256402894711819000199468459355390655984685413053921964423418825473293748830220757891814462541694964467381689795119695673382100175851575527562804981950634539357240625994121839832419904043177966806734129166115111524073642631048449871178928010007617803100804571485855923193703008118516349515074363725603156644744078474173420013107568283248389139244729095438550597761293202423704219737616231550970281128004869330933971345155160112616685556901379071502845068449307555169534341075605091784163362740584615179576231885250068800298004621979918711815220047031993511444750162743260208540516171783800603761445566892023748175085019788101505871760323883778129471653660184989411920272091274696743649726245384680858300914530574171125844955037322470420852832936721502801220530426880304064254845719129627754765035005839915000903953961294328964619487244372814434231064282864234429068773019154104981692922413231724066394758909297415258532873519968098661846594435029290602530386866089054125285816905707205995768059475478790694408067948586358300502407022375652010579807979890246869392517062860194272128908458264042126459400059455714080518086922154933241999323477339395514199572249360486516669908647506017113813308478929753298960584597937388769541626453241587175967402091872264880080729724157952\n", + "97688067852512805789423638000398936918710781311969370826107843928846837650946587497660441515783628925083389928934763379590239391346764200351703151055125609963901269078714481251988243679664839808086355933613468258332230223048147285262096899742357856020015235606201609142971711846387406016237032699030148727451206313289488156948346840026215136566496778278489458190877101195522586404847408439475232463101940562256009738661867942690310320225233371113802758143005690136898615110339068682151210183568326725481169230359152463770500137600596009243959837423630440094063987022889500325486520417081032343567601207522891133784047496350170039576203011743520647767556258943307320369978823840544182549393487299452490769361716601829061148342251689910074644940841705665873443005602441060853760608128509691438259255509530070011679830001807907922588657929238974488745628868462128565728468858137546038308209963385844826463448132789517818594830517065747039936197323693188870058581205060773732178108250571633811414411991536118950957581388816135897172716601004814044751304021159615959780493738785034125720388544257816916528084252918800118911428161036173844309866483998646954678791028399144498720973033339817295012034227626616957859506597921169195874777539083252906483174351934804183744529760161459448315904\n", + "195376135705025611578847276000797873837421562623938741652215687857693675301893174995320883031567257850166779857869526759180478782693528400703406302110251219927802538157428962503976487359329679616172711867226936516664460446096294570524193799484715712040030471212403218285943423692774812032474065398060297454902412626578976313896693680052430273132993556556978916381754202391045172809694816878950464926203881124512019477323735885380620640450466742227605516286011380273797230220678137364302420367136653450962338460718304927541000275201192018487919674847260880188127974045779000650973040834162064687135202415045782267568094992700340079152406023487041295535112517886614640739957647681088365098786974598904981538723433203658122296684503379820149289881683411331746886011204882121707521216257019382876518511019060140023359660003615815845177315858477948977491257736924257131456937716275092076616419926771689652926896265579035637189661034131494079872394647386377740117162410121547464356216501143267622828823983072237901915162777632271794345433202009628089502608042319231919560987477570068251440777088515633833056168505837600237822856322072347688619732967997293909357582056798288997441946066679634590024068455253233915719013195842338391749555078166505812966348703869608367489059520322918896631808\n", + "390752271410051223157694552001595747674843125247877483304431375715387350603786349990641766063134515700333559715739053518360957565387056801406812604220502439855605076314857925007952974718659359232345423734453873033328920892192589141048387598969431424080060942424806436571886847385549624064948130796120594909804825253157952627793387360104860546265987113113957832763508404782090345619389633757900929852407762249024038954647471770761241280900933484455211032572022760547594460441356274728604840734273306901924676921436609855082000550402384036975839349694521760376255948091558001301946081668324129374270404830091564535136189985400680158304812046974082591070225035773229281479915295362176730197573949197809963077446866407316244593369006759640298579763366822663493772022409764243415042432514038765753037022038120280046719320007231631690354631716955897954982515473848514262913875432550184153232839853543379305853792531158071274379322068262988159744789294772755480234324820243094928712433002286535245657647966144475803830325555264543588690866404019256179005216084638463839121974955140136502881554177031267666112337011675200475645712644144695377239465935994587818715164113596577994883892133359269180048136910506467831438026391684676783499110156333011625932697407739216734978119040645837793263616\n", + "781504542820102446315389104003191495349686250495754966608862751430774701207572699981283532126269031400667119431478107036721915130774113602813625208441004879711210152629715850015905949437318718464690847468907746066657841784385178282096775197938862848160121884849612873143773694771099248129896261592241189819609650506315905255586774720209721092531974226227915665527016809564180691238779267515801859704815524498048077909294943541522482561801866968910422065144045521095188920882712549457209681468546613803849353842873219710164001100804768073951678699389043520752511896183116002603892163336648258748540809660183129070272379970801360316609624093948165182140450071546458562959830590724353460395147898395619926154893732814632489186738013519280597159526733645326987544044819528486830084865028077531506074044076240560093438640014463263380709263433911795909965030947697028525827750865100368306465679707086758611707585062316142548758644136525976319489578589545510960468649640486189857424866004573070491315295932288951607660651110529087177381732808038512358010432169276927678243949910280273005763108354062535332224674023350400951291425288289390754478931871989175637430328227193155989767784266718538360096273821012935662876052783369353566998220312666023251865394815478433469956238081291675586527232\n", + "1563009085640204892630778208006382990699372500991509933217725502861549402415145399962567064252538062801334238862956214073443830261548227205627250416882009759422420305259431700031811898874637436929381694937815492133315683568770356564193550395877725696320243769699225746287547389542198496259792523184482379639219301012631810511173549440419442185063948452455831331054033619128361382477558535031603719409631048996096155818589887083044965123603733937820844130288091042190377841765425098914419362937093227607698707685746439420328002201609536147903357398778087041505023792366232005207784326673296517497081619320366258140544759941602720633219248187896330364280900143092917125919661181448706920790295796791239852309787465629264978373476027038561194319053467290653975088089639056973660169730056155063012148088152481120186877280028926526761418526867823591819930061895394057051655501730200736612931359414173517223415170124632285097517288273051952638979157179091021920937299280972379714849732009146140982630591864577903215321302221058174354763465616077024716020864338553855356487899820560546011526216708125070664449348046700801902582850576578781508957863743978351274860656454386311979535568533437076720192547642025871325752105566738707133996440625332046503730789630956866939912476162583351173054464\n", + "3126018171280409785261556416012765981398745001983019866435451005723098804830290799925134128505076125602668477725912428146887660523096454411254500833764019518844840610518863400063623797749274873858763389875630984266631367137540713128387100791755451392640487539398451492575094779084396992519585046368964759278438602025263621022347098880838884370127896904911662662108067238256722764955117070063207438819262097992192311637179774166089930247207467875641688260576182084380755683530850197828838725874186455215397415371492878840656004403219072295806714797556174083010047584732464010415568653346593034994163238640732516281089519883205441266438496375792660728561800286185834251839322362897413841580591593582479704619574931258529956746952054077122388638106934581307950176179278113947320339460112310126024296176304962240373754560057853053522837053735647183639860123790788114103311003460401473225862718828347034446830340249264570195034576546103905277958314358182043841874598561944759429699464018292281965261183729155806430642604442116348709526931232154049432041728677107710712975799641121092023052433416250141328898696093401603805165701153157563017915727487956702549721312908772623959071137066874153440385095284051742651504211133477414267992881250664093007461579261913733879824952325166702346108928\n", + "6252036342560819570523112832025531962797490003966039732870902011446197609660581599850268257010152251205336955451824856293775321046192908822509001667528039037689681221037726800127247595498549747717526779751261968533262734275081426256774201583510902785280975078796902985150189558168793985039170092737929518556877204050527242044694197761677768740255793809823325324216134476513445529910234140126414877638524195984384623274359548332179860494414935751283376521152364168761511367061700395657677451748372910430794830742985757681312008806438144591613429595112348166020095169464928020831137306693186069988326477281465032562179039766410882532876992751585321457123600572371668503678644725794827683161183187164959409239149862517059913493904108154244777276213869162615900352358556227894640678920224620252048592352609924480747509120115706107045674107471294367279720247581576228206622006920802946451725437656694068893660680498529140390069153092207810555916628716364087683749197123889518859398928036584563930522367458311612861285208884232697419053862464308098864083457354215421425951599282242184046104866832500282657797392186803207610331402306315126035831454975913405099442625817545247918142274133748306880770190568103485303008422266954828535985762501328186014923158523827467759649904650333404692217856\n", + "12504072685121639141046225664051063925594980007932079465741804022892395219321163199700536514020304502410673910903649712587550642092385817645018003335056078075379362442075453600254495190997099495435053559502523937066525468550162852513548403167021805570561950157593805970300379116337587970078340185475859037113754408101054484089388395523355537480511587619646650648432268953026891059820468280252829755277048391968769246548719096664359720988829871502566753042304728337523022734123400791315354903496745820861589661485971515362624017612876289183226859190224696332040190338929856041662274613386372139976652954562930065124358079532821765065753985503170642914247201144743337007357289451589655366322366374329918818478299725034119826987808216308489554552427738325231800704717112455789281357840449240504097184705219848961495018240231412214091348214942588734559440495163152456413244013841605892903450875313388137787321360997058280780138306184415621111833257432728175367498394247779037718797856073169127861044734916623225722570417768465394838107724928616197728166914708430842851903198564484368092209733665000565315594784373606415220662804612630252071662909951826810198885251635090495836284548267496613761540381136206970606016844533909657071971525002656372029846317047654935519299809300666809384435712\n", + "25008145370243278282092451328102127851189960015864158931483608045784790438642326399401073028040609004821347821807299425175101284184771635290036006670112156150758724884150907200508990381994198990870107119005047874133050937100325705027096806334043611141123900315187611940600758232675175940156680370951718074227508816202108968178776791046711074961023175239293301296864537906053782119640936560505659510554096783937538493097438193328719441977659743005133506084609456675046045468246801582630709806993491641723179322971943030725248035225752578366453718380449392664080380677859712083324549226772744279953305909125860130248716159065643530131507971006341285828494402289486674014714578903179310732644732748659837636956599450068239653975616432616979109104855476650463601409434224911578562715680898481008194369410439697922990036480462824428182696429885177469118880990326304912826488027683211785806901750626776275574642721994116561560276612368831242223666514865456350734996788495558075437595712146338255722089469833246451445140835536930789676215449857232395456333829416861685703806397128968736184419467330001130631189568747212830441325609225260504143325819903653620397770503270180991672569096534993227523080762272413941212033689067819314143943050005312744059692634095309871038599618601333618768871424\n", + "50016290740486556564184902656204255702379920031728317862967216091569580877284652798802146056081218009642695643614598850350202568369543270580072013340224312301517449768301814401017980763988397981740214238010095748266101874200651410054193612668087222282247800630375223881201516465350351880313360741903436148455017632404217936357553582093422149922046350478586602593729075812107564239281873121011319021108193567875076986194876386657438883955319486010267012169218913350092090936493603165261419613986983283446358645943886061450496070451505156732907436760898785328160761355719424166649098453545488559906611818251720260497432318131287060263015942012682571656988804578973348029429157806358621465289465497319675273913198900136479307951232865233958218209710953300927202818868449823157125431361796962016388738820879395845980072960925648856365392859770354938237761980652609825652976055366423571613803501253552551149285443988233123120553224737662484447333029730912701469993576991116150875191424292676511444178939666492902890281671073861579352430899714464790912667658833723371407612794257937472368838934660002261262379137494425660882651218450521008286651639807307240795541006540361983345138193069986455046161524544827882424067378135638628287886100010625488119385268190619742077199237202667237537742848\n", + "100032581480973113128369805312408511404759840063456635725934432183139161754569305597604292112162436019285391287229197700700405136739086541160144026680448624603034899536603628802035961527976795963480428476020191496532203748401302820108387225336174444564495601260750447762403032930700703760626721483806872296910035264808435872715107164186844299844092700957173205187458151624215128478563746242022638042216387135750153972389752773314877767910638972020534024338437826700184181872987206330522839227973966566892717291887772122900992140903010313465814873521797570656321522711438848333298196907090977119813223636503440520994864636262574120526031884025365143313977609157946696058858315612717242930578930994639350547826397800272958615902465730467916436419421906601854405637736899646314250862723593924032777477641758791691960145921851297712730785719540709876475523961305219651305952110732847143227607002507105102298570887976466246241106449475324968894666059461825402939987153982232301750382848585353022888357879332985805780563342147723158704861799428929581825335317667446742815225588515874944737677869320004522524758274988851321765302436901042016573303279614614481591082013080723966690276386139972910092323049089655764848134756271277256575772200021250976238770536381239484154398474405334475075485696\n", + "200065162961946226256739610624817022809519680126913271451868864366278323509138611195208584224324872038570782574458395401400810273478173082320288053360897249206069799073207257604071923055953591926960856952040382993064407496802605640216774450672348889128991202521500895524806065861401407521253442967613744593820070529616871745430214328373688599688185401914346410374916303248430256957127492484045276084432774271500307944779505546629755535821277944041068048676875653400368363745974412661045678455947933133785434583775544245801984281806020626931629747043595141312643045422877696666596393814181954239626447273006881041989729272525148241052063768050730286627955218315893392117716631225434485861157861989278701095652795600545917231804931460935832872838843813203708811275473799292628501725447187848065554955283517583383920291843702595425461571439081419752951047922610439302611904221465694286455214005014210204597141775952932492482212898950649937789332118923650805879974307964464603500765697170706045776715758665971611561126684295446317409723598857859163650670635334893485630451177031749889475355738640009045049516549977702643530604873802084033146606559229228963182164026161447933380552772279945820184646098179311529696269512542554513151544400042501952477541072762478968308796948810668950150971392\n", + "400130325923892452513479221249634045619039360253826542903737728732556647018277222390417168448649744077141565148916790802801620546956346164640576106721794498412139598146414515208143846111907183853921713904080765986128814993605211280433548901344697778257982405043001791049612131722802815042506885935227489187640141059233743490860428656747377199376370803828692820749832606496860513914254984968090552168865548543000615889559011093259511071642555888082136097353751306800736727491948825322091356911895866267570869167551088491603968563612041253863259494087190282625286090845755393333192787628363908479252894546013762083979458545050296482104127536101460573255910436631786784235433262450868971722315723978557402191305591201091834463609862921871665745677687626407417622550947598585257003450894375696131109910567035166767840583687405190850923142878162839505902095845220878605223808442931388572910428010028420409194283551905864984964425797901299875578664237847301611759948615928929207001531394341412091553431517331943223122253368590892634819447197715718327301341270669786971260902354063499778950711477280018090099033099955405287061209747604168066293213118458457926364328052322895866761105544559891640369292196358623059392539025085109026303088800085003904955082145524957936617593897621337900301942784\n", + "800260651847784905026958442499268091238078720507653085807475457465113294036554444780834336897299488154283130297833581605603241093912692329281152213443588996824279196292829030416287692223814367707843427808161531972257629987210422560867097802689395556515964810086003582099224263445605630085013771870454978375280282118467486981720857313494754398752741607657385641499665212993721027828509969936181104337731097086001231779118022186519022143285111776164272194707502613601473454983897650644182713823791732535141738335102176983207937127224082507726518988174380565250572181691510786666385575256727816958505789092027524167958917090100592964208255072202921146511820873263573568470866524901737943444631447957114804382611182402183668927219725843743331491355375252814835245101895197170514006901788751392262219821134070333535681167374810381701846285756325679011804191690441757210447616885862777145820856020056840818388567103811729969928851595802599751157328475694603223519897231857858414003062788682824183106863034663886446244506737181785269638894395431436654602682541339573942521804708126999557901422954560036180198066199910810574122419495208336132586426236916915852728656104645791733522211089119783280738584392717246118785078050170218052606177600170007809910164291049915873235187795242675800603885568\n", + "1600521303695569810053916884998536182476157441015306171614950914930226588073108889561668673794598976308566260595667163211206482187825384658562304426887177993648558392585658060832575384447628735415686855616323063944515259974420845121734195605378791113031929620172007164198448526891211260170027543740909956750560564236934973963441714626989508797505483215314771282999330425987442055657019939872362208675462194172002463558236044373038044286570223552328544389415005227202946909967795301288365427647583465070283476670204353966415874254448165015453037976348761130501144363383021573332771150513455633917011578184055048335917834180201185928416510144405842293023641746527147136941733049803475886889262895914229608765222364804367337854439451687486662982710750505629670490203790394341028013803577502784524439642268140667071362334749620763403692571512651358023608383380883514420895233771725554291641712040113681636777134207623459939857703191605199502314656951389206447039794463715716828006125577365648366213726069327772892489013474363570539277788790862873309205365082679147885043609416253999115802845909120072360396132399821621148244838990416672265172852473833831705457312209291583467044422178239566561477168785434492237570156100340436105212355200340015619820328582099831746470375590485351601207771136\n", + "3201042607391139620107833769997072364952314882030612343229901829860453176146217779123337347589197952617132521191334326422412964375650769317124608853774355987297116785171316121665150768895257470831373711232646127889030519948841690243468391210757582226063859240344014328396897053782422520340055087481819913501121128473869947926883429253979017595010966430629542565998660851974884111314039879744724417350924388344004927116472088746076088573140447104657088778830010454405893819935590602576730855295166930140566953340408707932831748508896330030906075952697522261002288726766043146665542301026911267834023156368110096671835668360402371856833020288811684586047283493054294273883466099606951773778525791828459217530444729608734675708878903374973325965421501011259340980407580788682056027607155005569048879284536281334142724669499241526807385143025302716047216766761767028841790467543451108583283424080227363273554268415246919879715406383210399004629313902778412894079588927431433656012251154731296732427452138655545784978026948727141078555577581725746618410730165358295770087218832507998231605691818240144720792264799643242296489677980833344530345704947667663410914624418583166934088844356479133122954337570868984475140312200680872210424710400680031239640657164199663492940751180970703202415542272\n", + "6402085214782279240215667539994144729904629764061224686459803659720906352292435558246674695178395905234265042382668652844825928751301538634249217707548711974594233570342632243330301537790514941662747422465292255778061039897683380486936782421515164452127718480688028656793794107564845040680110174963639827002242256947739895853766858507958035190021932861259085131997321703949768222628079759489448834701848776688009854232944177492152177146280894209314177557660020908811787639871181205153461710590333860281133906680817415865663497017792660061812151905395044522004577453532086293331084602053822535668046312736220193343671336720804743713666040577623369172094566986108588547766932199213903547557051583656918435060889459217469351417757806749946651930843002022518681960815161577364112055214310011138097758569072562668285449338998483053614770286050605432094433533523534057683580935086902217166566848160454726547108536830493839759430812766420798009258627805556825788159177854862867312024502309462593464854904277311091569956053897454282157111155163451493236821460330716591540174437665015996463211383636480289441584529599286484592979355961666689060691409895335326821829248837166333868177688712958266245908675141737968950280624401361744420849420801360062479281314328399326985881502361941406404831084544\n", + "12804170429564558480431335079988289459809259528122449372919607319441812704584871116493349390356791810468530084765337305689651857502603077268498435415097423949188467140685264486660603075581029883325494844930584511556122079795366760973873564843030328904255436961376057313587588215129690081360220349927279654004484513895479791707533717015916070380043865722518170263994643407899536445256159518978897669403697553376019708465888354984304354292561788418628355115320041817623575279742362410306923421180667720562267813361634831731326994035585320123624303810790089044009154907064172586662169204107645071336092625472440386687342673441609487427332081155246738344189133972217177095533864398427807095114103167313836870121778918434938702835515613499893303861686004045037363921630323154728224110428620022276195517138145125336570898677996966107229540572101210864188867067047068115367161870173804434333133696320909453094217073660987679518861625532841596018517255611113651576318355709725734624049004618925186929709808554622183139912107794908564314222310326902986473642920661433183080348875330031992926422767272960578883169059198572969185958711923333378121382819790670653643658497674332667736355377425916532491817350283475937900561248802723488841698841602720124958562628656798653971763004723882812809662169088\n", + "25608340859129116960862670159976578919618519056244898745839214638883625409169742232986698780713583620937060169530674611379303715005206154536996870830194847898376934281370528973321206151162059766650989689861169023112244159590733521947747129686060657808510873922752114627175176430259380162720440699854559308008969027790959583415067434031832140760087731445036340527989286815799072890512319037957795338807395106752039416931776709968608708585123576837256710230640083635247150559484724820613846842361335441124535626723269663462653988071170640247248607621580178088018309814128345173324338408215290142672185250944880773374685346883218974854664162310493476688378267944434354191067728796855614190228206334627673740243557836869877405671031226999786607723372008090074727843260646309456448220857240044552391034276290250673141797355993932214459081144202421728377734134094136230734323740347608868666267392641818906188434147321975359037723251065683192037034511222227303152636711419451469248098009237850373859419617109244366279824215589817128628444620653805972947285841322866366160697750660063985852845534545921157766338118397145938371917423846666756242765639581341307287316995348665335472710754851833064983634700566951875801122497605446977683397683205440249917125257313597307943526009447765625619324338176\n", + "51216681718258233921725340319953157839237038112489797491678429277767250818339484465973397561427167241874120339061349222758607430010412309073993741660389695796753868562741057946642412302324119533301979379722338046224488319181467043895494259372121315617021747845504229254350352860518760325440881399709118616017938055581919166830134868063664281520175462890072681055978573631598145781024638075915590677614790213504078833863553419937217417170247153674513420461280167270494301118969449641227693684722670882249071253446539326925307976142341280494497215243160356176036619628256690346648676816430580285344370501889761546749370693766437949709328324620986953376756535888868708382135457593711228380456412669255347480487115673739754811342062453999573215446744016180149455686521292618912896441714480089104782068552580501346283594711987864428918162288404843456755468268188272461468647480695217737332534785283637812376868294643950718075446502131366384074069022444454606305273422838902938496196018475700747718839234218488732559648431179634257256889241307611945894571682645732732321395501320127971705691069091842315532676236794291876743834847693333512485531279162682614574633990697330670945421509703666129967269401133903751602244995210893955366795366410880499834250514627194615887052018895531251238648676352\n", + "102433363436516467843450680639906315678474076224979594983356858555534501636678968931946795122854334483748240678122698445517214860020824618147987483320779391593507737125482115893284824604648239066603958759444676092448976638362934087790988518744242631234043495691008458508700705721037520650881762799418237232035876111163838333660269736127328563040350925780145362111957147263196291562049276151831181355229580427008157667727106839874434834340494307349026840922560334540988602237938899282455387369445341764498142506893078653850615952284682560988994430486320712352073239256513380693297353632861160570688741003779523093498741387532875899418656649241973906753513071777737416764270915187422456760912825338510694960974231347479509622684124907999146430893488032360298911373042585237825792883428960178209564137105161002692567189423975728857836324576809686913510936536376544922937294961390435474665069570567275624753736589287901436150893004262732768148138044888909212610546845677805876992392036951401495437678468436977465119296862359268514513778482615223891789143365291465464642791002640255943411382138183684631065352473588583753487669695386667024971062558325365229149267981394661341890843019407332259934538802267807503204489990421787910733590732821760999668501029254389231774104037791062502477297352704\n", + "204866726873032935686901361279812631356948152449959189966713717111069003273357937863893590245708668967496481356245396891034429720041649236295974966641558783187015474250964231786569649209296478133207917518889352184897953276725868175581977037488485262468086991382016917017401411442075041301763525598836474464071752222327676667320539472254657126080701851560290724223914294526392583124098552303662362710459160854016315335454213679748869668680988614698053681845120669081977204475877798564910774738890683528996285013786157307701231904569365121977988860972641424704146478513026761386594707265722321141377482007559046186997482775065751798837313298483947813507026143555474833528541830374844913521825650677021389921948462694959019245368249815998292861786976064720597822746085170475651585766857920356419128274210322005385134378847951457715672649153619373827021873072753089845874589922780870949330139141134551249507473178575802872301786008525465536296276089777818425221093691355611753984784073902802990875356936873954930238593724718537029027556965230447783578286730582930929285582005280511886822764276367369262130704947177167506975339390773334049942125116650730458298535962789322683781686038814664519869077604535615006408979980843575821467181465643521999337002058508778463548208075582125004954594705408\n", + "409733453746065871373802722559625262713896304899918379933427434222138006546715875727787180491417337934992962712490793782068859440083298472591949933283117566374030948501928463573139298418592956266415835037778704369795906553451736351163954074976970524936173982764033834034802822884150082603527051197672948928143504444655353334641078944509314252161403703120581448447828589052785166248197104607324725420918321708032630670908427359497739337361977229396107363690241338163954408951755597129821549477781367057992570027572314615402463809138730243955977721945282849408292957026053522773189414531444642282754964015118092373994965550131503597674626596967895627014052287110949667057083660749689827043651301354042779843896925389918038490736499631996585723573952129441195645492170340951303171533715840712838256548420644010770268757695902915431345298307238747654043746145506179691749179845561741898660278282269102499014946357151605744603572017050931072592552179555636850442187382711223507969568147805605981750713873747909860477187449437074058055113930460895567156573461165861858571164010561023773645528552734738524261409894354335013950678781546668099884250233301460916597071925578645367563372077629329039738155209071230012817959961687151642934362931287043998674004117017556927096416151164250009909189410816\n", + "819466907492131742747605445119250525427792609799836759866854868444276013093431751455574360982834675869985925424981587564137718880166596945183899866566235132748061897003856927146278596837185912532831670075557408739591813106903472702327908149953941049872347965528067668069605645768300165207054102395345897856287008889310706669282157889018628504322807406241162896895657178105570332496394209214649450841836643416065261341816854718995478674723954458792214727380482676327908817903511194259643098955562734115985140055144629230804927618277460487911955443890565698816585914052107045546378829062889284565509928030236184747989931100263007195349253193935791254028104574221899334114167321499379654087302602708085559687793850779836076981472999263993171447147904258882391290984340681902606343067431681425676513096841288021540537515391805830862690596614477495308087492291012359383498359691123483797320556564538204998029892714303211489207144034101862145185104359111273700884374765422447015939136295611211963501427747495819720954374898874148116110227860921791134313146922331723717142328021122047547291057105469477048522819788708670027901357563093336199768500466602921833194143851157290735126744155258658079476310418142460025635919923374303285868725862574087997348008234035113854192832302328500019818378821632\n", + "1638933814984263485495210890238501050855585219599673519733709736888552026186863502911148721965669351739971850849963175128275437760333193890367799733132470265496123794007713854292557193674371825065663340151114817479183626213806945404655816299907882099744695931056135336139211291536600330414108204790691795712574017778621413338564315778037257008645614812482325793791314356211140664992788418429298901683673286832130522683633709437990957349447908917584429454760965352655817635807022388519286197911125468231970280110289258461609855236554920975823910887781131397633171828104214091092757658125778569131019856060472369495979862200526014390698506387871582508056209148443798668228334642998759308174605205416171119375587701559672153962945998527986342894295808517764782581968681363805212686134863362851353026193682576043081075030783611661725381193228954990616174984582024718766996719382246967594641113129076409996059785428606422978414288068203724290370208718222547401768749530844894031878272591222423927002855494991639441908749797748296232220455721843582268626293844663447434284656042244095094582114210938954097045639577417340055802715126186672399537000933205843666388287702314581470253488310517316158952620836284920051271839846748606571737451725148175994696016468070227708385664604657000039636757643264\n", + "3277867629968526970990421780477002101711170439199347039467419473777104052373727005822297443931338703479943701699926350256550875520666387780735599466264940530992247588015427708585114387348743650131326680302229634958367252427613890809311632599815764199489391862112270672278422583073200660828216409581383591425148035557242826677128631556074514017291229624964651587582628712422281329985576836858597803367346573664261045367267418875981914698895817835168858909521930705311635271614044777038572395822250936463940560220578516923219710473109841951647821775562262795266343656208428182185515316251557138262039712120944738991959724401052028781397012775743165016112418296887597336456669285997518616349210410832342238751175403119344307925891997055972685788591617035529565163937362727610425372269726725702706052387365152086162150061567223323450762386457909981232349969164049437533993438764493935189282226258152819992119570857212845956828576136407448580740417436445094803537499061689788063756545182444847854005710989983278883817499595496592464440911443687164537252587689326894868569312084488190189164228421877908194091279154834680111605430252373344799074001866411687332776575404629162940506976621034632317905241672569840102543679693497213143474903450296351989392032936140455416771329209314000079273515286528\n", + "6555735259937053941980843560954004203422340878398694078934838947554208104747454011644594887862677406959887403399852700513101751041332775561471198932529881061984495176030855417170228774697487300262653360604459269916734504855227781618623265199631528398978783724224541344556845166146401321656432819162767182850296071114485653354257263112149028034582459249929303175165257424844562659971153673717195606734693147328522090734534837751963829397791635670337717819043861410623270543228089554077144791644501872927881120441157033846439420946219683903295643551124525590532687312416856364371030632503114276524079424241889477983919448802104057562794025551486330032224836593775194672913338571995037232698420821664684477502350806238688615851783994111945371577183234071059130327874725455220850744539453451405412104774730304172324300123134446646901524772915819962464699938328098875067986877528987870378564452516305639984239141714425691913657152272814897161480834872890189607074998123379576127513090364889695708011421979966557767634999190993184928881822887374329074505175378653789737138624168976380378328456843755816388182558309669360223210860504746689598148003732823374665553150809258325881013953242069264635810483345139680205087359386994426286949806900592703978784065872280910833542658418628000158547030573056\n", + "13111470519874107883961687121908008406844681756797388157869677895108416209494908023289189775725354813919774806799705401026203502082665551122942397865059762123968990352061710834340457549394974600525306721208918539833469009710455563237246530399263056797957567448449082689113690332292802643312865638325534365700592142228971306708514526224298056069164918499858606350330514849689125319942307347434391213469386294657044181469069675503927658795583271340675435638087722821246541086456179108154289583289003745855762240882314067692878841892439367806591287102249051181065374624833712728742061265006228553048158848483778955967838897604208115125588051102972660064449673187550389345826677143990074465396841643329368955004701612477377231703567988223890743154366468142118260655749450910441701489078906902810824209549460608344648600246268893293803049545831639924929399876656197750135973755057975740757128905032611279968478283428851383827314304545629794322961669745780379214149996246759152255026180729779391416022843959933115535269998381986369857763645774748658149010350757307579474277248337952760756656913687511632776365116619338720446421721009493379196296007465646749331106301618516651762027906484138529271620966690279360410174718773988852573899613801185407957568131744561821667085316837256000317094061146112\n", + "26222941039748215767923374243816016813689363513594776315739355790216832418989816046578379551450709627839549613599410802052407004165331102245884795730119524247937980704123421668680915098789949201050613442417837079666938019420911126474493060798526113595915134896898165378227380664585605286625731276651068731401184284457942613417029052448596112138329836999717212700661029699378250639884614694868782426938772589314088362938139351007855317591166542681350871276175445642493082172912358216308579166578007491711524481764628135385757683784878735613182574204498102362130749249667425457484122530012457106096317696967557911935677795208416230251176102205945320128899346375100778691653354287980148930793683286658737910009403224954754463407135976447781486308732936284236521311498901820883402978157813805621648419098921216689297200492537786587606099091663279849858799753312395500271947510115951481514257810065222559936956566857702767654628609091259588645923339491560758428299992493518304510052361459558782832045687919866231070539996763972739715527291549497316298020701514615158948554496675905521513313827375023265552730233238677440892843442018986758392592014931293498662212603237033303524055812968277058543241933380558720820349437547977705147799227602370815915136263489123643334170633674512000634188122292224\n", + "52445882079496431535846748487632033627378727027189552631478711580433664837979632093156759102901419255679099227198821604104814008330662204491769591460239048495875961408246843337361830197579898402101226884835674159333876038841822252948986121597052227191830269793796330756454761329171210573251462553302137462802368568915885226834058104897192224276659673999434425401322059398756501279769229389737564853877545178628176725876278702015710635182333085362701742552350891284986164345824716432617158333156014983423048963529256270771515367569757471226365148408996204724261498499334850914968245060024914212192635393935115823871355590416832460502352204411890640257798692750201557383306708575960297861587366573317475820018806449909508926814271952895562972617465872568473042622997803641766805956315627611243296838197842433378594400985075573175212198183326559699717599506624791000543895020231902963028515620130445119873913133715405535309257218182519177291846678983121516856599984987036609020104722919117565664091375839732462141079993527945479431054583098994632596041403029230317897108993351811043026627654750046531105460466477354881785686884037973516785184029862586997324425206474066607048111625936554117086483866761117441640698875095955410295598455204741631830272526978247286668341267349024001268376244584448\n", + "104891764158992863071693496975264067254757454054379105262957423160867329675959264186313518205802838511358198454397643208209628016661324408983539182920478096991751922816493686674723660395159796804202453769671348318667752077683644505897972243194104454383660539587592661512909522658342421146502925106604274925604737137831770453668116209794384448553319347998868850802644118797513002559538458779475129707755090357256353451752557404031421270364666170725403485104701782569972328691649432865234316666312029966846097927058512541543030735139514942452730296817992409448522996998669701829936490120049828424385270787870231647742711180833664921004704408823781280515597385500403114766613417151920595723174733146634951640037612899819017853628543905791125945234931745136946085245995607283533611912631255222486593676395684866757188801970151146350424396366653119399435199013249582001087790040463805926057031240260890239747826267430811070618514436365038354583693357966243033713199969974073218040209445838235131328182751679464924282159987055890958862109166197989265192082806058460635794217986703622086053255309500093062210920932954709763571373768075947033570368059725173994648850412948133214096223251873108234172967733522234883281397750191910820591196910409483263660545053956494573336682534698048002536752489168896\n", + "209783528317985726143386993950528134509514908108758210525914846321734659351918528372627036411605677022716396908795286416419256033322648817967078365840956193983503845632987373349447320790319593608404907539342696637335504155367289011795944486388208908767321079175185323025819045316684842293005850213208549851209474275663540907336232419588768897106638695997737701605288237595026005119076917558950259415510180714512706903505114808062842540729332341450806970209403565139944657383298865730468633332624059933692195854117025083086061470279029884905460593635984818897045993997339403659872980240099656848770541575740463295485422361667329842009408817647562561031194771000806229533226834303841191446349466293269903280075225799638035707257087811582251890469863490273892170491991214567067223825262510444973187352791369733514377603940302292700848792733306238798870398026499164002175580080927611852114062480521780479495652534861622141237028872730076709167386715932486067426399939948146436080418891676470262656365503358929848564319974111781917724218332395978530384165612116921271588435973407244172106510619000186124421841865909419527142747536151894067140736119450347989297700825896266428192446503746216468345935467044469766562795500383821641182393820818966527321090107912989146673365069396096005073504978337792\n", + "419567056635971452286773987901056269019029816217516421051829692643469318703837056745254072823211354045432793817590572832838512066645297635934156731681912387967007691265974746698894641580639187216809815078685393274671008310734578023591888972776417817534642158350370646051638090633369684586011700426417099702418948551327081814672464839177537794213277391995475403210576475190052010238153835117900518831020361429025413807010229616125685081458664682901613940418807130279889314766597731460937266665248119867384391708234050166172122940558059769810921187271969637794091987994678807319745960480199313697541083151480926590970844723334659684018817635295125122062389542001612459066453668607682382892698932586539806560150451599276071414514175623164503780939726980547784340983982429134134447650525020889946374705582739467028755207880604585401697585466612477597740796052998328004351160161855223704228124961043560958991305069723244282474057745460153418334773431864972134852799879896292872160837783352940525312731006717859697128639948223563835448436664791957060768331224233842543176871946814488344213021238000372248843683731818839054285495072303788134281472238900695978595401651792532856384893007492432936691870934088939533125591000767643282364787641637933054642180215825978293346730138792192010147009956675584\n", + "839134113271942904573547975802112538038059632435032842103659385286938637407674113490508145646422708090865587635181145665677024133290595271868313463363824775934015382531949493397789283161278374433619630157370786549342016621469156047183777945552835635069284316700741292103276181266739369172023400852834199404837897102654163629344929678355075588426554783990950806421152950380104020476307670235801037662040722858050827614020459232251370162917329365803227880837614260559778629533195462921874533330496239734768783416468100332344245881116119539621842374543939275588183975989357614639491920960398627395082166302961853181941689446669319368037635270590250244124779084003224918132907337215364765785397865173079613120300903198552142829028351246329007561879453961095568681967964858268268895301050041779892749411165478934057510415761209170803395170933224955195481592105996656008702320323710447408456249922087121917982610139446488564948115490920306836669546863729944269705599759792585744321675566705881050625462013435719394257279896447127670896873329583914121536662448467685086353743893628976688426042476000744497687367463637678108570990144607576268562944477801391957190803303585065712769786014984865873383741868177879066251182001535286564729575283275866109284360431651956586693460277584384020294019913351168\n", + "1678268226543885809147095951604225076076119264870065684207318770573877274815348226981016291292845416181731175270362291331354048266581190543736626926727649551868030765063898986795578566322556748867239260314741573098684033242938312094367555891105671270138568633401482584206552362533478738344046801705668398809675794205308327258689859356710151176853109567981901612842305900760208040952615340471602075324081445716101655228040918464502740325834658731606455761675228521119557259066390925843749066660992479469537566832936200664688491762232239079243684749087878551176367951978715229278983841920797254790164332605923706363883378893338638736075270541180500488249558168006449836265814674430729531570795730346159226240601806397104285658056702492658015123758907922191137363935929716536537790602100083559785498822330957868115020831522418341606790341866449910390963184211993312017404640647420894816912499844174243835965220278892977129896230981840613673339093727459888539411199519585171488643351133411762101250924026871438788514559792894255341793746659167828243073324896935370172707487787257953376852084952001488995374734927275356217141980289215152537125888955602783914381606607170131425539572029969731746767483736355758132502364003070573129459150566551732218568720863303913173386920555168768040588039826702336\n", + "3356536453087771618294191903208450152152238529740131368414637541147754549630696453962032582585690832363462350540724582662708096533162381087473253853455299103736061530127797973591157132645113497734478520629483146197368066485876624188735111782211342540277137266802965168413104725066957476688093603411336797619351588410616654517379718713420302353706219135963803225684611801520416081905230680943204150648162891432203310456081836929005480651669317463212911523350457042239114518132781851687498133321984958939075133665872401329376983524464478158487369498175757102352735903957430458557967683841594509580328665211847412727766757786677277472150541082361000976499116336012899672531629348861459063141591460692318452481203612794208571316113404985316030247517815844382274727871859433073075581204200167119570997644661915736230041663044836683213580683732899820781926368423986624034809281294841789633824999688348487671930440557785954259792461963681227346678187454919777078822399039170342977286702266823524202501848053742877577029119585788510683587493318335656486146649793870740345414975574515906753704169904002977990749469854550712434283960578430305074251777911205567828763213214340262851079144059939463493534967472711516265004728006141146258918301133103464437137441726607826346773841110337536081176079653404672\n", + "6713072906175543236588383806416900304304477059480262736829275082295509099261392907924065165171381664726924701081449165325416193066324762174946507706910598207472123060255595947182314265290226995468957041258966292394736132971753248377470223564422685080554274533605930336826209450133914953376187206822673595238703176821233309034759437426840604707412438271927606451369223603040832163810461361886408301296325782864406620912163673858010961303338634926425823046700914084478229036265563703374996266643969917878150267331744802658753967048928956316974738996351514204705471807914860917115935367683189019160657330423694825455533515573354554944301082164722001952998232672025799345063258697722918126283182921384636904962407225588417142632226809970632060495035631688764549455743718866146151162408400334239141995289323831472460083326089673366427161367465799641563852736847973248069618562589683579267649999376696975343860881115571908519584923927362454693356374909839554157644798078340685954573404533647048405003696107485755154058239171577021367174986636671312972293299587741480690829951149031813507408339808005955981498939709101424868567921156860610148503555822411135657526426428680525702158288119878926987069934945423032530009456012282292517836602266206928874274883453215652693547682220675072162352159306809344\n", + "13426145812351086473176767612833800608608954118960525473658550164591018198522785815848130330342763329453849402162898330650832386132649524349893015413821196414944246120511191894364628530580453990937914082517932584789472265943506496754940447128845370161108549067211860673652418900267829906752374413645347190477406353642466618069518874853681209414824876543855212902738447206081664327620922723772816602592651565728813241824327347716021922606677269852851646093401828168956458072531127406749992533287939835756300534663489605317507934097857912633949477992703028409410943615829721834231870735366378038321314660847389650911067031146709109888602164329444003905996465344051598690126517395445836252566365842769273809924814451176834285264453619941264120990071263377529098911487437732292302324816800668478283990578647662944920166652179346732854322734931599283127705473695946496139237125179367158535299998753393950687721762231143817039169847854724909386712749819679108315289596156681371909146809067294096810007392214971510308116478343154042734349973273342625944586599175482961381659902298063627014816679616011911962997879418202849737135842313721220297007111644822271315052852857361051404316576239757853974139869890846065060018912024564585035673204532413857748549766906431305387095364441350144324704318613618688\n", + "26852291624702172946353535225667601217217908237921050947317100329182036397045571631696260660685526658907698804325796661301664772265299048699786030827642392829888492241022383788729257061160907981875828165035865169578944531887012993509880894257690740322217098134423721347304837800535659813504748827290694380954812707284933236139037749707362418829649753087710425805476894412163328655241845447545633205185303131457626483648654695432043845213354539705703292186803656337912916145062254813499985066575879671512601069326979210635015868195715825267898955985406056818821887231659443668463741470732756076642629321694779301822134062293418219777204328658888007811992930688103197380253034790891672505132731685538547619849628902353668570528907239882528241980142526755058197822974875464584604649633601336956567981157295325889840333304358693465708645469863198566255410947391892992278474250358734317070599997506787901375443524462287634078339695709449818773425499639358216630579192313362743818293618134588193620014784429943020616232956686308085468699946546685251889173198350965922763319804596127254029633359232023823925995758836405699474271684627442440594014223289644542630105705714722102808633152479515707948279739781692130120037824049129170071346409064827715497099533812862610774190728882700288649408637227237376\n", + "53704583249404345892707070451335202434435816475842101894634200658364072794091143263392521321371053317815397608651593322603329544530598097399572061655284785659776984482044767577458514122321815963751656330071730339157889063774025987019761788515381480644434196268847442694609675601071319627009497654581388761909625414569866472278075499414724837659299506175420851610953788824326657310483690895091266410370606262915252967297309390864087690426709079411406584373607312675825832290124509626999970133151759343025202138653958421270031736391431650535797911970812113637643774463318887336927482941465512153285258643389558603644268124586836439554408657317776015623985861376206394760506069581783345010265463371077095239699257804707337141057814479765056483960285053510116395645949750929169209299267202673913135962314590651779680666608717386931417290939726397132510821894783785984556948500717468634141199995013575802750887048924575268156679391418899637546850999278716433261158384626725487636587236269176387240029568859886041232465913372616170937399893093370503778346396701931845526639609192254508059266718464047647851991517672811398948543369254884881188028446579289085260211411429444205617266304959031415896559479563384260240075648098258340142692818129655430994199067625725221548381457765400577298817274454474752\n", + "107409166498808691785414140902670404868871632951684203789268401316728145588182286526785042642742106635630795217303186645206659089061196194799144123310569571319553968964089535154917028244643631927503312660143460678315778127548051974039523577030762961288868392537694885389219351202142639254018995309162777523819250829139732944556150998829449675318599012350841703221907577648653314620967381790182532820741212525830505934594618781728175380853418158822813168747214625351651664580249019253999940266303518686050404277307916842540063472782863301071595823941624227275287548926637774673854965882931024306570517286779117207288536249173672879108817314635552031247971722752412789521012139163566690020530926742154190479398515609414674282115628959530112967920570107020232791291899501858338418598534405347826271924629181303559361333217434773862834581879452794265021643789567571969113897001434937268282399990027151605501774097849150536313358782837799275093701998557432866522316769253450975273174472538352774480059137719772082464931826745232341874799786186741007556692793403863691053279218384509016118533436928095295703983035345622797897086738509769762376056893158578170520422822858888411234532609918062831793118959126768520480151296196516680285385636259310861988398135251450443096762915530801154597634548908949504\n", + "214818332997617383570828281805340809737743265903368407578536802633456291176364573053570085285484213271261590434606373290413318178122392389598288246621139142639107937928179070309834056489287263855006625320286921356631556255096103948079047154061525922577736785075389770778438702404285278508037990618325555047638501658279465889112301997658899350637198024701683406443815155297306629241934763580365065641482425051661011869189237563456350761706836317645626337494429250703303329160498038507999880532607037372100808554615833685080126945565726602143191647883248454550575097853275549347709931765862048613141034573558234414577072498347345758217634629271104062495943445504825579042024278327133380041061853484308380958797031218829348564231257919060225935841140214040465582583799003716676837197068810695652543849258362607118722666434869547725669163758905588530043287579135143938227794002869874536564799980054303211003548195698301072626717565675598550187403997114865733044633538506901950546348945076705548960118275439544164929863653490464683749599572373482015113385586807727382106558436769018032237066873856190591407966070691245595794173477019539524752113786317156341040845645717776822469065219836125663586237918253537040960302592393033360570771272518621723976796270502900886193525831061602309195269097817899008\n", + "429636665995234767141656563610681619475486531806736815157073605266912582352729146107140170570968426542523180869212746580826636356244784779196576493242278285278215875856358140619668112978574527710013250640573842713263112510192207896158094308123051845155473570150779541556877404808570557016075981236651110095277003316558931778224603995317798701274396049403366812887630310594613258483869527160730131282964850103322023738378475126912701523413672635291252674988858501406606658320996077015999761065214074744201617109231667370160253891131453204286383295766496909101150195706551098695419863531724097226282069147116468829154144996694691516435269258542208124991886891009651158084048556654266760082123706968616761917594062437658697128462515838120451871682280428080931165167598007433353674394137621391305087698516725214237445332869739095451338327517811177060086575158270287876455588005739749073129599960108606422007096391396602145253435131351197100374807994229731466089267077013803901092697890153411097920236550879088329859727306980929367499199144746964030226771173615454764213116873538036064474133747712381182815932141382491191588346954039079049504227572634312682081691291435553644938130439672251327172475836507074081920605184786066721141542545037243447953592541005801772387051662123204618390538195635798016\n", + "859273331990469534283313127221363238950973063613473630314147210533825164705458292214280341141936853085046361738425493161653272712489569558393152986484556570556431751712716281239336225957149055420026501281147685426526225020384415792316188616246103690310947140301559083113754809617141114032151962473302220190554006633117863556449207990635597402548792098806733625775260621189226516967739054321460262565929700206644047476756950253825403046827345270582505349977717002813213316641992154031999522130428149488403234218463334740320507782262906408572766591532993818202300391413102197390839727063448194452564138294232937658308289993389383032870538517084416249983773782019302316168097113308533520164247413937233523835188124875317394256925031676240903743364560856161862330335196014866707348788275242782610175397033450428474890665739478190902676655035622354120173150316540575752911176011479498146259199920217212844014192782793204290506870262702394200749615988459462932178534154027607802185395780306822195840473101758176659719454613961858734998398289493928060453542347230909528426233747076072128948267495424762365631864282764982383176693908078158099008455145268625364163382582871107289876260879344502654344951673014148163841210369572133442283085090074486895907185082011603544774103324246409236781076391271596032\n", + "1718546663980939068566626254442726477901946127226947260628294421067650329410916584428560682283873706170092723476850986323306545424979139116786305972969113141112863503425432562478672451914298110840053002562295370853052450040768831584632377232492207380621894280603118166227509619234282228064303924946604440381108013266235727112898415981271194805097584197613467251550521242378453033935478108642920525131859400413288094953513900507650806093654690541165010699955434005626426633283984308063999044260856298976806468436926669480641015564525812817145533183065987636404600782826204394781679454126896388905128276588465875316616579986778766065741077034168832499967547564038604632336194226617067040328494827874467047670376249750634788513850063352481807486729121712323724660670392029733414697576550485565220350794066900856949781331478956381805353310071244708240346300633081151505822352022958996292518399840434425688028385565586408581013740525404788401499231976918925864357068308055215604370791560613644391680946203516353319438909227923717469996796578987856120907084694461819056852467494152144257896534990849524731263728565529964766353387816156316198016910290537250728326765165742214579752521758689005308689903346028296327682420739144266884566170180148973791814370164023207089548206648492818473562152782543192064\n", + "3437093327961878137133252508885452955803892254453894521256588842135300658821833168857121364567747412340185446953701972646613090849958278233572611945938226282225727006850865124957344903828596221680106005124590741706104900081537663169264754464984414761243788561206236332455019238468564456128607849893208880762216026532471454225796831962542389610195168395226934503101042484756906067870956217285841050263718800826576189907027801015301612187309381082330021399910868011252853266567968616127998088521712597953612936873853338961282031129051625634291066366131975272809201565652408789563358908253792777810256553176931750633233159973557532131482154068337664999935095128077209264672388453234134080656989655748934095340752499501269577027700126704963614973458243424647449321340784059466829395153100971130440701588133801713899562662957912763610706620142489416480692601266162303011644704045917992585036799680868851376056771131172817162027481050809576802998463953837851728714136616110431208741583121227288783361892407032706638877818455847434939993593157975712241814169388923638113704934988304288515793069981699049462527457131059929532706775632312632396033820581074501456653530331484429159505043517378010617379806692056592655364841478288533769132340360297947583628740328046414179096413296985636947124305565086384128\n", + "6874186655923756274266505017770905911607784508907789042513177684270601317643666337714242729135494824680370893907403945293226181699916556467145223891876452564451454013701730249914689807657192443360212010249181483412209800163075326338529508929968829522487577122412472664910038476937128912257215699786417761524432053064942908451593663925084779220390336790453869006202084969513812135741912434571682100527437601653152379814055602030603224374618762164660042799821736022505706533135937232255996177043425195907225873747706677922564062258103251268582132732263950545618403131304817579126717816507585555620513106353863501266466319947115064262964308136675329999870190256154418529344776906468268161313979311497868190681504999002539154055400253409927229946916486849294898642681568118933658790306201942260881403176267603427799125325915825527221413240284978832961385202532324606023289408091835985170073599361737702752113542262345634324054962101619153605996927907675703457428273232220862417483166242454577566723784814065413277755636911694869879987186315951424483628338777847276227409869976608577031586139963398098925054914262119859065413551264625264792067641162149002913307060662968858319010087034756021234759613384113185310729682956577067538264680720595895167257480656092828358192826593971273894248611130172768256\n", + "13748373311847512548533010035541811823215569017815578085026355368541202635287332675428485458270989649360741787814807890586452363399833112934290447783752905128902908027403460499829379615314384886720424020498362966824419600326150652677059017859937659044975154244824945329820076953874257824514431399572835523048864106129885816903187327850169558440780673580907738012404169939027624271483824869143364201054875203306304759628111204061206448749237524329320085599643472045011413066271874464511992354086850391814451747495413355845128124516206502537164265464527901091236806262609635158253435633015171111241026212707727002532932639894230128525928616273350659999740380512308837058689553812936536322627958622995736381363009998005078308110800506819854459893832973698589797285363136237867317580612403884521762806352535206855598250651831651054442826480569957665922770405064649212046578816183671970340147198723475405504227084524691268648109924203238307211993855815351406914856546464441724834966332484909155133447569628130826555511273823389739759974372631902848967256677555694552454819739953217154063172279926796197850109828524239718130827102529250529584135282324298005826614121325937716638020174069512042469519226768226370621459365913154135076529361441191790334514961312185656716385653187942547788497222260345536512\n", + "27496746623695025097066020071083623646431138035631156170052710737082405270574665350856970916541979298721483575629615781172904726799666225868580895567505810257805816054806920999658759230628769773440848040996725933648839200652301305354118035719875318089950308489649890659640153907748515649028862799145671046097728212259771633806374655700339116881561347161815476024808339878055248542967649738286728402109750406612609519256222408122412897498475048658640171199286944090022826132543748929023984708173700783628903494990826711690256249032413005074328530929055802182473612525219270316506871266030342222482052425415454005065865279788460257051857232546701319999480761024617674117379107625873072645255917245991472762726019996010156616221601013639708919787665947397179594570726272475734635161224807769043525612705070413711196501303663302108885652961139915331845540810129298424093157632367343940680294397446950811008454169049382537296219848406476614423987711630702813829713092928883449669932664969818310266895139256261653111022547646779479519948745263805697934513355111389104909639479906434308126344559853592395700219657048479436261654205058501059168270564648596011653228242651875433276040348139024084939038453536452741242918731826308270153058722882383580669029922624371313432771306375885095576994444520691073024\n", + "54993493247390050194132040142167247292862276071262312340105421474164810541149330701713941833083958597442967151259231562345809453599332451737161791135011620515611632109613841999317518461257539546881696081993451867297678401304602610708236071439750636179900616979299781319280307815497031298057725598291342092195456424519543267612749311400678233763122694323630952049616679756110497085935299476573456804219500813225219038512444816244825794996950097317280342398573888180045652265087497858047969416347401567257806989981653423380512498064826010148657061858111604364947225050438540633013742532060684444964104850830908010131730559576920514103714465093402639998961522049235348234758215251746145290511834491982945525452039992020313232443202027279417839575331894794359189141452544951469270322449615538087051225410140827422393002607326604217771305922279830663691081620258596848186315264734687881360588794893901622016908338098765074592439696812953228847975423261405627659426185857766899339865329939636620533790278512523306222045095293558959039897490527611395869026710222778209819278959812868616252689119707184791400439314096958872523308410117002118336541129297192023306456485303750866552080696278048169878076907072905482485837463652616540306117445764767161338059845248742626865542612751770191153988889041382146048\n", + "109986986494780100388264080284334494585724552142524624680210842948329621082298661403427883666167917194885934302518463124691618907198664903474323582270023241031223264219227683998635036922515079093763392163986903734595356802609205221416472142879501272359801233958599562638560615630994062596115451196582684184390912849039086535225498622801356467526245388647261904099233359512220994171870598953146913608439001626450438077024889632489651589993900194634560684797147776360091304530174995716095938832694803134515613979963306846761024996129652020297314123716223208729894450100877081266027485064121368889928209701661816020263461119153841028207428930186805279997923044098470696469516430503492290581023668983965891050904079984040626464886404054558835679150663789588718378282905089902938540644899231076174102450820281654844786005214653208435542611844559661327382163240517193696372630529469375762721177589787803244033816676197530149184879393625906457695950846522811255318852371715533798679730659879273241067580557025046612444090190587117918079794981055222791738053420445556419638557919625737232505378239414369582800878628193917745046616820234004236673082258594384046612912970607501733104161392556096339756153814145810964971674927305233080612234891529534322676119690497485253731085225503540382307977778082764292096\n", + "219973972989560200776528160568668989171449104285049249360421685896659242164597322806855767332335834389771868605036926249383237814397329806948647164540046482062446528438455367997270073845030158187526784327973807469190713605218410442832944285759002544719602467917199125277121231261988125192230902393165368368781825698078173070450997245602712935052490777294523808198466719024441988343741197906293827216878003252900876154049779264979303179987800389269121369594295552720182609060349991432191877665389606269031227959926613693522049992259304040594628247432446417459788900201754162532054970128242737779856419403323632040526922238307682056414857860373610559995846088196941392939032861006984581162047337967931782101808159968081252929772808109117671358301327579177436756565810179805877081289798462152348204901640563309689572010429306416871085223689119322654764326481034387392745261058938751525442355179575606488067633352395060298369758787251812915391901693045622510637704743431067597359461319758546482135161114050093224888180381174235836159589962110445583476106840891112839277115839251474465010756478828739165601757256387835490093233640468008473346164517188768093225825941215003466208322785112192679512307628291621929943349854610466161224469783059068645352239380994970507462170451007080764615955556165528584192\n", + "439947945979120401553056321137337978342898208570098498720843371793318484329194645613711534664671668779543737210073852498766475628794659613897294329080092964124893056876910735994540147690060316375053568655947614938381427210436820885665888571518005089439204935834398250554242462523976250384461804786330736737563651396156346140901994491205425870104981554589047616396933438048883976687482395812587654433756006505801752308099558529958606359975600778538242739188591105440365218120699982864383755330779212538062455919853227387044099984518608081189256494864892834919577800403508325064109940256485475559712838806647264081053844476615364112829715720747221119991692176393882785878065722013969162324094675935863564203616319936162505859545616218235342716602655158354873513131620359611754162579596924304696409803281126619379144020858612833742170447378238645309528652962068774785490522117877503050884710359151212976135266704790120596739517574503625830783803386091245021275409486862135194718922639517092964270322228100186449776360762348471672319179924220891166952213681782225678554231678502948930021512957657478331203514512775670980186467280936016946692329034377536186451651882430006932416645570224385359024615256583243859886699709220932322448939566118137290704478761989941014924340902014161529231911112331057168384\n", + "879895891958240803106112642274675956685796417140196997441686743586636968658389291227423069329343337559087474420147704997532951257589319227794588658160185928249786113753821471989080295380120632750107137311895229876762854420873641771331777143036010178878409871668796501108484925047952500768923609572661473475127302792312692281803988982410851740209963109178095232793866876097767953374964791625175308867512013011603504616199117059917212719951201557076485478377182210880730436241399965728767510661558425076124911839706454774088199969037216162378512989729785669839155600807016650128219880512970951119425677613294528162107688953230728225659431441494442239983384352787765571756131444027938324648189351871727128407232639872325011719091232436470685433205310316709747026263240719223508325159193848609392819606562253238758288041717225667484340894756477290619057305924137549570981044235755006101769420718302425952270533409580241193479035149007251661567606772182490042550818973724270389437845279034185928540644456200372899552721524696943344638359848441782333904427363564451357108463357005897860043025915314956662407029025551341960372934561872033893384658068755072372903303764860013864833291140448770718049230513166487719773399418441864644897879132236274581408957523979882029848681804028323058463822224662114336768\n", + "1759791783916481606212225284549351913371592834280393994883373487173273937316778582454846138658686675118174948840295409995065902515178638455589177316320371856499572227507642943978160590760241265500214274623790459753525708841747283542663554286072020357756819743337593002216969850095905001537847219145322946950254605584625384563607977964821703480419926218356190465587733752195535906749929583250350617735024026023207009232398234119834425439902403114152970956754364421761460872482799931457535021323116850152249823679412909548176399938074432324757025979459571339678311201614033300256439761025941902238851355226589056324215377906461456451318862882988884479966768705575531143512262888055876649296378703743454256814465279744650023438182464872941370866410620633419494052526481438447016650318387697218785639213124506477516576083434451334968681789512954581238114611848275099141962088471510012203538841436604851904541066819160482386958070298014503323135213544364980085101637947448540778875690558068371857081288912400745799105443049393886689276719696883564667808854727128902714216926714011795720086051830629913324814058051102683920745869123744067786769316137510144745806607529720027729666582280897541436098461026332975439546798836883729289795758264472549162817915047959764059697363608056646116927644449324228673536\n", + "3519583567832963212424450569098703826743185668560787989766746974346547874633557164909692277317373350236349897680590819990131805030357276911178354632640743712999144455015285887956321181520482531000428549247580919507051417683494567085327108572144040715513639486675186004433939700191810003075694438290645893900509211169250769127215955929643406960839852436712380931175467504391071813499859166500701235470048052046414018464796468239668850879804806228305941913508728843522921744965599862915070042646233700304499647358825819096352799876148864649514051958919142679356622403228066600512879522051883804477702710453178112648430755812922912902637725765977768959933537411151062287024525776111753298592757407486908513628930559489300046876364929745882741732821241266838988105052962876894033300636775394437571278426249012955033152166868902669937363579025909162476229223696550198283924176943020024407077682873209703809082133638320964773916140596029006646270427088729960170203275894897081557751381116136743714162577824801491598210886098787773378553439393767129335617709454257805428433853428023591440172103661259826649628116102205367841491738247488135573538632275020289491613215059440055459333164561795082872196922052665950879093597673767458579591516528945098325635830095919528119394727216113292233855288898648457347072\n", + "7039167135665926424848901138197407653486371337121575979533493948693095749267114329819384554634746700472699795361181639980263610060714553822356709265281487425998288910030571775912642363040965062000857098495161839014102835366989134170654217144288081431027278973350372008867879400383620006151388876581291787801018422338501538254431911859286813921679704873424761862350935008782143626999718333001402470940096104092828036929592936479337701759609612456611883827017457687045843489931199725830140085292467400608999294717651638192705599752297729299028103917838285358713244806456133201025759044103767608955405420906356225296861511625845825805275451531955537919867074822302124574049051552223506597185514814973817027257861118978600093752729859491765483465642482533677976210105925753788066601273550788875142556852498025910066304333737805339874727158051818324952458447393100396567848353886040048814155365746419407618164267276641929547832281192058013292540854177459920340406551789794163115502762232273487428325155649602983196421772197575546757106878787534258671235418908515610856867706856047182880344207322519653299256232204410735682983476494976271147077264550040578983226430118880110918666329123590165744393844105331901758187195347534917159183033057890196651271660191839056238789454432226584467710577797296914694144\n", + "14078334271331852849697802276394815306972742674243151959066987897386191498534228659638769109269493400945399590722363279960527220121429107644713418530562974851996577820061143551825284726081930124001714196990323678028205670733978268341308434288576162862054557946700744017735758800767240012302777753162583575602036844677003076508863823718573627843359409746849523724701870017564287253999436666002804941880192208185656073859185872958675403519219224913223767654034915374091686979862399451660280170584934801217998589435303276385411199504595458598056207835676570717426489612912266402051518088207535217910810841812712450593723023251691651610550903063911075839734149644604249148098103104447013194371029629947634054515722237957200187505459718983530966931284965067355952420211851507576133202547101577750285113704996051820132608667475610679749454316103636649904916894786200793135696707772080097628310731492838815236328534553283859095664562384116026585081708354919840680813103579588326231005524464546974856650311299205966392843544395151093514213757575068517342470837817031221713735413712094365760688414645039306598512464408821471365966952989952542294154529100081157966452860237760221837332658247180331488787688210663803516374390695069834318366066115780393302543320383678112477578908864453168935421155594593829388288\n", + "28156668542663705699395604552789630613945485348486303918133975794772382997068457319277538218538986801890799181444726559921054440242858215289426837061125949703993155640122287103650569452163860248003428393980647356056411341467956536682616868577152325724109115893401488035471517601534480024605555506325167151204073689354006153017727647437147255686718819493699047449403740035128574507998873332005609883760384416371312147718371745917350807038438449826447535308069830748183373959724798903320560341169869602435997178870606552770822399009190917196112415671353141434852979225824532804103036176415070435821621683625424901187446046503383303221101806127822151679468299289208498296196206208894026388742059259895268109031444475914400375010919437967061933862569930134711904840423703015152266405094203155500570227409992103640265217334951221359498908632207273299809833789572401586271393415544160195256621462985677630472657069106567718191329124768232053170163416709839681361626207159176652462011048929093949713300622598411932785687088790302187028427515150137034684941675634062443427470827424188731521376829290078613197024928817642942731933905979905084588309058200162315932905720475520443674665316494360662977575376421327607032748781390139668636732132231560786605086640767356224955157817728906337870842311189187658776576\n", + "56313337085327411398791209105579261227890970696972607836267951589544765994136914638555076437077973603781598362889453119842108880485716430578853674122251899407986311280244574207301138904327720496006856787961294712112822682935913073365233737154304651448218231786802976070943035203068960049211111012650334302408147378708012306035455294874294511373437638987398094898807480070257149015997746664011219767520768832742624295436743491834701614076876899652895070616139661496366747919449597806641120682339739204871994357741213105541644798018381834392224831342706282869705958451649065608206072352830140871643243367250849802374892093006766606442203612255644303358936598578416996592392412417788052777484118519790536218062888951828800750021838875934123867725139860269423809680847406030304532810188406311001140454819984207280530434669902442718997817264414546599619667579144803172542786831088320390513242925971355260945314138213135436382658249536464106340326833419679362723252414318353304924022097858187899426601245196823865571374177580604374056855030300274069369883351268124886854941654848377463042753658580157226394049857635285885463867811959810169176618116400324631865811440951040887349330632988721325955150752842655214065497562780279337273464264463121573210173281534712449910315635457812675741684622378375317553152\n", + "112626674170654822797582418211158522455781941393945215672535903179089531988273829277110152874155947207563196725778906239684217760971432861157707348244503798815972622560489148414602277808655440992013713575922589424225645365871826146730467474308609302896436463573605952141886070406137920098422222025300668604816294757416024612070910589748589022746875277974796189797614960140514298031995493328022439535041537665485248590873486983669403228153753799305790141232279322992733495838899195613282241364679478409743988715482426211083289596036763668784449662685412565739411916903298131216412144705660281743286486734501699604749784186013533212884407224511288606717873197156833993184784824835576105554968237039581072436125777903657601500043677751868247735450279720538847619361694812060609065620376812622002280909639968414561060869339804885437995634528829093199239335158289606345085573662176640781026485851942710521890628276426270872765316499072928212680653666839358725446504828636706609848044195716375798853202490393647731142748355161208748113710060600548138739766702536249773709883309696754926085507317160314452788099715270571770927735623919620338353236232800649263731622881902081774698661265977442651910301505685310428130995125560558674546928528926243146420346563069424899820631270915625351483369244756750635106304\n", + "225253348341309645595164836422317044911563882787890431345071806358179063976547658554220305748311894415126393451557812479368435521942865722315414696489007597631945245120978296829204555617310881984027427151845178848451290731743652293460934948617218605792872927147211904283772140812275840196844444050601337209632589514832049224141821179497178045493750555949592379595229920281028596063990986656044879070083075330970497181746973967338806456307507598611580282464558645985466991677798391226564482729358956819487977430964852422166579192073527337568899325370825131478823833806596262432824289411320563486572973469003399209499568372027066425768814449022577213435746394313667986369569649671152211109936474079162144872251555807315203000087355503736495470900559441077695238723389624121218131240753625244004561819279936829122121738679609770875991269057658186398478670316579212690171147324353281562052971703885421043781256552852541745530632998145856425361307333678717450893009657273413219696088391432751597706404980787295462285496710322417496227420121201096277479533405072499547419766619393509852171014634320628905576199430541143541855471247839240676706472465601298527463245763804163549397322531954885303820603011370620856261990251121117349093857057852486292840693126138849799641262541831250702966738489513501270212608\n", + "450506696682619291190329672844634089823127765575780862690143612716358127953095317108440611496623788830252786903115624958736871043885731444630829392978015195263890490241956593658409111234621763968054854303690357696902581463487304586921869897234437211585745854294423808567544281624551680393688888101202674419265179029664098448283642358994356090987501111899184759190459840562057192127981973312089758140166150661940994363493947934677612912615015197223160564929117291970933983355596782453128965458717913638975954861929704844333158384147054675137798650741650262957647667613192524865648578822641126973145946938006798418999136744054132851537628898045154426871492788627335972739139299342304422219872948158324289744503111614630406000174711007472990941801118882155390477446779248242436262481507250488009123638559873658244243477359219541751982538115316372796957340633158425380342294648706563124105943407770842087562513105705083491061265996291712850722614667357434901786019314546826439392176782865503195412809961574590924570993420644834992454840242402192554959066810144999094839533238787019704342029268641257811152398861082287083710942495678481353412944931202597054926491527608327098794645063909770607641206022741241712523980502242234698187714115704972585681386252277699599282525083662501405933476979027002540425216\n", + "901013393365238582380659345689268179646255531151561725380287225432716255906190634216881222993247577660505573806231249917473742087771462889261658785956030390527780980483913187316818222469243527936109708607380715393805162926974609173843739794468874423171491708588847617135088563249103360787377776202405348838530358059328196896567284717988712181975002223798369518380919681124114384255963946624179516280332301323881988726987895869355225825230030394446321129858234583941867966711193564906257930917435827277951909723859409688666316768294109350275597301483300525915295335226385049731297157645282253946291893876013596837998273488108265703075257796090308853742985577254671945478278598684608844439745896316648579489006223229260812000349422014945981883602237764310780954893558496484872524963014500976018247277119747316488486954718439083503965076230632745593914681266316850760684589297413126248211886815541684175125026211410166982122531992583425701445229334714869803572038629093652878784353565731006390825619923149181849141986841289669984909680484804385109918133620289998189679066477574039408684058537282515622304797722164574167421884991356962706825889862405194109852983055216654197589290127819541215282412045482483425047961004484469396375428231409945171362772504555399198565050167325002811866953958054005080850432\n", + "1802026786730477164761318691378536359292511062303123450760574450865432511812381268433762445986495155321011147612462499834947484175542925778523317571912060781055561960967826374633636444938487055872219417214761430787610325853949218347687479588937748846342983417177695234270177126498206721574755552404810697677060716118656393793134569435977424363950004447596739036761839362248228768511927893248359032560664602647763977453975791738710451650460060788892642259716469167883735933422387129812515861834871654555903819447718819377332633536588218700551194602966601051830590670452770099462594315290564507892583787752027193675996546976216531406150515592180617707485971154509343890956557197369217688879491792633297158978012446458521624000698844029891963767204475528621561909787116992969745049926029001952036494554239494632976973909436878167007930152461265491187829362532633701521369178594826252496423773631083368350250052422820333964245063985166851402890458669429739607144077258187305757568707131462012781651239846298363698283973682579339969819360969608770219836267240579996379358132955148078817368117074565031244609595444329148334843769982713925413651779724810388219705966110433308395178580255639082430564824090964966850095922008968938792750856462819890342725545009110798397130100334650005623733907916108010161700864\n", + "3604053573460954329522637382757072718585022124606246901521148901730865023624762536867524891972990310642022295224924999669894968351085851557046635143824121562111123921935652749267272889876974111744438834429522861575220651707898436695374959177875497692685966834355390468540354252996413443149511104809621395354121432237312787586269138871954848727900008895193478073523678724496457537023855786496718065121329205295527954907951583477420903300920121577785284519432938335767471866844774259625031723669743309111807638895437638754665267073176437401102389205933202103661181340905540198925188630581129015785167575504054387351993093952433062812301031184361235414971942309018687781913114394738435377758983585266594317956024892917043248001397688059783927534408951057243123819574233985939490099852058003904072989108478989265953947818873756334015860304922530982375658725065267403042738357189652504992847547262166736700500104845640667928490127970333702805780917338859479214288154516374611515137414262924025563302479692596727396567947365158679939638721939217540439672534481159992758716265910296157634736234149130062489219190888658296669687539965427850827303559449620776439411932220866616790357160511278164861129648181929933700191844017937877585501712925639780685451090018221596794260200669300011247467815832216020323401728\n", + "7208107146921908659045274765514145437170044249212493803042297803461730047249525073735049783945980621284044590449849999339789936702171703114093270287648243124222247843871305498534545779753948223488877668859045723150441303415796873390749918355750995385371933668710780937080708505992826886299022209619242790708242864474625575172538277743909697455800017790386956147047357448992915074047711572993436130242658410591055909815903166954841806601840243155570569038865876671534943733689548519250063447339486618223615277790875277509330534146352874802204778411866404207322362681811080397850377261162258031570335151008108774703986187904866125624602062368722470829943884618037375563826228789476870755517967170533188635912049785834086496002795376119567855068817902114486247639148467971878980199704116007808145978216957978531907895637747512668031720609845061964751317450130534806085476714379305009985695094524333473401000209691281335856980255940667405611561834677718958428576309032749223030274828525848051126604959385193454793135894730317359879277443878435080879345068962319985517432531820592315269472468298260124978438381777316593339375079930855701654607118899241552878823864441733233580714321022556329722259296363859867400383688035875755171003425851279561370902180036443193588520401338600022494935631664432040646803456\n", + "14416214293843817318090549531028290874340088498424987606084595606923460094499050147470099567891961242568089180899699998679579873404343406228186540575296486248444495687742610997069091559507896446977755337718091446300882606831593746781499836711501990770743867337421561874161417011985653772598044419238485581416485728949251150345076555487819394911600035580773912294094714897985830148095423145986872260485316821182111819631806333909683613203680486311141138077731753343069887467379097038500126894678973236447230555581750555018661068292705749604409556823732808414644725363622160795700754522324516063140670302016217549407972375809732251249204124737444941659887769236074751127652457578953741511035934341066377271824099571668172992005590752239135710137635804228972495278296935943757960399408232015616291956433915957063815791275495025336063441219690123929502634900261069612170953428758610019971390189048666946802000419382562671713960511881334811223123669355437916857152618065498446060549657051696102253209918770386909586271789460634719758554887756870161758690137924639971034865063641184630538944936596520249956876763554633186678750159861711403309214237798483105757647728883466467161428642045112659444518592727719734800767376071751510342006851702559122741804360072886387177040802677200044989871263328864081293606912\n", + "28832428587687634636181099062056581748680176996849975212169191213846920188998100294940199135783922485136178361799399997359159746808686812456373081150592972496888991375485221994138183119015792893955510675436182892601765213663187493562999673423003981541487734674843123748322834023971307545196088838476971162832971457898502300690153110975638789823200071161547824588189429795971660296190846291973744520970633642364223639263612667819367226407360972622282276155463506686139774934758194077000253789357946472894461111163501110037322136585411499208819113647465616829289450727244321591401509044649032126281340604032435098815944751619464502498408249474889883319775538472149502255304915157907483022071868682132754543648199143336345984011181504478271420275271608457944990556593871887515920798816464031232583912867831914127631582550990050672126882439380247859005269800522139224341906857517220039942780378097333893604000838765125343427921023762669622446247338710875833714305236130996892121099314103392204506419837540773819172543578921269439517109775513740323517380275849279942069730127282369261077889873193040499913753527109266373357500319723422806618428475596966211515295457766932934322857284090225318889037185455439469601534752143503020684013703405118245483608720145772774354081605354400089979742526657728162587213824\n", + "57664857175375269272362198124113163497360353993699950424338382427693840377996200589880398271567844970272356723598799994718319493617373624912746162301185944993777982750970443988276366238031585787911021350872365785203530427326374987125999346846007963082975469349686247496645668047942615090392177676953942325665942915797004601380306221951277579646400142323095649176378859591943320592381692583947489041941267284728447278527225335638734452814721945244564552310927013372279549869516388154000507578715892945788922222327002220074644273170822998417638227294931233658578901454488643182803018089298064252562681208064870197631889503238929004996816498949779766639551076944299004510609830315814966044143737364265509087296398286672691968022363008956542840550543216915889981113187743775031841597632928062465167825735663828255263165101980101344253764878760495718010539601044278448683813715034440079885560756194667787208001677530250686855842047525339244892494677421751667428610472261993784242198628206784409012839675081547638345087157842538879034219551027480647034760551698559884139460254564738522155779746386080999827507054218532746715000639446845613236856951193932423030590915533865868645714568180450637778074370910878939203069504287006041368027406810236490967217440291545548708163210708800179959485053315456325174427648\n", + "115329714350750538544724396248226326994720707987399900848676764855387680755992401179760796543135689940544713447197599989436638987234747249825492324602371889987555965501940887976552732476063171575822042701744731570407060854652749974251998693692015926165950938699372494993291336095885230180784355353907884651331885831594009202760612443902555159292800284646191298352757719183886641184763385167894978083882534569456894557054450671277468905629443890489129104621854026744559099739032776308001015157431785891577844444654004440149288546341645996835276454589862467317157802908977286365606036178596128505125362416129740395263779006477858009993632997899559533279102153888598009021219660631629932088287474728531018174592796573345383936044726017913085681101086433831779962226375487550063683195265856124930335651471327656510526330203960202688507529757520991436021079202088556897367627430068880159771121512389335574416003355060501373711684095050678489784989354843503334857220944523987568484397256413568818025679350163095276690174315685077758068439102054961294069521103397119768278920509129477044311559492772161999655014108437065493430001278893691226473713902387864846061181831067731737291429136360901275556148741821757878406139008574012082736054813620472981934434880583091097416326421417600359918970106630912650348855296\n", + "230659428701501077089448792496452653989441415974799801697353529710775361511984802359521593086271379881089426894395199978873277974469494499650984649204743779975111931003881775953105464952126343151644085403489463140814121709305499948503997387384031852331901877398744989986582672191770460361568710707815769302663771663188018405521224887805110318585600569292382596705515438367773282369526770335789956167765069138913789114108901342554937811258887780978258209243708053489118199478065552616002030314863571783155688889308008880298577092683291993670552909179724934634315605817954572731212072357192257010250724832259480790527558012955716019987265995799119066558204307777196018042439321263259864176574949457062036349185593146690767872089452035826171362202172867663559924452750975100127366390531712249860671302942655313021052660407920405377015059515041982872042158404177113794735254860137760319542243024778671148832006710121002747423368190101356979569978709687006669714441889047975136968794512827137636051358700326190553380348631370155516136878204109922588139042206794239536557841018258954088623118985544323999310028216874130986860002557787382452947427804775729692122363662135463474582858272721802551112297483643515756812278017148024165472109627240945963868869761166182194832652842835200719837940213261825300697710592\n", + "461318857403002154178897584992905307978882831949599603394707059421550723023969604719043186172542759762178853788790399957746555948938988999301969298409487559950223862007763551906210929904252686303288170806978926281628243418610999897007994774768063704663803754797489979973165344383540920723137421415631538605327543326376036811042449775610220637171201138584765193411030876735546564739053540671579912335530138277827578228217802685109875622517775561956516418487416106978236398956131105232004060629727143566311377778616017760597154185366583987341105818359449869268631211635909145462424144714384514020501449664518961581055116025911432039974531991598238133116408615554392036084878642526519728353149898914124072698371186293381535744178904071652342724404345735327119848905501950200254732781063424499721342605885310626042105320815840810754030119030083965744084316808354227589470509720275520639084486049557342297664013420242005494846736380202713959139957419374013339428883778095950273937589025654275272102717400652381106760697262740311032273756408219845176278084413588479073115682036517908177246237971088647998620056433748261973720005115574764905894855609551459384244727324270926949165716545443605102224594967287031513624556034296048330944219254481891927737739522332364389665305685670401439675880426523650601395421184\n", + "922637714806004308357795169985810615957765663899199206789414118843101446047939209438086372345085519524357707577580799915493111897877977998603938596818975119900447724015527103812421859808505372606576341613957852563256486837221999794015989549536127409327607509594979959946330688767081841446274842831263077210655086652752073622084899551220441274342402277169530386822061753471093129478107081343159824671060276555655156456435605370219751245035551123913032836974832213956472797912262210464008121259454287132622755557232035521194308370733167974682211636718899738537262423271818290924848289428769028041002899329037923162110232051822864079949063983196476266232817231108784072169757285053039456706299797828248145396742372586763071488357808143304685448808691470654239697811003900400509465562126848999442685211770621252084210641631681621508060238060167931488168633616708455178941019440551041278168972099114684595328026840484010989693472760405427918279914838748026678857767556191900547875178051308550544205434801304762213521394525480622064547512816439690352556168827176958146231364073035816354492475942177295997240112867496523947440010231149529811789711219102918768489454648541853898331433090887210204449189934574063027249112068592096661888438508963783855475479044664728779330611371340802879351760853047301202790842368\n", + "1845275429612008616715590339971621231915531327798398413578828237686202892095878418876172744690171039048715415155161599830986223795755955997207877193637950239800895448031054207624843719617010745213152683227915705126512973674443999588031979099072254818655215019189959919892661377534163682892549685662526154421310173305504147244169799102440882548684804554339060773644123506942186258956214162686319649342120553111310312912871210740439502490071102247826065673949664427912945595824524420928016242518908574265245511114464071042388616741466335949364423273437799477074524846543636581849696578857538056082005798658075846324220464103645728159898127966392952532465634462217568144339514570106078913412599595656496290793484745173526142976715616286609370897617382941308479395622007800801018931124253697998885370423541242504168421283263363243016120476120335862976337267233416910357882038881102082556337944198229369190656053680968021979386945520810855836559829677496053357715535112383801095750356102617101088410869602609524427042789050961244129095025632879380705112337654353916292462728146071632708984951884354591994480225734993047894880020462299059623579422438205837536978909297083707796662866181774420408898379869148126054498224137184193323776877017927567710950958089329457558661222742681605758703521706094602405581684736\n", + "3690550859224017233431180679943242463831062655596796827157656475372405784191756837752345489380342078097430830310323199661972447591511911994415754387275900479601790896062108415249687439234021490426305366455831410253025947348887999176063958198144509637310430038379919839785322755068327365785099371325052308842620346611008294488339598204881765097369609108678121547288247013884372517912428325372639298684241106222620625825742421480879004980142204495652131347899328855825891191649048841856032485037817148530491022228928142084777233482932671898728846546875598954149049693087273163699393157715076112164011597316151692648440928207291456319796255932785905064931268924435136288679029140212157826825199191312992581586969490347052285953431232573218741795234765882616958791244015601602037862248507395997770740847082485008336842566526726486032240952240671725952674534466833820715764077762204165112675888396458738381312107361936043958773891041621711673119659354992106715431070224767602191500712205234202176821739205219048854085578101922488258190051265758761410224675308707832584925456292143265417969903768709183988960451469986095789760040924598119247158844876411675073957818594167415593325732363548840817796759738296252108996448274368386647553754035855135421901916178658915117322445485363211517407043412189204811163369472\n", + "7381101718448034466862361359886484927662125311193593654315312950744811568383513675504690978760684156194861660620646399323944895183023823988831508774551800959203581792124216830499374878468042980852610732911662820506051894697775998352127916396289019274620860076759839679570645510136654731570198742650104617685240693222016588976679196409763530194739218217356243094576494027768745035824856650745278597368482212445241251651484842961758009960284408991304262695798657711651782383298097683712064970075634297060982044457856284169554466965865343797457693093751197908298099386174546327398786315430152224328023194632303385296881856414582912639592511865571810129862537848870272577358058280424315653650398382625985163173938980694104571906862465146437483590469531765233917582488031203204075724497014791995541481694164970016673685133053452972064481904481343451905349068933667641431528155524408330225351776792917476762624214723872087917547782083243423346239318709984213430862140449535204383001424410468404353643478410438097708171156203844976516380102531517522820449350617415665169850912584286530835939807537418367977920902939972191579520081849196238494317689752823350147915637188334831186651464727097681635593519476592504217992896548736773295107508071710270843803832357317830234644890970726423034814086824378409622326738944\n", + "14762203436896068933724722719772969855324250622387187308630625901489623136767027351009381957521368312389723321241292798647889790366047647977663017549103601918407163584248433660998749756936085961705221465823325641012103789395551996704255832792578038549241720153519679359141291020273309463140397485300209235370481386444033177953358392819527060389478436434712486189152988055537490071649713301490557194736964424890482503302969685923516019920568817982608525391597315423303564766596195367424129940151268594121964088915712568339108933931730687594915386187502395816596198772349092654797572630860304448656046389264606770593763712829165825279185023731143620259725075697740545154716116560848631307300796765251970326347877961388209143813724930292874967180939063530467835164976062406408151448994029583991082963388329940033347370266106905944128963808962686903810698137867335282863056311048816660450703553585834953525248429447744175835095564166486846692478637419968426861724280899070408766002848820936808707286956820876195416342312407689953032760205063035045640898701234831330339701825168573061671879615074836735955841805879944383159040163698392476988635379505646700295831274376669662373302929454195363271187038953185008435985793097473546590215016143420541687607664714635660469289781941452846069628173648756819244653477888\n", + "29524406873792137867449445439545939710648501244774374617261251802979246273534054702018763915042736624779446642482585597295779580732095295955326035098207203836814327168496867321997499513872171923410442931646651282024207578791103993408511665585156077098483440307039358718282582040546618926280794970600418470740962772888066355906716785639054120778956872869424972378305976111074980143299426602981114389473928849780965006605939371847032039841137635965217050783194630846607129533192390734848259880302537188243928177831425136678217867863461375189830772375004791633192397544698185309595145261720608897312092778529213541187527425658331650558370047462287240519450151395481090309432233121697262614601593530503940652695755922776418287627449860585749934361878127060935670329952124812816302897988059167982165926776659880066694740532213811888257927617925373807621396275734670565726112622097633320901407107171669907050496858895488351670191128332973693384957274839936853723448561798140817532005697641873617414573913641752390832684624815379906065520410126070091281797402469662660679403650337146123343759230149673471911683611759888766318080327396784953977270759011293400591662548753339324746605858908390726542374077906370016871971586194947093180430032286841083375215329429271320938579563882905692139256347297513638489306955776\n", + "59048813747584275734898890879091879421297002489548749234522503605958492547068109404037527830085473249558893284965171194591559161464190591910652070196414407673628654336993734643994999027744343846820885863293302564048415157582207986817023331170312154196966880614078717436565164081093237852561589941200836941481925545776132711813433571278108241557913745738849944756611952222149960286598853205962228778947857699561930013211878743694064079682275271930434101566389261693214259066384781469696519760605074376487856355662850273356435735726922750379661544750009583266384795089396370619190290523441217794624185557058427082375054851316663301116740094924574481038900302790962180618864466243394525229203187061007881305391511845552836575254899721171499868723756254121871340659904249625632605795976118335964331853553319760133389481064427623776515855235850747615242792551469341131452225244195266641802814214343339814100993717790976703340382256665947386769914549679873707446897123596281635064011395283747234829147827283504781665369249630759812131040820252140182563594804939325321358807300674292246687518460299346943823367223519777532636160654793569907954541518022586801183325097506678649493211717816781453084748155812740033743943172389894186360860064573682166750430658858542641877159127765811384278512694595027276978613911552\n", + "118097627495168551469797781758183758842594004979097498469045007211916985094136218808075055660170946499117786569930342389183118322928381183821304140392828815347257308673987469287989998055488687693641771726586605128096830315164415973634046662340624308393933761228157434873130328162186475705123179882401673882963851091552265423626867142556216483115827491477699889513223904444299920573197706411924457557895715399123860026423757487388128159364550543860868203132778523386428518132769562939393039521210148752975712711325700546712871471453845500759323089500019166532769590178792741238380581046882435589248371114116854164750109702633326602233480189849148962077800605581924361237728932486789050458406374122015762610783023691105673150509799442342999737447512508243742681319808499251265211591952236671928663707106639520266778962128855247553031710471701495230485585102938682262904450488390533283605628428686679628201987435581953406680764513331894773539829099359747414893794247192563270128022790567494469658295654567009563330738499261519624262081640504280365127189609878650642717614601348584493375036920598693887646734447039555065272321309587139815909083036045173602366650195013357298986423435633562906169496311625480067487886344779788372721720129147364333500861317717085283754318255531622768557025389190054553957227823104\n", + "236195254990337102939595563516367517685188009958194996938090014423833970188272437616150111320341892998235573139860684778366236645856762367642608280785657630694514617347974938575979996110977375387283543453173210256193660630328831947268093324681248616787867522456314869746260656324372951410246359764803347765927702183104530847253734285112432966231654982955399779026447808888599841146395412823848915115791430798247720052847514974776256318729101087721736406265557046772857036265539125878786079042420297505951425422651401093425742942907691001518646179000038333065539180357585482476761162093764871178496742228233708329500219405266653204466960379698297924155601211163848722475457864973578100916812748244031525221566047382211346301019598884685999474895025016487485362639616998502530423183904473343857327414213279040533557924257710495106063420943402990460971170205877364525808900976781066567211256857373359256403974871163906813361529026663789547079658198719494829787588494385126540256045581134988939316591309134019126661476998523039248524163281008560730254379219757301285435229202697168986750073841197387775293468894079110130544642619174279631818166072090347204733300390026714597972846871267125812338992623250960134975772689559576745443440258294728667001722635434170567508636511063245537114050778380109107914455646208\n", + "472390509980674205879191127032735035370376019916389993876180028847667940376544875232300222640683785996471146279721369556732473291713524735285216561571315261389029234695949877151959992221954750774567086906346420512387321260657663894536186649362497233575735044912629739492521312648745902820492719529606695531855404366209061694507468570224865932463309965910799558052895617777199682292790825647697830231582861596495440105695029949552512637458202175443472812531114093545714072531078251757572158084840595011902850845302802186851485885815382003037292358000076666131078360715170964953522324187529742356993484456467416659000438810533306408933920759396595848311202422327697444950915729947156201833625496488063050443132094764422692602039197769371998949790050032974970725279233997005060846367808946687714654828426558081067115848515420990212126841886805980921942340411754729051617801953562133134422513714746718512807949742327813626723058053327579094159316397438989659575176988770253080512091162269977878633182618268038253322953997046078497048326562017121460508758439514602570870458405394337973500147682394775550586937788158220261089285238348559263636332144180694409466600780053429195945693742534251624677985246501920269951545379119153490886880516589457334003445270868341135017273022126491074228101556760218215828911292416\n", + "944781019961348411758382254065470070740752039832779987752360057695335880753089750464600445281367571992942292559442739113464946583427049470570433123142630522778058469391899754303919984443909501549134173812692841024774642521315327789072373298724994467151470089825259478985042625297491805640985439059213391063710808732418123389014937140449731864926619931821599116105791235554399364585581651295395660463165723192990880211390059899105025274916404350886945625062228187091428145062156503515144316169681190023805701690605604373702971771630764006074584716000153332262156721430341929907044648375059484713986968912934833318000877621066612817867841518793191696622404844655394889901831459894312403667250992976126100886264189528845385204078395538743997899580100065949941450558467994010121692735617893375429309656853116162134231697030841980424253683773611961843884680823509458103235603907124266268845027429493437025615899484655627253446116106655158188318632794877979319150353977540506161024182324539955757266365236536076506645907994092156994096653124034242921017516879029205141740916810788675947000295364789551101173875576316440522178570476697118527272664288361388818933201560106858391891387485068503249355970493003840539903090758238306981773761033178914668006890541736682270034546044252982148456203113520436431657822584832\n", + "1889562039922696823516764508130940141481504079665559975504720115390671761506179500929200890562735143985884585118885478226929893166854098941140866246285261045556116938783799508607839968887819003098268347625385682049549285042630655578144746597449988934302940179650518957970085250594983611281970878118426782127421617464836246778029874280899463729853239863643198232211582471108798729171163302590791320926331446385981760422780119798210050549832808701773891250124456374182856290124313007030288632339362380047611403381211208747405943543261528012149169432000306664524313442860683859814089296750118969427973937825869666636001755242133225635735683037586383393244809689310789779803662919788624807334501985952252201772528379057690770408156791077487995799160200131899882901116935988020243385471235786750858619313706232324268463394061683960848507367547223923687769361647018916206471207814248532537690054858986874051231798969311254506892232213310316376637265589755958638300707955081012322048364649079911514532730473072153013291815988184313988193306248068485842035033758058410283481833621577351894000590729579102202347751152632881044357140953394237054545328576722777637866403120213716783782774970137006498711940986007681079806181516476613963547522066357829336013781083473364540069092088505964296912406227040872863315645169664\n", + "3779124079845393647033529016261880282963008159331119951009440230781343523012359001858401781125470287971769170237770956453859786333708197882281732492570522091112233877567599017215679937775638006196536695250771364099098570085261311156289493194899977868605880359301037915940170501189967222563941756236853564254843234929672493556059748561798927459706479727286396464423164942217597458342326605181582641852662892771963520845560239596420101099665617403547782500248912748365712580248626014060577264678724760095222806762422417494811887086523056024298338864000613329048626885721367719628178593500237938855947875651739333272003510484266451271471366075172766786489619378621579559607325839577249614669003971904504403545056758115381540816313582154975991598320400263799765802233871976040486770942471573501717238627412464648536926788123367921697014735094447847375538723294037832412942415628497065075380109717973748102463597938622509013784464426620632753274531179511917276601415910162024644096729298159823029065460946144306026583631976368627976386612496136971684070067516116820566963667243154703788001181459158204404695502305265762088714281906788474109090657153445555275732806240427433567565549940274012997423881972015362159612363032953227927095044132715658672027562166946729080138184177011928593824812454081745726631290339328\n", + "7558248159690787294067058032523760565926016318662239902018880461562687046024718003716803562250940575943538340475541912907719572667416395764563464985141044182224467755135198034431359875551276012393073390501542728198197140170522622312578986389799955737211760718602075831880341002379934445127883512473707128509686469859344987112119497123597854919412959454572792928846329884435194916684653210363165283705325785543927041691120479192840202199331234807095565000497825496731425160497252028121154529357449520190445613524844834989623774173046112048596677728001226658097253771442735439256357187000475877711895751303478666544007020968532902542942732150345533572979238757243159119214651679154499229338007943809008807090113516230763081632627164309951983196640800527599531604467743952080973541884943147003434477254824929297073853576246735843394029470188895694751077446588075664825884831256994130150760219435947496204927195877245018027568928853241265506549062359023834553202831820324049288193458596319646058130921892288612053167263952737255952773224992273943368140135032233641133927334486309407576002362918316408809391004610531524177428563813576948218181314306891110551465612480854867135131099880548025994847763944030724319224726065906455854190088265431317344055124333893458160276368354023857187649624908163491453262580678656\n", + "15116496319381574588134116065047521131852032637324479804037760923125374092049436007433607124501881151887076680951083825815439145334832791529126929970282088364448935510270396068862719751102552024786146781003085456396394280341045244625157972779599911474423521437204151663760682004759868890255767024947414257019372939718689974224238994247195709838825918909145585857692659768870389833369306420726330567410651571087854083382240958385680404398662469614191130000995650993462850320994504056242309058714899040380891227049689669979247548346092224097193355456002453316194507542885470878512714374000951755423791502606957333088014041937065805085885464300691067145958477514486318238429303358308998458676015887618017614180227032461526163265254328619903966393281601055199063208935487904161947083769886294006868954509649858594147707152493471686788058940377791389502154893176151329651769662513988260301520438871894992409854391754490036055137857706482531013098124718047669106405663640648098576386917192639292116261843784577224106334527905474511905546449984547886736280270064467282267854668972618815152004725836632817618782009221063048354857127627153896436362628613782221102931224961709734270262199761096051989695527888061448638449452131812911708380176530862634688110248667786916320552736708047714375299249816326982906525161357312\n", + "30232992638763149176268232130095042263704065274648959608075521846250748184098872014867214249003762303774153361902167651630878290669665583058253859940564176728897871020540792137725439502205104049572293562006170912792788560682090489250315945559199822948847042874408303327521364009519737780511534049894828514038745879437379948448477988494391419677651837818291171715385319537740779666738612841452661134821303142175708166764481916771360808797324939228382260001991301986925700641989008112484618117429798080761782454099379339958495096692184448194386710912004906632389015085770941757025428748001903510847583005213914666176028083874131610171770928601382134291916955028972636476858606716617996917352031775236035228360454064923052326530508657239807932786563202110398126417870975808323894167539772588013737909019299717188295414304986943373576117880755582779004309786352302659303539325027976520603040877743789984819708783508980072110275715412965062026196249436095338212811327281296197152773834385278584232523687569154448212669055810949023811092899969095773472560540128934564535709337945237630304009451673265635237564018442126096709714255254307792872725257227564442205862449923419468540524399522192103979391055776122897276898904263625823416760353061725269376220497335573832641105473416095428750598499632653965813050322714624\n", + "60465985277526298352536464260190084527408130549297919216151043692501496368197744029734428498007524607548306723804335303261756581339331166116507719881128353457795742041081584275450879004410208099144587124012341825585577121364180978500631891118399645897694085748816606655042728019039475561023068099789657028077491758874759896896955976988782839355303675636582343430770639075481559333477225682905322269642606284351416333528963833542721617594649878456764520003982603973851401283978016224969236234859596161523564908198758679916990193384368896388773421824009813264778030171541883514050857496003807021695166010427829332352056167748263220343541857202764268583833910057945272953717213433235993834704063550472070456720908129846104653061017314479615865573126404220796252835741951616647788335079545176027475818038599434376590828609973886747152235761511165558008619572704605318607078650055953041206081755487579969639417567017960144220551430825930124052392498872190676425622654562592394305547668770557168465047375138308896425338111621898047622185799938191546945121080257869129071418675890475260608018903346531270475128036884252193419428510508615585745450514455128884411724899846838937081048799044384207958782111552245794553797808527251646833520706123450538752440994671147665282210946832190857501196999265307931626100645429248\n", + "120931970555052596705072928520380169054816261098595838432302087385002992736395488059468856996015049215096613447608670606523513162678662332233015439762256706915591484082163168550901758008820416198289174248024683651171154242728361957001263782236799291795388171497633213310085456038078951122046136199579314056154983517749519793793911953977565678710607351273164686861541278150963118666954451365810644539285212568702832667057927667085443235189299756913529040007965207947702802567956032449938472469719192323047129816397517359833980386768737792777546843648019626529556060343083767028101714992007614043390332020855658664704112335496526440687083714405528537167667820115890545907434426866471987669408127100944140913441816259692209306122034628959231731146252808441592505671483903233295576670159090352054951636077198868753181657219947773494304471523022331116017239145409210637214157300111906082412163510975159939278835134035920288441102861651860248104784997744381352851245309125184788611095337541114336930094750276617792850676223243796095244371599876383093890242160515738258142837351780950521216037806693062540950256073768504386838857021017231171490901028910257768823449799693677874162097598088768415917564223104491589107595617054503293667041412246901077504881989342295330564421893664381715002393998530615863252201290858496\n", + "241863941110105193410145857040760338109632522197191676864604174770005985472790976118937713992030098430193226895217341213047026325357324664466030879524513413831182968164326337101803516017640832396578348496049367302342308485456723914002527564473598583590776342995266426620170912076157902244092272399158628112309967035499039587587823907955131357421214702546329373723082556301926237333908902731621289078570425137405665334115855334170886470378599513827058080015930415895405605135912064899876944939438384646094259632795034719667960773537475585555093687296039253059112120686167534056203429984015228086780664041711317329408224670993052881374167428811057074335335640231781091814868853732943975338816254201888281826883632519384418612244069257918463462292505616883185011342967806466591153340318180704109903272154397737506363314439895546988608943046044662232034478290818421274428314600223812164824327021950319878557670268071840576882205723303720496209569995488762705702490618250369577222190675082228673860189500553235585701352446487592190488743199752766187780484321031476516285674703561901042432075613386125081900512147537008773677714042034462342981802057820515537646899599387355748324195196177536831835128446208983178215191234109006587334082824493802155009763978684590661128843787328763430004787997061231726504402581716992\n", + "483727882220210386820291714081520676219265044394383353729208349540011970945581952237875427984060196860386453790434682426094052650714649328932061759049026827662365936328652674203607032035281664793156696992098734604684616970913447828005055128947197167181552685990532853240341824152315804488184544798317256224619934070998079175175647815910262714842429405092658747446165112603852474667817805463242578157140850274811330668231710668341772940757199027654116160031860831790811210271824129799753889878876769292188519265590069439335921547074951171110187374592078506118224241372335068112406859968030456173561328083422634658816449341986105762748334857622114148670671280463562183629737707465887950677632508403776563653767265038768837224488138515836926924585011233766370022685935612933182306680636361408219806544308795475012726628879791093977217886092089324464068956581636842548856629200447624329648654043900639757115340536143681153764411446607440992419139990977525411404981236500739154444381350164457347720379001106471171402704892975184380977486399505532375560968642062953032571349407123802084864151226772250163801024295074017547355428084068924685963604115641031075293799198774711496648390392355073663670256892417966356430382468218013174668165648987604310019527957369181322257687574657526860009575994122463453008805163433984\n", + "967455764440420773640583428163041352438530088788766707458416699080023941891163904475750855968120393720772907580869364852188105301429298657864123518098053655324731872657305348407214064070563329586313393984197469209369233941826895656010110257894394334363105371981065706480683648304631608976369089596634512449239868141996158350351295631820525429684858810185317494892330225207704949335635610926485156314281700549622661336463421336683545881514398055308232320063721663581622420543648259599507779757753538584377038531180138878671843094149902342220374749184157012236448482744670136224813719936060912347122656166845269317632898683972211525496669715244228297341342560927124367259475414931775901355265016807553127307534530077537674448976277031673853849170022467532740045371871225866364613361272722816439613088617590950025453257759582187954435772184178648928137913163273685097713258400895248659297308087801279514230681072287362307528822893214881984838279981955050822809962473001478308888762700328914695440758002212942342805409785950368761954972799011064751121937284125906065142698814247604169728302453544500327602048590148035094710856168137849371927208231282062150587598397549422993296780784710147327340513784835932712860764936436026349336331297975208620039055914738362644515375149315053720019151988244926906017610326867968\n", + "1934911528880841547281166856326082704877060177577533414916833398160047883782327808951501711936240787441545815161738729704376210602858597315728247036196107310649463745314610696814428128141126659172626787968394938418738467883653791312020220515788788668726210743962131412961367296609263217952738179193269024898479736283992316700702591263641050859369717620370634989784660450415409898671271221852970312628563401099245322672926842673367091763028796110616464640127443327163244841087296519199015559515507077168754077062360277757343686188299804684440749498368314024472896965489340272449627439872121824694245312333690538635265797367944423050993339430488456594682685121854248734518950829863551802710530033615106254615069060155075348897952554063347707698340044935065480090743742451732729226722545445632879226177235181900050906515519164375908871544368357297856275826326547370195426516801790497318594616175602559028461362144574724615057645786429763969676559963910101645619924946002956617777525400657829390881516004425884685610819571900737523909945598022129502243874568251812130285397628495208339456604907089000655204097180296070189421712336275698743854416462564124301175196795098845986593561569420294654681027569671865425721529872872052698672662595950417240078111829476725289030750298630107440038303976489853812035220653735936\n", + "3869823057761683094562333712652165409754120355155066829833666796320095767564655617903003423872481574883091630323477459408752421205717194631456494072392214621298927490629221393628856256282253318345253575936789876837476935767307582624040441031577577337452421487924262825922734593218526435905476358386538049796959472567984633401405182527282101718739435240741269979569320900830819797342542443705940625257126802198490645345853685346734183526057592221232929280254886654326489682174593038398031119031014154337508154124720555514687372376599609368881498996736628048945793930978680544899254879744243649388490624667381077270531594735888846101986678860976913189365370243708497469037901659727103605421060067230212509230138120310150697795905108126695415396680089870130960181487484903465458453445090891265758452354470363800101813031038328751817743088736714595712551652653094740390853033603580994637189232351205118056922724289149449230115291572859527939353119927820203291239849892005913235555050801315658781763032008851769371221639143801475047819891196044259004487749136503624260570795256990416678913209814178001310408194360592140378843424672551397487708832925128248602350393590197691973187123138840589309362055139343730851443059745744105397345325191900834480156223658953450578061500597260214880076607952979707624070441307471872\n", + "7739646115523366189124667425304330819508240710310133659667333592640191535129311235806006847744963149766183260646954918817504842411434389262912988144784429242597854981258442787257712512564506636690507151873579753674953871534615165248080882063155154674904842975848525651845469186437052871810952716773076099593918945135969266802810365054564203437478870481482539959138641801661639594685084887411881250514253604396981290691707370693468367052115184442465858560509773308652979364349186076796062238062028308675016308249441111029374744753199218737762997993473256097891587861957361089798509759488487298776981249334762154541063189471777692203973357721953826378730740487416994938075803319454207210842120134460425018460276240620301395591810216253390830793360179740261920362974969806930916906890181782531516904708940727600203626062076657503635486177473429191425103305306189480781706067207161989274378464702410236113845448578298898460230583145719055878706239855640406582479699784011826471110101602631317563526064017703538742443278287602950095639782392088518008975498273007248521141590513980833357826419628356002620816388721184280757686849345102794975417665850256497204700787180395383946374246277681178618724110278687461702886119491488210794690650383801668960312447317906901156123001194520429760153215905959415248140882614943744\n", + "15479292231046732378249334850608661639016481420620267319334667185280383070258622471612013695489926299532366521293909837635009684822868778525825976289568858485195709962516885574515425025129013273381014303747159507349907743069230330496161764126310309349809685951697051303690938372874105743621905433546152199187837890271938533605620730109128406874957740962965079918277283603323279189370169774823762501028507208793962581383414741386936734104230368884931717121019546617305958728698372153592124476124056617350032616498882222058749489506398437475525995986946512195783175723914722179597019518976974597553962498669524309082126378943555384407946715443907652757461480974833989876151606638908414421684240268920850036920552481240602791183620432506781661586720359480523840725949939613861833813780363565063033809417881455200407252124153315007270972354946858382850206610612378961563412134414323978548756929404820472227690897156597796920461166291438111757412479711280813164959399568023652942220203205262635127052128035407077484886556575205900191279564784177036017950996546014497042283181027961666715652839256712005241632777442368561515373698690205589950835331700512994409401574360790767892748492555362357237448220557374923405772238982976421589381300767603337920624894635813802312246002389040859520306431811918830496281765229887488\n", + "30958584462093464756498669701217323278032962841240534638669334370560766140517244943224027390979852599064733042587819675270019369645737557051651952579137716970391419925033771149030850050258026546762028607494319014699815486138460660992323528252620618699619371903394102607381876745748211487243810867092304398375675780543877067211241460218256813749915481925930159836554567206646558378740339549647525002057014417587925162766829482773873468208460737769863434242039093234611917457396744307184248952248113234700065232997764444117498979012796874951051991973893024391566351447829444359194039037953949195107924997339048618164252757887110768815893430887815305514922961949667979752303213277816828843368480537841700073841104962481205582367240865013563323173440718961047681451899879227723667627560727130126067618835762910400814504248306630014541944709893716765700413221224757923126824268828647957097513858809640944455381794313195593840922332582876223514824959422561626329918799136047305884440406410525270254104256070814154969773113150411800382559129568354072035901993092028994084566362055923333431305678513424010483265554884737123030747397380411179901670663401025988818803148721581535785496985110724714474896441114749846811544477965952843178762601535206675841249789271627604624492004778081719040612863623837660992563530459774976\n", + "61917168924186929512997339402434646556065925682481069277338668741121532281034489886448054781959705198129466085175639350540038739291475114103303905158275433940782839850067542298061700100516053093524057214988638029399630972276921321984647056505241237399238743806788205214763753491496422974487621734184608796751351561087754134422482920436513627499830963851860319673109134413293116757480679099295050004114028835175850325533658965547746936416921475539726868484078186469223834914793488614368497904496226469400130465995528888234997958025593749902103983947786048783132702895658888718388078075907898390215849994678097236328505515774221537631786861775630611029845923899335959504606426555633657686736961075683400147682209924962411164734481730027126646346881437922095362903799758455447335255121454260252135237671525820801629008496613260029083889419787433531400826442449515846253648537657295914195027717619281888910763588626391187681844665165752447029649918845123252659837598272094611768880812821050540508208512141628309939546226300823600765118259136708144071803986184057988169132724111846666862611357026848020966531109769474246061494794760822359803341326802051977637606297443163071570993970221449428949792882229499693623088955931905686357525203070413351682499578543255209248984009556163438081225727247675321985127060919549952\n", + "123834337848373859025994678804869293112131851364962138554677337482243064562068979772896109563919410396258932170351278701080077478582950228206607810316550867881565679700135084596123400201032106187048114429977276058799261944553842643969294113010482474798477487613576410429527506982992845948975243468369217593502703122175508268844965840873027254999661927703720639346218268826586233514961358198590100008228057670351700651067317931095493872833842951079453736968156372938447669829586977228736995808992452938800260931991057776469995916051187499804207967895572097566265405791317777436776156151815796780431699989356194472657011031548443075263573723551261222059691847798671919009212853111267315373473922151366800295364419849924822329468963460054253292693762875844190725807599516910894670510242908520504270475343051641603258016993226520058167778839574867062801652884899031692507297075314591828390055435238563777821527177252782375363689330331504894059299837690246505319675196544189223537761625642101081016417024283256619879092452601647201530236518273416288143607972368115976338265448223693333725222714053696041933062219538948492122989589521644719606682653604103955275212594886326143141987940442898857899585764458999387246177911863811372715050406140826703364999157086510418497968019112326876162451454495350643970254121839099904\n", + "247668675696747718051989357609738586224263702729924277109354674964486129124137959545792219127838820792517864340702557402160154957165900456413215620633101735763131359400270169192246800402064212374096228859954552117598523889107685287938588226020964949596954975227152820859055013965985691897950486936738435187005406244351016537689931681746054509999323855407441278692436537653172467029922716397180200016456115340703401302134635862190987745667685902158907473936312745876895339659173954457473991617984905877600521863982115552939991832102374999608415935791144195132530811582635554873552312303631593560863399978712388945314022063096886150527147447102522444119383695597343838018425706222534630746947844302733600590728839699849644658937926920108506585387525751688381451615199033821789341020485817041008540950686103283206516033986453040116335557679149734125603305769798063385014594150629183656780110870477127555643054354505564750727378660663009788118599675380493010639350393088378447075523251284202162032834048566513239758184905203294403060473036546832576287215944736231952676530896447386667450445428107392083866124439077896984245979179043289439213365307208207910550425189772652286283975880885797715799171528917998774492355823727622745430100812281653406729998314173020836995936038224653752324902908990701287940508243678199808\n", + "495337351393495436103978715219477172448527405459848554218709349928972258248275919091584438255677641585035728681405114804320309914331800912826431241266203471526262718800540338384493600804128424748192457719909104235197047778215370575877176452041929899193909950454305641718110027931971383795900973873476870374010812488702033075379863363492109019998647710814882557384873075306344934059845432794360400032912230681406802604269271724381975491335371804317814947872625491753790679318347908914947983235969811755201043727964231105879983664204749999216831871582288390265061623165271109747104624607263187121726799957424777890628044126193772301054294894205044888238767391194687676036851412445069261493895688605467201181457679399699289317875853840217013170775051503376762903230398067643578682040971634082017081901372206566413032067972906080232671115358299468251206611539596126770029188301258367313560221740954255111286108709011129501454757321326019576237199350760986021278700786176756894151046502568404324065668097133026479516369810406588806120946073093665152574431889472463905353061792894773334900890856214784167732248878155793968491958358086578878426730614416415821100850379545304572567951761771595431598343057835997548984711647455245490860201624563306813459996628346041673991872076449307504649805817981402575881016487356399616\n", + "990674702786990872207957430438954344897054810919697108437418699857944516496551838183168876511355283170071457362810229608640619828663601825652862482532406943052525437601080676768987201608256849496384915439818208470394095556430741151754352904083859798387819900908611283436220055863942767591801947746953740748021624977404066150759726726984218039997295421629765114769746150612689868119690865588720800065824461362813605208538543448763950982670743608635629895745250983507581358636695817829895966471939623510402087455928462211759967328409499998433663743164576780530123246330542219494209249214526374243453599914849555781256088252387544602108589788410089776477534782389375352073702824890138522987791377210934402362915358799398578635751707680434026341550103006753525806460796135287157364081943268164034163802744413132826064135945812160465342230716598936502413223079192253540058376602516734627120443481908510222572217418022259002909514642652039152474398701521972042557401572353513788302093005136808648131336194266052959032739620813177612241892146187330305148863778944927810706123585789546669801781712429568335464497756311587936983916716173157756853461228832831642201700759090609145135903523543190863196686115671995097969423294910490981720403249126613626919993256692083347983744152898615009299611635962805151762032974712799232\n", + "1981349405573981744415914860877908689794109621839394216874837399715889032993103676366337753022710566340142914725620459217281239657327203651305724965064813886105050875202161353537974403216513698992769830879636416940788191112861482303508705808167719596775639801817222566872440111727885535183603895493907481496043249954808132301519453453968436079994590843259530229539492301225379736239381731177441600131648922725627210417077086897527901965341487217271259791490501967015162717273391635659791932943879247020804174911856924423519934656818999996867327486329153561060246492661084438988418498429052748486907199829699111562512176504775089204217179576820179552955069564778750704147405649780277045975582754421868804725830717598797157271503415360868052683100206013507051612921592270574314728163886536328068327605488826265652128271891624320930684461433197873004826446158384507080116753205033469254240886963817020445144434836044518005819029285304078304948797403043944085114803144707027576604186010273617296262672388532105918065479241626355224483784292374660610297727557889855621412247171579093339603563424859136670928995512623175873967833432346315513706922457665663284403401518181218290271807047086381726393372231343990195938846589820981963440806498253227253839986513384166695967488305797230018599223271925610303524065949425598464\n", + "3962698811147963488831829721755817379588219243678788433749674799431778065986207352732675506045421132680285829451240918434562479314654407302611449930129627772210101750404322707075948806433027397985539661759272833881576382225722964607017411616335439193551279603634445133744880223455771070367207790987814962992086499909616264603038906907936872159989181686519060459078984602450759472478763462354883200263297845451254420834154173795055803930682974434542519582981003934030325434546783271319583865887758494041608349823713848847039869313637999993734654972658307122120492985322168877976836996858105496973814399659398223125024353009550178408434359153640359105910139129557501408294811299560554091951165508843737609451661435197594314543006830721736105366200412027014103225843184541148629456327773072656136655210977652531304256543783248641861368922866395746009652892316769014160233506410066938508481773927634040890288869672089036011638058570608156609897594806087888170229606289414055153208372020547234592525344777064211836130958483252710448967568584749321220595455115779711242824494343158186679207126849718273341857991025246351747935666864692631027413844915331326568806803036362436580543614094172763452786744462687980391877693179641963926881612996506454507679973026768333391934976611594460037198446543851220607048131898851196928\n", + "7925397622295926977663659443511634759176438487357576867499349598863556131972414705465351012090842265360571658902481836869124958629308814605222899860259255544420203500808645414151897612866054795971079323518545667763152764451445929214034823232670878387102559207268890267489760446911542140734415581975629925984172999819232529206077813815873744319978363373038120918157969204901518944957526924709766400526595690902508841668308347590111607861365948869085039165962007868060650869093566542639167731775516988083216699647427697694079738627275999987469309945316614244240985970644337755953673993716210993947628799318796446250048706019100356816868718307280718211820278259115002816589622599121108183902331017687475218903322870395188629086013661443472210732400824054028206451686369082297258912655546145312273310421955305062608513087566497283722737845732791492019305784633538028320467012820133877016963547855268081780577739344178072023276117141216313219795189612175776340459212578828110306416744041094469185050689554128423672261916966505420897935137169498642441190910231559422485648988686316373358414253699436546683715982050492703495871333729385262054827689830662653137613606072724873161087228188345526905573488925375960783755386359283927853763225993012909015359946053536666783869953223188920074396893087702441214096263797702393856\n", + "15850795244591853955327318887023269518352876974715153734998699197727112263944829410930702024181684530721143317804963673738249917258617629210445799720518511088840407001617290828303795225732109591942158647037091335526305528902891858428069646465341756774205118414537780534979520893823084281468831163951259851968345999638465058412155627631747488639956726746076241836315938409803037889915053849419532801053191381805017683336616695180223215722731897738170078331924015736121301738187133085278335463551033976166433399294855395388159477254551999974938619890633228488481971941288675511907347987432421987895257598637592892500097412038200713633737436614561436423640556518230005633179245198242216367804662035374950437806645740790377258172027322886944421464801648108056412903372738164594517825311092290624546620843910610125217026175132994567445475691465582984038611569267076056640934025640267754033927095710536163561155478688356144046552234282432626439590379224351552680918425157656220612833488082188938370101379108256847344523833933010841795870274338997284882381820463118844971297977372632746716828507398873093367431964100985406991742667458770524109655379661325306275227212145449746322174456376691053811146977850751921567510772718567855707526451986025818030719892107073333567739906446377840148793786175404882428192527595404787712\n", + "31701590489183707910654637774046539036705753949430307469997398395454224527889658821861404048363369061442286635609927347476499834517235258420891599441037022177680814003234581656607590451464219183884317294074182671052611057805783716856139292930683513548410236829075561069959041787646168562937662327902519703936691999276930116824311255263494977279913453492152483672631876819606075779830107698839065602106382763610035366673233390360446431445463795476340156663848031472242603476374266170556670927102067952332866798589710790776318954509103999949877239781266456976963943882577351023814695974864843975790515197275185785000194824076401427267474873229122872847281113036460011266358490396484432735609324070749900875613291481580754516344054645773888842929603296216112825806745476329189035650622184581249093241687821220250434052350265989134890951382931165968077223138534152113281868051280535508067854191421072327122310957376712288093104468564865252879180758448703105361836850315312441225666976164377876740202758216513694689047667866021683591740548677994569764763640926237689942595954745265493433657014797746186734863928201970813983485334917541048219310759322650612550454424290899492644348912753382107622293955701503843135021545437135711415052903972051636061439784214146667135479812892755680297587572350809764856385055190809575424\n", + "63403180978367415821309275548093078073411507898860614939994796790908449055779317643722808096726738122884573271219854694952999669034470516841783198882074044355361628006469163313215180902928438367768634588148365342105222115611567433712278585861367027096820473658151122139918083575292337125875324655805039407873383998553860233648622510526989954559826906984304967345263753639212151559660215397678131204212765527220070733346466780720892862890927590952680313327696062944485206952748532341113341854204135904665733597179421581552637909018207999899754479562532913953927887765154702047629391949729687951581030394550371570000389648152802854534949746458245745694562226072920022532716980792968865471218648141499801751226582963161509032688109291547777685859206592432225651613490952658378071301244369162498186483375642440500868104700531978269781902765862331936154446277068304226563736102561071016135708382842144654244621914753424576186208937129730505758361516897406210723673700630624882451333952328755753480405516433027389378095335732043367183481097355989139529527281852475379885191909490530986867314029595492373469727856403941627966970669835082096438621518645301225100908848581798985288697825506764215244587911403007686270043090874271422830105807944103272122879568428293334270959625785511360595175144701619529712770110381619150848\n", + "126806361956734831642618551096186156146823015797721229879989593581816898111558635287445616193453476245769146542439709389905999338068941033683566397764148088710723256012938326626430361805856876735537269176296730684210444231223134867424557171722734054193640947316302244279836167150584674251750649311610078815746767997107720467297245021053979909119653813968609934690527507278424303119320430795356262408425531054440141466692933561441785725781855181905360626655392125888970413905497064682226683708408271809331467194358843163105275818036415999799508959125065827907855775530309404095258783899459375903162060789100743140000779296305605709069899492916491491389124452145840045065433961585937730942437296282999603502453165926323018065376218583095555371718413184864451303226981905316756142602488738324996372966751284881001736209401063956539563805531724663872308892554136608453127472205122142032271416765684289308489243829506849152372417874259461011516723033794812421447347401261249764902667904657511506960811032866054778756190671464086734366962194711978279059054563704950759770383818981061973734628059190984746939455712807883255933941339670164192877243037290602450201817697163597970577395651013528430489175822806015372540086181748542845660211615888206544245759136856586668541919251571022721190350289403239059425540220763238301696\n", + "253612723913469663285237102192372312293646031595442459759979187163633796223117270574891232386906952491538293084879418779811998676137882067367132795528296177421446512025876653252860723611713753471074538352593461368420888462446269734849114343445468108387281894632604488559672334301169348503501298623220157631493535994215440934594490042107959818239307627937219869381055014556848606238640861590712524816851062108880282933385867122883571451563710363810721253310784251777940827810994129364453367416816543618662934388717686326210551636072831999599017918250131655815711551060618808190517567798918751806324121578201486280001558592611211418139798985832982982778248904291680090130867923171875461884874592565999207004906331852646036130752437166191110743436826369728902606453963810633512285204977476649992745933502569762003472418802127913079127611063449327744617785108273216906254944410244284064542833531368578616978487659013698304744835748518922023033446067589624842894694802522499529805335809315023013921622065732109557512381342928173468733924389423956558118109127409901519540767637962123947469256118381969493878911425615766511867882679340328385754486074581204900403635394327195941154791302027056860978351645612030745080172363497085691320423231776413088491518273713173337083838503142045442380700578806478118851080441526476603392\n", + "507225447826939326570474204384744624587292063190884919519958374327267592446234541149782464773813904983076586169758837559623997352275764134734265591056592354842893024051753306505721447223427506942149076705186922736841776924892539469698228686890936216774563789265208977119344668602338697007002597246440315262987071988430881869188980084215919636478615255874439738762110029113697212477281723181425049633702124217760565866771734245767142903127420727621442506621568503555881655621988258728906734833633087237325868777435372652421103272145663999198035836500263311631423102121237616381035135597837503612648243156402972560003117185222422836279597971665965965556497808583360180261735846343750923769749185131998414009812663705292072261504874332382221486873652739457805212907927621267024570409954953299985491867005139524006944837604255826158255222126898655489235570216546433812509888820488568129085667062737157233956975318027396609489671497037844046066892135179249685789389605044999059610671618630046027843244131464219115024762685856346937467848778847913116236218254819803039081535275924247894938512236763938987757822851231533023735765358680656771508972149162409800807270788654391882309582604054113721956703291224061490160344726994171382640846463552826176983036547426346674167677006284090884761401157612956237702160883052953206784\n", + "1014450895653878653140948408769489249174584126381769839039916748654535184892469082299564929547627809966153172339517675119247994704551528269468531182113184709685786048103506613011442894446855013884298153410373845473683553849785078939396457373781872433549127578530417954238689337204677394014005194492880630525974143976861763738377960168431839272957230511748879477524220058227394424954563446362850099267404248435521131733543468491534285806254841455242885013243137007111763311243976517457813469667266174474651737554870745304842206544291327998396071673000526623262846204242475232762070271195675007225296486312805945120006234370444845672559195943331931931112995617166720360523471692687501847539498370263996828019625327410584144523009748664764442973747305478915610425815855242534049140819909906599970983734010279048013889675208511652316510444253797310978471140433092867625019777640977136258171334125474314467913950636054793218979342994075688092133784270358499371578779210089998119221343237260092055686488262928438230049525371712693874935697557695826232472436509639606078163070551848495789877024473527877975515645702463066047471530717361313543017944298324819601614541577308783764619165208108227443913406582448122980320689453988342765281692927105652353966073094852693348335354012568181769522802315225912475404321766105906413568\n", + "2028901791307757306281896817538978498349168252763539678079833497309070369784938164599129859095255619932306344679035350238495989409103056538937062364226369419371572096207013226022885788893710027768596306820747690947367107699570157878792914747563744867098255157060835908477378674409354788028010388985761261051948287953723527476755920336863678545914461023497758955048440116454788849909126892725700198534808496871042263467086936983068571612509682910485770026486274014223526622487953034915626939334532348949303475109741490609684413088582655996792143346001053246525692408484950465524140542391350014450592972625611890240012468740889691345118391886663863862225991234333440721046943385375003695078996740527993656039250654821168289046019497329528885947494610957831220851631710485068098281639819813199941967468020558096027779350417023304633020888507594621956942280866185735250039555281954272516342668250948628935827901272109586437958685988151376184267568540716998743157558420179996238442686474520184111372976525856876460099050743425387749871395115391652464944873019279212156326141103696991579754048947055755951031291404926132094943061434722627086035888596649639203229083154617567529238330416216454887826813164896245960641378907976685530563385854211304707932146189705386696670708025136363539045604630451824950808643532211812827136\n", + "4057803582615514612563793635077956996698336505527079356159666994618140739569876329198259718190511239864612689358070700476991978818206113077874124728452738838743144192414026452045771577787420055537192613641495381894734215399140315757585829495127489734196510314121671816954757348818709576056020777971522522103896575907447054953511840673727357091828922046995517910096880232909577699818253785451400397069616993742084526934173873966137143225019365820971540052972548028447053244975906069831253878669064697898606950219482981219368826177165311993584286692002106493051384816969900931048281084782700028901185945251223780480024937481779382690236783773327727724451982468666881442093886770750007390157993481055987312078501309642336578092038994659057771894989221915662441703263420970136196563279639626399883934936041116192055558700834046609266041777015189243913884561732371470500079110563908545032685336501897257871655802544219172875917371976302752368535137081433997486315116840359992476885372949040368222745953051713752920198101486850775499742790230783304929889746038558424312652282207393983159508097894111511902062582809852264189886122869445254172071777193299278406458166309235135058476660832432909775653626329792491921282757815953371061126771708422609415864292379410773393341416050272727078091209260903649901617287064423625654272\n", + "8115607165231029225127587270155913993396673011054158712319333989236281479139752658396519436381022479729225378716141400953983957636412226155748249456905477677486288384828052904091543155574840111074385227282990763789468430798280631515171658990254979468393020628243343633909514697637419152112041555943045044207793151814894109907023681347454714183657844093991035820193760465819155399636507570902800794139233987484169053868347747932274286450038731641943080105945096056894106489951812139662507757338129395797213900438965962438737652354330623987168573384004212986102769633939801862096562169565400057802371890502447560960049874963558765380473567546655455448903964937333762884187773541500014780315986962111974624157002619284673156184077989318115543789978443831324883406526841940272393126559279252799767869872082232384111117401668093218532083554030378487827769123464742941000158221127817090065370673003794515743311605088438345751834743952605504737070274162867994972630233680719984953770745898080736445491906103427505840396202973701550999485580461566609859779492077116848625304564414787966319016195788223023804125165619704528379772245738890508344143554386598556812916332618470270116953321664865819551307252659584983842565515631906742122253543416845218831728584758821546786682832100545454156182418521807299803234574128847251308544\n", + "16231214330462058450255174540311827986793346022108317424638667978472562958279505316793038872762044959458450757432282801907967915272824452311496498913810955354972576769656105808183086311149680222148770454565981527578936861596561263030343317980509958936786041256486687267819029395274838304224083111886090088415586303629788219814047362694909428367315688187982071640387520931638310799273015141805601588278467974968338107736695495864548572900077463283886160211890192113788212979903624279325015514676258791594427800877931924877475304708661247974337146768008425972205539267879603724193124339130800115604743781004895121920099749927117530760947135093310910897807929874667525768375547083000029560631973924223949248314005238569346312368155978636231087579956887662649766813053683880544786253118558505599535739744164464768222234803336186437064167108060756975655538246929485882000316442255634180130741346007589031486623210176876691503669487905211009474140548325735989945260467361439969907541491796161472890983812206855011680792405947403101998971160923133219719558984154233697250609128829575932638032391576446047608250331239409056759544491477781016688287108773197113625832665236940540233906643329731639102614505319169967685131031263813484244507086833690437663457169517643093573365664201090908312364837043614599606469148257694502617088\n", + "32462428660924116900510349080623655973586692044216634849277335956945125916559010633586077745524089918916901514864565603815935830545648904622992997827621910709945153539312211616366172622299360444297540909131963055157873723193122526060686635961019917873572082512973374535638058790549676608448166223772180176831172607259576439628094725389818856734631376375964143280775041863276621598546030283611203176556935949936676215473390991729097145800154926567772320423780384227576425959807248558650031029352517583188855601755863849754950609417322495948674293536016851944411078535759207448386248678261600231209487562009790243840199499854235061521894270186621821795615859749335051536751094166000059121263947848447898496628010477138692624736311957272462175159913775325299533626107367761089572506237117011199071479488328929536444469606672372874128334216121513951311076493858971764000632884511268360261482692015178062973246420353753383007338975810422018948281096651471979890520934722879939815082983592322945781967624413710023361584811894806203997942321846266439439117968308467394501218257659151865276064783152892095216500662478818113519088982955562033376574217546394227251665330473881080467813286659463278205229010638339935370262062527626968489014173667380875326914339035286187146731328402181816624729674087229199212938296515389005234176\n", + "64924857321848233801020698161247311947173384088433269698554671913890251833118021267172155491048179837833803029729131207631871661091297809245985995655243821419890307078624423232732345244598720888595081818263926110315747446386245052121373271922039835747144165025946749071276117581099353216896332447544360353662345214519152879256189450779637713469262752751928286561550083726553243197092060567222406353113871899873352430946781983458194291600309853135544640847560768455152851919614497117300062058705035166377711203511727699509901218834644991897348587072033703888822157071518414896772497356523200462418975124019580487680398999708470123043788540373243643591231719498670103073502188332000118242527895696895796993256020954277385249472623914544924350319827550650599067252214735522179145012474234022398142958976657859072888939213344745748256668432243027902622152987717943528001265769022536720522965384030356125946492840707506766014677951620844037896562193302943959781041869445759879630165967184645891563935248827420046723169623789612407995884643692532878878235936616934789002436515318303730552129566305784190433001324957636227038177965911124066753148435092788454503330660947762160935626573318926556410458021276679870740524125055253936978028347334761750653828678070572374293462656804363633249459348174458398425876593030778010468352\n", + "129849714643696467602041396322494623894346768176866539397109343827780503666236042534344310982096359675667606059458262415263743322182595618491971991310487642839780614157248846465464690489197441777190163636527852220631494892772490104242746543844079671494288330051893498142552235162198706433792664895088720707324690429038305758512378901559275426938525505503856573123100167453106486394184121134444812706227743799746704861893563966916388583200619706271089281695121536910305703839228994234600124117410070332755422407023455399019802437669289983794697174144067407777644314143036829793544994713046400924837950248039160975360797999416940246087577080746487287182463438997340206147004376664000236485055791393791593986512041908554770498945247829089848700639655101301198134504429471044358290024948468044796285917953315718145777878426689491496513336864486055805244305975435887056002531538045073441045930768060712251892985681415013532029355903241688075793124386605887919562083738891519759260331934369291783127870497654840093446339247579224815991769287385065757756471873233869578004873030636607461104259132611568380866002649915272454076355931822248133506296870185576909006661321895524321871253146637853112820916042553359741481048250110507873956056694669523501307657356141144748586925313608727266498918696348916796851753186061556020936704\n", + "259699429287392935204082792644989247788693536353733078794218687655561007332472085068688621964192719351335212118916524830527486644365191236983943982620975285679561228314497692930929380978394883554380327273055704441262989785544980208485493087688159342988576660103786996285104470324397412867585329790177441414649380858076611517024757803118550853877051011007713146246200334906212972788368242268889625412455487599493409723787127933832777166401239412542178563390243073820611407678457988469200248234820140665510844814046910798039604875338579967589394348288134815555288628286073659587089989426092801849675900496078321950721595998833880492175154161492974574364926877994680412294008753328000472970111582787583187973024083817109540997890495658179697401279310202602396269008858942088716580049896936089592571835906631436291555756853378982993026673728972111610488611950871774112005063076090146882091861536121424503785971362830027064058711806483376151586248773211775839124167477783039518520663868738583566255740995309680186892678495158449631983538574770131515512943746467739156009746061273214922208518265223136761732005299830544908152711863644496267012593740371153818013322643791048643742506293275706225641832085106719482962096500221015747912113389339047002615314712282289497173850627217454532997837392697833593703506372123112041873408\n", + "519398858574785870408165585289978495577387072707466157588437375311122014664944170137377243928385438702670424237833049661054973288730382473967887965241950571359122456628995385861858761956789767108760654546111408882525979571089960416970986175376318685977153320207573992570208940648794825735170659580354882829298761716153223034049515606237101707754102022015426292492400669812425945576736484537779250824910975198986819447574255867665554332802478825084357126780486147641222815356915976938400496469640281331021689628093821596079209750677159935178788696576269631110577256572147319174179978852185603699351800992156643901443191997667760984350308322985949148729853755989360824588017506656000945940223165575166375946048167634219081995780991316359394802558620405204792538017717884177433160099793872179185143671813262872583111513706757965986053347457944223220977223901743548224010126152180293764183723072242849007571942725660054128117423612966752303172497546423551678248334955566079037041327737477167132511481990619360373785356990316899263967077149540263031025887492935478312019492122546429844417036530446273523464010599661089816305423727288992534025187480742307636026645287582097287485012586551412451283664170213438965924193000442031495824226778678094005230629424564578994347701254434909065995674785395667187407012744246224083746816\n", + "1038797717149571740816331170579956991154774145414932315176874750622244029329888340274754487856770877405340848475666099322109946577460764947935775930483901142718244913257990771723717523913579534217521309092222817765051959142179920833941972350752637371954306640415147985140417881297589651470341319160709765658597523432306446068099031212474203415508204044030852584984801339624851891153472969075558501649821950397973638895148511735331108665604957650168714253560972295282445630713831953876800992939280562662043379256187643192158419501354319870357577393152539262221154513144294638348359957704371207398703601984313287802886383995335521968700616645971898297459707511978721649176035013312001891880446331150332751892096335268438163991561982632718789605117240810409585076035435768354866320199587744358370287343626525745166223027413515931972106694915888446441954447803487096448020252304360587528367446144485698015143885451320108256234847225933504606344995092847103356496669911132158074082655474954334265022963981238720747570713980633798527934154299080526062051774985870956624038984245092859688834073060892547046928021199322179632610847454577985068050374961484615272053290575164194574970025173102824902567328340426877931848386000884062991648453557356188010461258849129157988695402508869818131991349570791334374814025488492448167493632\n", + "2077595434299143481632662341159913982309548290829864630353749501244488058659776680549508975713541754810681696951332198644219893154921529895871551860967802285436489826515981543447435047827159068435042618184445635530103918284359841667883944701505274743908613280830295970280835762595179302940682638321419531317195046864612892136198062424948406831016408088061705169969602679249703782306945938151117003299643900795947277790297023470662217331209915300337428507121944590564891261427663907753601985878561125324086758512375286384316839002708639740715154786305078524442309026288589276696719915408742414797407203968626575605772767990671043937401233291943796594919415023957443298352070026624003783760892662300665503784192670536876327983123965265437579210234481620819170152070871536709732640399175488716740574687253051490332446054827031863944213389831776892883908895606974192896040504608721175056734892288971396030287770902640216512469694451867009212689990185694206712993339822264316148165310949908668530045927962477441495141427961267597055868308598161052124103549971741913248077968490185719377668146121785094093856042398644359265221694909155970136100749922969230544106581150328389149940050346205649805134656680853755863696772001768125983296907114712376020922517698258315977390805017739636263982699141582668749628050976984896334987264\n", + "4155190868598286963265324682319827964619096581659729260707499002488976117319553361099017951427083509621363393902664397288439786309843059791743103721935604570872979653031963086894870095654318136870085236368891271060207836568719683335767889403010549487817226561660591940561671525190358605881365276642839062634390093729225784272396124849896813662032816176123410339939205358499407564613891876302234006599287801591894555580594046941324434662419830600674857014243889181129782522855327815507203971757122250648173517024750572768633678005417279481430309572610157048884618052577178553393439830817484829594814407937253151211545535981342087874802466583887593189838830047914886596704140053248007567521785324601331007568385341073752655966247930530875158420468963241638340304141743073419465280798350977433481149374506102980664892109654063727888426779663553785767817791213948385792081009217442350113469784577942792060575541805280433024939388903734018425379980371388413425986679644528632296330621899817337060091855924954882990282855922535194111736617196322104248207099943483826496155936980371438755336292243570188187712084797288718530443389818311940272201499845938461088213162300656778299880100692411299610269313361707511727393544003536251966593814229424752041845035396516631954781610035479272527965398283165337499256101953969792669974528\n", + "8310381737196573926530649364639655929238193163319458521414998004977952234639106722198035902854167019242726787805328794576879572619686119583486207443871209141745959306063926173789740191308636273740170472737782542120415673137439366671535778806021098975634453123321183881123343050380717211762730553285678125268780187458451568544792249699793627324065632352246820679878410716998815129227783752604468013198575603183789111161188093882648869324839661201349714028487778362259565045710655631014407943514244501296347034049501145537267356010834558962860619145220314097769236105154357106786879661634969659189628815874506302423091071962684175749604933167775186379677660095829773193408280106496015135043570649202662015136770682147505311932495861061750316840937926483276680608283486146838930561596701954866962298749012205961329784219308127455776853559327107571535635582427896771584162018434884700226939569155885584121151083610560866049878777807468036850759960742776826851973359289057264592661243799634674120183711849909765980565711845070388223473234392644208496414199886967652992311873960742877510672584487140376375424169594577437060886779636623880544402999691876922176426324601313556599760201384822599220538626723415023454787088007072503933187628458849504083690070793033263909563220070958545055930796566330674998512203907939585339949056\n", + "16620763474393147853061298729279311858476386326638917042829996009955904469278213444396071805708334038485453575610657589153759145239372239166972414887742418283491918612127852347579480382617272547480340945475565084240831346274878733343071557612042197951268906246642367762246686100761434423525461106571356250537560374916903137089584499399587254648131264704493641359756821433997630258455567505208936026397151206367578222322376187765297738649679322402699428056975556724519130091421311262028815887028489002592694068099002291074534712021669117925721238290440628195538472210308714213573759323269939318379257631749012604846182143925368351499209866335550372759355320191659546386816560212992030270087141298405324030273541364295010623864991722123500633681875852966553361216566972293677861123193403909733924597498024411922659568438616254911553707118654215143071271164855793543168324036869769400453879138311771168242302167221121732099757555614936073701519921485553653703946718578114529185322487599269348240367423699819531961131423690140776446946468785288416992828399773935305984623747921485755021345168974280752750848339189154874121773559273247761088805999383753844352852649202627113199520402769645198441077253446830046909574176014145007866375256917699008167380141586066527819126440141917090111861593132661349997024407815879170679898112\n", + "33241526948786295706122597458558623716952772653277834085659992019911808938556426888792143611416668076970907151221315178307518290478744478333944829775484836566983837224255704695158960765234545094960681890951130168481662692549757466686143115224084395902537812493284735524493372201522868847050922213142712501075120749833806274179168998799174509296262529408987282719513642867995260516911135010417872052794302412735156444644752375530595477299358644805398856113951113449038260182842622524057631774056978005185388136198004582149069424043338235851442476580881256391076944420617428427147518646539878636758515263498025209692364287850736702998419732671100745518710640383319092773633120425984060540174282596810648060547082728590021247729983444247001267363751705933106722433133944587355722246386807819467849194996048823845319136877232509823107414237308430286142542329711587086336648073739538800907758276623542336484604334442243464199515111229872147403039842971107307407893437156229058370644975198538696480734847399639063922262847380281552893892937570576833985656799547870611969247495842971510042690337948561505501696678378309748243547118546495522177611998767507688705705298405254226399040805539290396882154506893660093819148352028290015732750513835398016334760283172133055638252880283834180223723186265322699994048815631758341359796224\n", + "66483053897572591412245194917117247433905545306555668171319984039823617877112853777584287222833336153941814302442630356615036580957488956667889659550969673133967674448511409390317921530469090189921363781902260336963325385099514933372286230448168791805075624986569471048986744403045737694101844426285425002150241499667612548358337997598349018592525058817974565439027285735990521033822270020835744105588604825470312889289504751061190954598717289610797712227902226898076520365685245048115263548113956010370776272396009164298138848086676471702884953161762512782153888841234856854295037293079757273517030526996050419384728575701473405996839465342201491037421280766638185547266240851968121080348565193621296121094165457180042495459966888494002534727503411866213444866267889174711444492773615638935698389992097647690638273754465019646214828474616860572285084659423174172673296147479077601815516553247084672969208668884486928399030222459744294806079685942214614815786874312458116741289950397077392961469694799278127844525694760563105787785875141153667971313599095741223938494991685943020085380675897123011003393356756619496487094237092991044355223997535015377411410596810508452798081611078580793764309013787320187638296704056580031465501027670796032669520566344266111276505760567668360447446372530645399988097631263516682719592448\n", + "132966107795145182824490389834234494867811090613111336342639968079647235754225707555168574445666672307883628604885260713230073161914977913335779319101939346267935348897022818780635843060938180379842727563804520673926650770199029866744572460896337583610151249973138942097973488806091475388203688852570850004300482999335225096716675995196698037185050117635949130878054571471981042067644540041671488211177209650940625778579009502122381909197434579221595424455804453796153040731370490096230527096227912020741552544792018328596277696173352943405769906323525025564307777682469713708590074586159514547034061053992100838769457151402946811993678930684402982074842561533276371094532481703936242160697130387242592242188330914360084990919933776988005069455006823732426889732535778349422888985547231277871396779984195295381276547508930039292429656949233721144570169318846348345346592294958155203631033106494169345938417337768973856798060444919488589612159371884429229631573748624916233482579900794154785922939389598556255689051389521126211575571750282307335942627198191482447876989983371886040170761351794246022006786713513238992974188474185982088710447995070030754822821193621016905596163222157161587528618027574640375276593408113160062931002055341592065339041132688532222553011521135336720894892745061290799976195262527033365439184896\n", + "265932215590290365648980779668468989735622181226222672685279936159294471508451415110337148891333344615767257209770521426460146323829955826671558638203878692535870697794045637561271686121876360759685455127609041347853301540398059733489144921792675167220302499946277884195946977612182950776407377705141700008600965998670450193433351990393396074370100235271898261756109142943962084135289080083342976422354419301881251557158019004244763818394869158443190848911608907592306081462740980192461054192455824041483105089584036657192555392346705886811539812647050051128615555364939427417180149172319029094068122107984201677538914302805893623987357861368805964149685123066552742189064963407872484321394260774485184484376661828720169981839867553976010138910013647464853779465071556698845777971094462555742793559968390590762553095017860078584859313898467442289140338637692696690693184589916310407262066212988338691876834675537947713596120889838977179224318743768858459263147497249832466965159801588309571845878779197112511378102779042252423151143500564614671885254396382964895753979966743772080341522703588492044013573427026477985948376948371964177420895990140061509645642387242033811192326444314323175057236055149280750553186816226320125862004110683184130678082265377064445106023042270673441789785490122581599952390525054066730878369792\n", + "531864431180580731297961559336937979471244362452445345370559872318588943016902830220674297782666689231534514419541042852920292647659911653343117276407757385071741395588091275122543372243752721519370910255218082695706603080796119466978289843585350334440604999892555768391893955224365901552814755410283400017201931997340900386866703980786792148740200470543796523512218285887924168270578160166685952844708838603762503114316038008489527636789738316886381697823217815184612162925481960384922108384911648082966210179168073314385110784693411773623079625294100102257231110729878854834360298344638058188136244215968403355077828605611787247974715722737611928299370246133105484378129926815744968642788521548970368968753323657440339963679735107952020277820027294929707558930143113397691555942188925111485587119936781181525106190035720157169718627796934884578280677275385393381386369179832620814524132425976677383753669351075895427192241779677954358448637487537716918526294994499664933930319603176619143691757558394225022756205558084504846302287001129229343770508792765929791507959933487544160683045407176984088027146854052955971896753896743928354841791980280123019291284774484067622384652888628646350114472110298561501106373632452640251724008221366368261356164530754128890212046084541346883579570980245163199904781050108133461756739584\n", + "1063728862361161462595923118673875958942488724904890690741119744637177886033805660441348595565333378463069028839082085705840585295319823306686234552815514770143482791176182550245086744487505443038741820510436165391413206161592238933956579687170700668881209999785111536783787910448731803105629510820566800034403863994681800773733407961573584297480400941087593047024436571775848336541156320333371905689417677207525006228632076016979055273579476633772763395646435630369224325850963920769844216769823296165932420358336146628770221569386823547246159250588200204514462221459757709668720596689276116376272488431936806710155657211223574495949431445475223856598740492266210968756259853631489937285577043097940737937506647314880679927359470215904040555640054589859415117860286226795383111884377850222971174239873562363050212380071440314339437255593869769156561354550770786762772738359665241629048264851953354767507338702151790854384483559355908716897274975075433837052589988999329867860639206353238287383515116788450045512411116169009692604574002258458687541017585531859583015919866975088321366090814353968176054293708105911943793507793487856709683583960560246038582569548968135244769305777257292700228944220597123002212747264905280503448016442732736522712329061508257780424092169082693767159141960490326399809562100216266923513479168\n", + "2127457724722322925191846237347751917884977449809781381482239489274355772067611320882697191130666756926138057678164171411681170590639646613372469105631029540286965582352365100490173488975010886077483641020872330782826412323184477867913159374341401337762419999570223073567575820897463606211259021641133600068807727989363601547466815923147168594960801882175186094048873143551696673082312640666743811378835354415050012457264152033958110547158953267545526791292871260738448651701927841539688433539646592331864840716672293257540443138773647094492318501176400409028924442919515419337441193378552232752544976863873613420311314422447148991898862890950447713197480984532421937512519707262979874571154086195881475875013294629761359854718940431808081111280109179718830235720572453590766223768755700445942348479747124726100424760142880628678874511187739538313122709101541573525545476719330483258096529703906709535014677404303581708768967118711817433794549950150867674105179977998659735721278412706476574767030233576900091024822232338019385209148004516917375082035171063719166031839733950176642732181628707936352108587416211823887587015586975713419367167921120492077165139097936270489538611554514585400457888441194246004425494529810561006896032885465473045424658123016515560848184338165387534318283920980652799619124200432533847026958336\n", + "4254915449444645850383692474695503835769954899619562762964478978548711544135222641765394382261333513852276115356328342823362341181279293226744938211262059080573931164704730200980346977950021772154967282041744661565652824646368955735826318748682802675524839999140446147135151641794927212422518043282267200137615455978727203094933631846294337189921603764350372188097746287103393346164625281333487622757670708830100024914528304067916221094317906535091053582585742521476897303403855683079376867079293184663729681433344586515080886277547294188984637002352800818057848885839030838674882386757104465505089953727747226840622628844894297983797725781900895426394961969064843875025039414525959749142308172391762951750026589259522719709437880863616162222560218359437660471441144907181532447537511400891884696959494249452200849520285761257357749022375479076626245418203083147051090953438660966516193059407813419070029354808607163417537934237423634867589099900301735348210359955997319471442556825412953149534060467153800182049644464676038770418296009033834750164070342127438332063679467900353285464363257415872704217174832423647775174031173951426838734335842240984154330278195872540979077223109029170800915776882388492008850989059621122013792065770930946090849316246033031121696368676330775068636567841961305599238248400865067694053916672\n", + "8509830898889291700767384949391007671539909799239125525928957957097423088270445283530788764522667027704552230712656685646724682362558586453489876422524118161147862329409460401960693955900043544309934564083489323131305649292737911471652637497365605351049679998280892294270303283589854424845036086564534400275230911957454406189867263692588674379843207528700744376195492574206786692329250562666975245515341417660200049829056608135832442188635813070182107165171485042953794606807711366158753734158586369327459362866689173030161772555094588377969274004705601636115697771678061677349764773514208931010179907455494453681245257689788595967595451563801790852789923938129687750050078829051919498284616344783525903500053178519045439418875761727232324445120436718875320942882289814363064895075022801783769393918988498904401699040571522514715498044750958153252490836406166294102181906877321933032386118815626838140058709617214326835075868474847269735178199800603470696420719911994638942885113650825906299068120934307600364099288929352077540836592018067669500328140684254876664127358935800706570928726514831745408434349664847295550348062347902853677468671684481968308660556391745081958154446218058341601831553764776984017701978119242244027584131541861892181698632492066062243392737352661550137273135683922611198476496801730135388107833344\n", + "17019661797778583401534769898782015343079819598478251051857915914194846176540890567061577529045334055409104461425313371293449364725117172906979752845048236322295724658818920803921387911800087088619869128166978646262611298585475822943305274994731210702099359996561784588540606567179708849690072173129068800550461823914908812379734527385177348759686415057401488752390985148413573384658501125333950491030682835320400099658113216271664884377271626140364214330342970085907589213615422732317507468317172738654918725733378346060323545110189176755938548009411203272231395543356123354699529547028417862020359814910988907362490515379577191935190903127603581705579847876259375500100157658103838996569232689567051807000106357038090878837751523454464648890240873437750641885764579628726129790150045603567538787837976997808803398081143045029430996089501916306504981672812332588204363813754643866064772237631253676280117419234428653670151736949694539470356399601206941392841439823989277885770227301651812598136241868615200728198577858704155081673184036135339000656281368509753328254717871601413141857453029663490816868699329694591100696124695805707354937343368963936617321112783490163916308892436116683203663107529553968035403956238484488055168263083723784363397264984132124486785474705323100274546271367845222396952993603460270776215666688\n", + "34039323595557166803069539797564030686159639196956502103715831828389692353081781134123155058090668110818208922850626742586898729450234345813959505690096472644591449317637841607842775823600174177239738256333957292525222597170951645886610549989462421404198719993123569177081213134359417699380144346258137601100923647829817624759469054770354697519372830114802977504781970296827146769317002250667900982061365670640800199316226432543329768754543252280728428660685940171815178427230845464635014936634345477309837451466756692120647090220378353511877096018822406544462791086712246709399059094056835724040719629821977814724981030759154383870381806255207163411159695752518751000200315316207677993138465379134103614000212714076181757675503046908929297780481746875501283771529159257452259580300091207135077575675953995617606796162286090058861992179003832613009963345624665176408727627509287732129544475262507352560234838468857307340303473899389078940712799202413882785682879647978555771540454603303625196272483737230401456397155717408310163346368072270678001312562737019506656509435743202826283714906059326981633737398659389182201392249391611414709874686737927873234642225566980327832617784872233366407326215059107936070807912476968976110336526167447568726794529968264248973570949410646200549092542735690444793905987206920541552431333376\n", + "68078647191114333606139079595128061372319278393913004207431663656779384706163562268246310116181336221636417845701253485173797458900468691627919011380192945289182898635275683215685551647200348354479476512667914585050445194341903291773221099978924842808397439986247138354162426268718835398760288692516275202201847295659635249518938109540709395038745660229605955009563940593654293538634004501335801964122731341281600398632452865086659537509086504561456857321371880343630356854461690929270029873268690954619674902933513384241294180440756707023754192037644813088925582173424493418798118188113671448081439259643955629449962061518308767740763612510414326822319391505037502000400630632415355986276930758268207228000425428152363515351006093817858595560963493751002567543058318514904519160600182414270155151351907991235213592324572180117723984358007665226019926691249330352817455255018575464259088950525014705120469676937714614680606947798778157881425598404827765571365759295957111543080909206607250392544967474460802912794311434816620326692736144541356002625125474039013313018871486405652567429812118653963267474797318778364402784498783222829419749373475855746469284451133960655665235569744466732814652430118215872141615824953937952220673052334895137453589059936528497947141898821292401098185085471380889587811974413841083104862666752\n", + "136157294382228667212278159190256122744638556787826008414863327313558769412327124536492620232362672443272835691402506970347594917800937383255838022760385890578365797270551366431371103294400696708958953025335829170100890388683806583546442199957849685616794879972494276708324852537437670797520577385032550404403694591319270499037876219081418790077491320459211910019127881187308587077268009002671603928245462682563200797264905730173319075018173009122913714642743760687260713708923381858540059746537381909239349805867026768482588360881513414047508384075289626177851164346848986837596236376227342896162878519287911258899924123036617535481527225020828653644638783010075004000801261264830711972553861516536414456000850856304727030702012187635717191121926987502005135086116637029809038321200364828540310302703815982470427184649144360235447968716015330452039853382498660705634910510037150928518177901050029410240939353875429229361213895597556315762851196809655531142731518591914223086161818413214500785089934948921605825588622869633240653385472289082712005250250948078026626037742972811305134859624237307926534949594637556728805568997566445658839498746951711492938568902267921311330471139488933465629304860236431744283231649907875904441346104669790274907178119873056995894283797642584802196370170942761779175623948827682166209725333504\n", + "272314588764457334424556318380512245489277113575652016829726654627117538824654249072985240464725344886545671382805013940695189835601874766511676045520771781156731594541102732862742206588801393417917906050671658340201780777367613167092884399915699371233589759944988553416649705074875341595041154770065100808807389182638540998075752438162837580154982640918423820038255762374617174154536018005343207856490925365126401594529811460346638150036346018245827429285487521374521427417846763717080119493074763818478699611734053536965176721763026828095016768150579252355702328693697973675192472752454685792325757038575822517799848246073235070963054450041657307289277566020150008001602522529661423945107723033072828912001701712609454061404024375271434382243853975004010270172233274059618076642400729657080620605407631964940854369298288720470895937432030660904079706764997321411269821020074301857036355802100058820481878707750858458722427791195112631525702393619311062285463037183828446172323636826429001570179869897843211651177245739266481306770944578165424010500501896156053252075485945622610269719248474615853069899189275113457611137995132891317678997493903422985877137804535842622660942278977866931258609720472863488566463299815751808882692209339580549814356239746113991788567595285169604392740341885523558351247897655364332419450667008\n", + "544629177528914668849112636761024490978554227151304033659453309254235077649308498145970480929450689773091342765610027881390379671203749533023352091041543562313463189082205465725484413177602786835835812101343316680403561554735226334185768799831398742467179519889977106833299410149750683190082309540130201617614778365277081996151504876325675160309965281836847640076511524749234348309072036010686415712981850730252803189059622920693276300072692036491654858570975042749042854835693527434160238986149527636957399223468107073930353443526053656190033536301158504711404657387395947350384945504909371584651514077151645035599696492146470141926108900083314614578555132040300016003205045059322847890215446066145657824003403425218908122808048750542868764487707950008020540344466548119236153284801459314161241210815263929881708738596577440941791874864061321808159413529994642822539642040148603714072711604200117640963757415501716917444855582390225263051404787238622124570926074367656892344647273652858003140359739795686423302354491478532962613541889156330848021001003792312106504150971891245220539438496949231706139798378550226915222275990265782635357994987806845971754275609071685245321884557955733862517219440945726977132926599631503617765384418679161099628712479492227983577135190570339208785480683771047116702495795310728664838901334016\n", + "1089258355057829337698225273522048981957108454302608067318906618508470155298616996291940961858901379546182685531220055762780759342407499066046704182083087124626926378164410931450968826355205573671671624202686633360807123109470452668371537599662797484934359039779954213666598820299501366380164619080260403235229556730554163992303009752651350320619930563673695280153023049498468696618144072021372831425963701460505606378119245841386552600145384072983309717141950085498085709671387054868320477972299055273914798446936214147860706887052107312380067072602317009422809314774791894700769891009818743169303028154303290071199392984292940283852217800166629229157110264080600032006410090118645695780430892132291315648006806850437816245616097501085737528975415900016041080688933096238472306569602918628322482421630527859763417477193154881883583749728122643616318827059989285645079284080297207428145423208400235281927514831003433834889711164780450526102809574477244249141852148735313784689294547305716006280719479591372846604708982957065925227083778312661696042002007584624213008301943782490441078876993898463412279596757100453830444551980531565270715989975613691943508551218143370490643769115911467725034438881891453954265853199263007235530768837358322199257424958984455967154270381140678417570961367542094233404991590621457329677802668032\n", + "2178516710115658675396450547044097963914216908605216134637813237016940310597233992583881923717802759092365371062440111525561518684814998132093408364166174249253852756328821862901937652710411147343343248405373266721614246218940905336743075199325594969868718079559908427333197640599002732760329238160520806470459113461108327984606019505302700641239861127347390560306046098996937393236288144042745662851927402921011212756238491682773105200290768145966619434283900170996171419342774109736640955944598110547829596893872428295721413774104214624760134145204634018845618629549583789401539782019637486338606056308606580142398785968585880567704435600333258458314220528161200064012820180237291391560861784264582631296013613700875632491232195002171475057950831800032082161377866192476944613139205837256644964843261055719526834954386309763767167499456245287232637654119978571290158568160594414856290846416800470563855029662006867669779422329560901052205619148954488498283704297470627569378589094611432012561438959182745693209417965914131850454167556625323392084004015169248426016603887564980882157753987796926824559193514200907660889103961063130541431979951227383887017102436286740981287538231822935450068877763782907908531706398526014471061537674716644398514849917968911934308540762281356835141922735084188466809983181242914659355605336064\n", + "4357033420231317350792901094088195927828433817210432269275626474033880621194467985167763847435605518184730742124880223051123037369629996264186816728332348498507705512657643725803875305420822294686686496810746533443228492437881810673486150398651189939737436159119816854666395281198005465520658476321041612940918226922216655969212039010605401282479722254694781120612092197993874786472576288085491325703854805842022425512476983365546210400581536291933238868567800341992342838685548219473281911889196221095659193787744856591442827548208429249520268290409268037691237259099167578803079564039274972677212112617213160284797571937171761135408871200666516916628441056322400128025640360474582783121723568529165262592027227401751264982464390004342950115901663600064164322755732384953889226278411674513289929686522111439053669908772619527534334998912490574465275308239957142580317136321188829712581692833600941127710059324013735339558844659121802104411238297908976996567408594941255138757178189222864025122877918365491386418835931828263700908335113250646784168008030338496852033207775129961764315507975593853649118387028401815321778207922126261082863959902454767774034204872573481962575076463645870900137755527565815817063412797052028942123075349433288797029699835937823868617081524562713670283845470168376933619966362485829318711210672128\n", + "8714066840462634701585802188176391855656867634420864538551252948067761242388935970335527694871211036369461484249760446102246074739259992528373633456664696997015411025315287451607750610841644589373372993621493066886456984875763621346972300797302379879474872318239633709332790562396010931041316952642083225881836453844433311938424078021210802564959444509389562241224184395987749572945152576170982651407709611684044851024953966731092420801163072583866477737135600683984685677371096438946563823778392442191318387575489713182885655096416858499040536580818536075382474518198335157606159128078549945354424225234426320569595143874343522270817742401333033833256882112644800256051280720949165566243447137058330525184054454803502529964928780008685900231803327200128328645511464769907778452556823349026579859373044222878107339817545239055068669997824981148930550616479914285160634272642377659425163385667201882255420118648027470679117689318243604208822476595817953993134817189882510277514356378445728050245755836730982772837671863656527401816670226501293568336016060676993704066415550259923528631015951187707298236774056803630643556415844252522165727919804909535548068409745146963925150152927291741800275511055131631634126825594104057884246150698866577594059399671875647737234163049125427340567690940336753867239932724971658637422421344256\n", + "17428133680925269403171604376352783711313735268841729077102505896135522484777871940671055389742422072738922968499520892204492149478519985056747266913329393994030822050630574903215501221683289178746745987242986133772913969751527242693944601594604759758949744636479267418665581124792021862082633905284166451763672907688866623876848156042421605129918889018779124482448368791975499145890305152341965302815419223368089702049907933462184841602326145167732955474271201367969371354742192877893127647556784884382636775150979426365771310192833716998081073161637072150764949036396670315212318256157099890708848450468852641139190287748687044541635484802666067666513764225289600512102561441898331132486894274116661050368108909607005059929857560017371800463606654400256657291022929539815556905113646698053159718746088445756214679635090478110137339995649962297861101232959828570321268545284755318850326771334403764510840237296054941358235378636487208417644953191635907986269634379765020555028712756891456100491511673461965545675343727313054803633340453002587136672032121353987408132831100519847057262031902375414596473548113607261287112831688505044331455839609819071096136819490293927850300305854583483600551022110263263268253651188208115768492301397733155188118799343751295474468326098250854681135381880673507734479865449943317274844842688512\n", + "34856267361850538806343208752705567422627470537683458154205011792271044969555743881342110779484844145477845936999041784408984298957039970113494533826658787988061644101261149806431002443366578357493491974485972267545827939503054485387889203189209519517899489272958534837331162249584043724165267810568332903527345815377733247753696312084843210259837778037558248964896737583950998291780610304683930605630838446736179404099815866924369683204652290335465910948542402735938742709484385755786255295113569768765273550301958852731542620385667433996162146323274144301529898072793340630424636512314199781417696900937705282278380575497374089083270969605332135333027528450579201024205122883796662264973788548233322100736217819214010119859715120034743600927213308800513314582045859079631113810227293396106319437492176891512429359270180956220274679991299924595722202465919657140642537090569510637700653542668807529021680474592109882716470757272974416835289906383271815972539268759530041110057425513782912200983023346923931091350687454626109607266680906005174273344064242707974816265662201039694114524063804750829192947096227214522574225663377010088662911679219638142192273638980587855700600611709166967201102044220526526536507302376416231536984602795466310376237598687502590948936652196501709362270763761347015468959730899886634549689685377024\n", + "69712534723701077612686417505411134845254941075366916308410023584542089939111487762684221558969688290955691873998083568817968597914079940226989067653317575976123288202522299612862004886733156714986983948971944535091655879006108970775778406378419039035798978545917069674662324499168087448330535621136665807054691630755466495507392624169686420519675556075116497929793475167901996583561220609367861211261676893472358808199631733848739366409304580670931821897084805471877485418968771511572510590227139537530547100603917705463085240771334867992324292646548288603059796145586681260849273024628399562835393801875410564556761150994748178166541939210664270666055056901158402048410245767593324529947577096466644201472435638428020239719430240069487201854426617601026629164091718159262227620454586792212638874984353783024858718540361912440549359982599849191444404931839314281285074181139021275401307085337615058043360949184219765432941514545948833670579812766543631945078537519060082220114851027565824401966046693847862182701374909252219214533361812010348546688128485415949632531324402079388229048127609501658385894192454429045148451326754020177325823358439276284384547277961175711401201223418333934402204088441053053073014604752832463073969205590932620752475197375005181897873304393003418724541527522694030937919461799773269099379370754048\n", + "139425069447402155225372835010822269690509882150733832616820047169084179878222975525368443117939376581911383747996167137635937195828159880453978135306635151952246576405044599225724009773466313429973967897943889070183311758012217941551556812756838078071597957091834139349324648998336174896661071242273331614109383261510932991014785248339372841039351112150232995859586950335803993167122441218735722422523353786944717616399263467697478732818609161341863643794169610943754970837937543023145021180454279075061094201207835410926170481542669735984648585293096577206119592291173362521698546049256799125670787603750821129113522301989496356333083878421328541332110113802316804096820491535186649059895154192933288402944871276856040479438860480138974403708853235202053258328183436318524455240909173584425277749968707566049717437080723824881098719965199698382888809863678628562570148362278042550802614170675230116086721898368439530865883029091897667341159625533087263890157075038120164440229702055131648803932093387695724365402749818504438429066723624020697093376256970831899265062648804158776458096255219003316771788384908858090296902653508040354651646716878552568769094555922351422802402446836667868804408176882106106146029209505664926147938411181865241504950394750010363795746608786006837449083055045388061875838923599546538198758741508096\n", + "278850138894804310450745670021644539381019764301467665233640094338168359756445951050736886235878753163822767495992334275271874391656319760907956270613270303904493152810089198451448019546932626859947935795887778140366623516024435883103113625513676156143195914183668278698649297996672349793322142484546663228218766523021865982029570496678745682078702224300465991719173900671607986334244882437471444845046707573889435232798526935394957465637218322683727287588339221887509941675875086046290042360908558150122188402415670821852340963085339471969297170586193154412239184582346725043397092098513598251341575207501642258227044603978992712666167756842657082664220227604633608193640983070373298119790308385866576805889742553712080958877720960277948807417706470404106516656366872637048910481818347168850555499937415132099434874161447649762197439930399396765777619727357257125140296724556085101605228341350460232173443796736879061731766058183795334682319251066174527780314150076240328880459404110263297607864186775391448730805499637008876858133447248041394186752513941663798530125297608317552916192510438006633543576769817716180593805307016080709303293433757105137538189111844702845604804893673335737608816353764212212292058419011329852295876822363730483009900789500020727591493217572013674898166110090776123751677847199093076397517483016192\n", + "557700277789608620901491340043289078762039528602935330467280188676336719512891902101473772471757506327645534991984668550543748783312639521815912541226540607808986305620178396902896039093865253719895871591775556280733247032048871766206227251027352312286391828367336557397298595993344699586644284969093326456437533046043731964059140993357491364157404448600931983438347801343215972668489764874942889690093415147778870465597053870789914931274436645367454575176678443775019883351750172092580084721817116300244376804831341643704681926170678943938594341172386308824478369164693450086794184197027196502683150415003284516454089207957985425332335513685314165328440455209267216387281966140746596239580616771733153611779485107424161917755441920555897614835412940808213033312733745274097820963636694337701110999874830264198869748322895299524394879860798793531555239454714514250280593449112170203210456682700920464346887593473758123463532116367590669364638502132349055560628300152480657760918808220526595215728373550782897461610999274017753716266894496082788373505027883327597060250595216635105832385020876013267087153539635432361187610614032161418606586867514210275076378223689405691209609787346671475217632707528424424584116838022659704591753644727460966019801579000041455182986435144027349796332220181552247503355694398186152795034966032384\n", + "1115400555579217241802982680086578157524079057205870660934560377352673439025783804202947544943515012655291069983969337101087497566625279043631825082453081215617972611240356793805792078187730507439791743183551112561466494064097743532412454502054704624572783656734673114794597191986689399173288569938186652912875066092087463928118281986714982728314808897201863966876695602686431945336979529749885779380186830295557740931194107741579829862548873290734909150353356887550039766703500344185160169443634232600488753609662683287409363852341357887877188682344772617648956738329386900173588368394054393005366300830006569032908178415915970850664671027370628330656880910418534432774563932281493192479161233543466307223558970214848323835510883841111795229670825881616426066625467490548195641927273388675402221999749660528397739496645790599048789759721597587063110478909429028500561186898224340406420913365401840928693775186947516246927064232735181338729277004264698111121256600304961315521837616441053190431456747101565794923221998548035507432533788992165576747010055766655194120501190433270211664770041752026534174307079270864722375221228064322837213173735028420550152756447378811382419219574693342950435265415056848849168233676045319409183507289454921932039603158000082910365972870288054699592664440363104495006711388796372305590069932064768" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "IOPub data rate exceeded.\n", + "The notebook server will temporarily stop sending output\n", + "to the client in order to avoid crashing it.\n", + "To change this limit, set the config variable\n", + "`--NotebookApp.iopub_data_rate_limit`.\n" + ] + } + ], + "source": [ + "# Stampa le potenze di 2 (ciclo infinito)\n", + "for i in potenze(2):\n", + " print(i)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Esempio di creazione da una classe:" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "class TreeNode:\n", + " def __iter__(self):\n", + " for node in self.children:\n", + " yield node" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Esempio di creazione \"al volo\":" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " at 0x000001B1EFF64D58>\n", + "0\n", + "1\n", + "4\n", + "9\n", + "16\n", + "25\n", + "36\n", + "49\n", + "64\n", + "81\n", + "100\n", + "121\n", + "144\n", + "169\n", + "196\n", + "225\n", + "256\n", + "289\n", + "324\n", + "361\n", + "400\n", + "441\n", + "484\n", + "529\n", + "576\n", + "625\n", + "676\n", + "729\n", + "784\n", + "841\n" + ] + } + ], + "source": [ + "y = (x*x for x in range(30)) \n", + "print(y) # hmm...\n", + "for x in y:\n", + " print(x)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Es. 1 - Generatore di giorni della settimana\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "def day_of_week(): \n", + " i = 0 \n", + " days = [\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\",\"Sunday\"] \n", + " while True: \n", + " yield days[i%7] \n", + " i += 1 \n", + "day_of_week()" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "import random \n", + "def snowday(prob=.01):\n", + " # Randmon between 0 and 1\n", + " r = random.random()\n", + " #print(r)\n", + " if r < prob: \n", + " return \"snowday!\" \n", + " else: \n", + " return \"regular day.\" " + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Monday is a regular day.\n", + "Tuesday is a regular day.\n", + "Wednesday is a regular day.\n", + "Thursday is a regular day.\n", + "Friday is a regular day.\n", + "Saturday is a snowday!\n" + ] + } + ], + "source": [ + "n = 0 \n", + "for x in day_of_week(): \n", + " today = snowday() \n", + " print(x + \" is a \" + today) \n", + " n += 1 \n", + " if today == \"snowday!\":\n", + " break " + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "weekday = (day for day in day_of_week())" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'Monday'" + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "next(weekday) " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Es. 2 - Gestione di un gioco di carte (Poker)\n", + "\n", + "Facciamo finta di voler sviluppare un'app per il gioco del Poker.\n", + "\n", + "Definiamo liste per punti e semi" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "punti = ['A', 'K', 'Q', 'J', '10', '9', '8', '7', '6', '5', '4', '3', '2']\n", + "semi = ['C', 'Q', 'F', 'P']" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Un generator sulle carte, come nella realtà che si consumi quando le carte sono usate." + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "def carte():\n", + " \"\"\"Return a generator that yields playing cards.\"\"\"\n", + " for p in punti:\n", + " for s in semi:\n", + " yield p, s" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + " at 0x000001B1EFE796D0>" + ] + }, + "execution_count": 19, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "carte = ((p, s) for p in punti for s in semi)\n", + "carte" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "import itertools\n", + "carte = itertools.product(punti, semi)" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "import random\n", + "\n", + "def mischia(mazzo):\n", + " \"\"\"Restituisce un iteratore sul mazzo mischiato\"\"\"\n", + " mazzo = list(mazzo)\n", + " random.shuffle(mazzo)\n", + " return iter(tuple(mazzo))\n", + "\n", + "carte = mischia(carte)" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "def taglia(mazzo, n):\n", + " \"\"\"Restituisce un iteratore su mazzo, tagliato all'indice `n`\"\"\"\n", + " mazzo1, mazzo2 = itertools.tee(mazzo, 2)\n", + " sopra = itertools.islice(mazzo1, n)\n", + " sotto = itertools.islice(mazzo2, n, None)\n", + " return itertools.chain(sopra, sotto)\n", + "\n", + "carte = taglia(carte, 26)" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "def distribuisci(mazzo, num_mani=1, num_persone_giocanti=5):\n", + " iters = [iter(mazzo)] * num_persone_giocanti\n", + " return tuple(zip(*(tuple(itertools.islice(itr, num_mani)) for itr in iters)))" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(('10', 'P'), ('6', 'F'), ('5', 'P'), ('7', 'Q'), ('A', 'P'))" + ] + }, + "execution_count": 24, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "p1_hand, p2_hand, p3_hand = distribuisci(carte, num_mani=3)\n", + "p1_hand" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(('2', 'C'), ('9', 'C'), ('7', 'P'), ('K', 'F'), ('6', 'Q'))" + ] + }, + "execution_count": 25, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "p2_hand" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(('K', 'P'), ('8', 'F'), ('4', 'P'), ('Q', 'C'), ('3', 'P'))" + ] + }, + "execution_count": 26, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "p3_hand" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "37" + ] + }, + "execution_count": 27, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(tuple(carte))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Le carte sono \"consumate\"; lo stato dell'iteratore carte riflette il gioco, che è esattamente quello che vogliamo!" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Bibliografia\n", + "\n", + "https://realpython.com/python-itertools/\n", + "\n", + "https://docs.python.org/3/library/itertools.html" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python [conda env:django]", + "language": "python", + "name": "conda-env-django-py" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.2" + }, + "toc": { + "base_numbering": 1, + "nav_menu": {}, + "number_sections": true, + "sideBar": true, + "skip_h1_title": false, + "title_cell": "Table of Contents", + "title_sidebar": "Contents", + "toc_cell": false, + "toc_position": {}, + "toc_section_display": true, + "toc_window_display": false + } + }, + "nbformat": 4, + "nbformat_minor": 2 +}