#include <iostream> struct wezel { int wartosc; struct wezel *rodzic; struct wezel *l_syn; struct wezel *p_syn; }; struct wezel *root; using namespace std; //funkcja zwraca wskaznik elementu o najmniejszej wartosci (najbardziej na lewo) struct wezel* naj_lewo(struct wezel *start) { if(start && start->l_syn) return naj_lewo(start->l_syn); else return start; } //funkcja zwraca wskaznik elementu o najwiekszej wartosci (najbardziej na prawo) struct wezel* naj_prawo(struct wezel *start) { if(start && start->p_syn) return naj_prawo(start->p_syn); else return start; } // Funkcja znajduje następnik węzła p //----------------------------------- wezel * znajdzNastepnika(wezel * p) { wezel * r; if(p) { if(p->rodzic) return naj_lewo(p->p_syn); else { r = p->rodzic; while(r && (p == r->p_syn)) { p = r; r = r->rodzic; } return r; } } return p; } // Funkcja znajduje poprzednik węzła p //------------------------------------ wezel * znajdzPoprzednika(wezel * p) { wezel * r; if(p) { if(p->l_syn) return naj_prawo(p->l_syn); else { r = p->rodzic; while(r && (p == r->l_syn)) { p = r; r = r->rodzic; } return r; } } return p; } //funkcja zwraca wezel o podanej wartosci, badz NULL, gdy taki wezel nie istnieje struct wezel* szukaj(struct wezel *start, int wartosc) { if(!start) return NULL; //jezeli wezel ma szukana wartosc to odnalezlismy go if (start->wartosc == wartosc) return start; //jezeli szukana wartosc jest mniejsza to szukamy w lewym poddrzewie o ile istnieje else if (wartosc < start->wartosc && start->l_syn != NULL) return szukaj(start->l_syn, wartosc); //jezeli szukana wartosc jest wieksza to szukamy w prawym poddrzewie o ile istnieje else if (wartosc > start->wartosc && start->p_syn != NULL) return szukaj(start->p_syn, wartosc); return NULL; } //dodaje wezel o podanej wartosci n, do drzewa o korzeniu start void dodawanie(int n, struct wezel *start) { //jezeli drzewo jest puste to dodaj korzen if (root == NULL) { root = new wezel; root->wartosc = n; root->l_syn = NULL; root->p_syn = NULL; root->rodzic = NULL; } //jezeli zadana wartosc jest mniejsza od korzenia idz do lewego poddrzewa else if(n < start->wartosc) { //jezeli lewe poddrzewo istnieje wywolaj dla niego ta funkcje rekurencyjnie if(start->l_syn != NULL) { dodawanie(n,start->l_syn); } //jezeli lewe poddrzewo nie istnieje dodaj nowy wezel o zadanej wartosci else { wezel *nowy = new wezel; nowy->wartosc = n; nowy->l_syn = NULL; nowy->p_syn = NULL; nowy->rodzic = start; start->l_syn=nowy; } } //jezeli zadana wartosc jest wieksza lub rowna korzeniowi idz do prawego poddrzewa else { //jezeli prawe poddrzewo istnieje wywolaj dla niego ta funkcje rekurencyjnie if(start->p_syn!=NULL) { dodawanie(n,start->p_syn); } //jezeli prawe poddrzewo nie istnieje dodaj nowy wezel o zadanej wartosci else { wezel *nowy = new wezel; nowy->wartosc = n; nowy->l_syn = NULL; nowy->p_syn = NULL; nowy->rodzic = start; start->p_syn=nowy; } } } void kasowanie(struct wezel *start) { if(start==NULL) return; //jezeli wezel nie ma dzieci if(start->l_syn==NULL && start->p_syn==NULL) { //jezeli wezel jest korzeniem if(start->rodzic==NULL) { root=NULL; } //jezeli wezel jest po lewej stronie rodzica, else if(start->rodzic->l_syn==start) { //usun wezel z lewej strony wezla rodzica start->rodzic->l_syn=NULL; } else { //usun wezel z prawej strony wezla rodzica start->rodzic->p_syn=NULL; } delete start; } //jezeli wezel ma tylko jedno dziecko else if(start->l_syn==NULL || start->p_syn==NULL) { //jezeli po lewej stronie nie ma dziecka if(start->l_syn==NULL) { //jezeli wezel jest korzeniem if(start->rodzic==NULL) { root=start->p_syn; } //jezeli wezel jest po lewej stronie rodzica else if(start->rodzic->l_syn==start) { //przyczep z lewej strony rodzica wezel bedacy po prawej stronie usuwanego wezla start->rodzic->l_syn=start->p_syn; //zmien rodzica start->p_syn->rodzic=start->rodzic; } else { //przyczep z prawej strony rodzica wezel bedacy po prawej stronie usuwanego wezla start->rodzic->p_syn=start->p_syn; //zmien rodzica start->p_syn->rodzic=start->rodzic; } } else { //jezeli wezel jest korzeniem if(start->rodzic==NULL) { root=start->l_syn; } //jezeli wezel jest po lewej stronie rodzica else if(start->rodzic->l_syn==start) { //przyczep z lewej strony rodzica wezel bedacy po lewej stronie usuwanego wezla start->rodzic->l_syn=start->l_syn; //zmien rodzica start->l_syn->rodzic=start->rodzic; } else { //przyczep z prawej strony rodzica wezel bedacy po prawej stronie usuwanego wezla start->rodzic->p_syn=start->l_syn; //zmien rodzica start->l_syn->rodzic=start->rodzic; } } delete start; } else { //wstaw w miejsce usuwanego elementu - najmniejsza wartosc z prawego poddrzewa struct wezel *temp; temp=znajdzPoprzednika(start); start->wartosc = temp->wartosc; kasowanie(temp); } } //przejdz drzewo w kolejnosci zaczynajac od wezla start void in_order_tree_walk(struct wezel *start) { if(start) { in_order_tree_walk(start->l_syn); cout << start->wartosc << " "; in_order_tree_walk(start->p_syn); } } void pre_order_tree_walk(struct wezel *start) { if(start) { cout << start->wartosc << " "; pre_order_tree_walk(start->l_syn); pre_order_tree_walk(start->p_syn); } } void post_order_tree_walk(struct wezel *start) { if(start) { post_order_tree_walk(start->l_syn); post_order_tree_walk(start->p_syn); cout << start->wartosc << " "; } } void Clear(wezel *x) { if( x != NULL ) { Clear( x->l_syn ); Clear( x->p_syn ); delete x; } } void PokazDrzewo(wezel *w) { if(w) { PokazDrzewo(w->l_syn); cout << "wskaznik: " << w << " " << w->wartosc << " l_syn:" << w->l_syn << " p_syn" << w->p_syn << " rodzic :" << w->rodzic << endl; PokazDrzewo(w->p_syn); } } int main() { int ileTestow; cin >> ileTestow; for(int i=1; i<=ileTestow; i++) { root=NULL; cout << "test " << i << endl; int n; cin >> n; while(n--) { // PokazDrzewo(root); char command; int x; cin >> command >> x; if(command=='I') { dodawanie(x,root); } else if(command=='D') { if(root) { wezel *element = szukaj(root,x); if(element) { kasowanie(element); } } } else if(command=='S') { if(root) { wezel *element = szukaj(root,x); if(element) { cout << element->wartosc << endl; } else { cout << "-" << endl; } } } else if(command=='X') { if(root) { if(x==0) { wezel *element=naj_lewo(root); if(element) { cout << element->wartosc << endl; } } else if(x==1) { wezel *element=naj_prawo(root); if(element) { cout << element->wartosc << endl; } } } else { cout << "-" << endl; } } else if(command=='N') { if(root) { wezel *element=szukaj(root,x); if(element) { wezel *nastepnik = znajdzNastepnika(element); if(nastepnik) { cout << nastepnik->wartosc << endl; } else { cout << "-" << endl; } } else { cout << "-" << endl; } } else { cout << "-" << endl; } } else if(command=='P') { wezel *element=szukaj(root,x); if(element) { wezel *poprzednik = znajdzPoprzednika(element); if(poprzednik) { cout << poprzednik->wartosc << endl; } else { cout << "-" << endl; } } else { cout << "-" << endl; } } else if(command=='R') { switch(x) { case 0: in_order_tree_walk(root); break; case 1: pre_order_tree_walk(root); break; case 2: post_order_tree_walk(root); break; } cout << endl; } } Clear(root); } return 0; }
8 217 I 74 S 28 I 98 R 1 D 24 X 0 I 33 N 17 N 62 D 21 S 71 I 69 N 69 I 0 I 83 X 0 I 7 X 1 D 34 R 1 N 57 D 30 N 70 D 80 D 56 R 1 R 2 N 9 N 53 D 16 N 68 R 1 I 67 I 55 I 79 S 9 N 14 R 0 R 1 R 1 I 78 D 91 D 27 S 34 N 36 N 95 X 0 N 96 D 89 N 36 X 0 I 42 N 4 X 0 R 0 X 0 S 45 S 63 N 53 D 58 N 1 D 73 I 12 I 39 R 0 D 6 R 1 N 30 R 2 I 54 D 92 D 38 X 0 R 0 R 0 R 1 S 40 R 0 I 96 R 0 S 81 I 73 N 36 R 2 X 1 X 0 I 10 N 49 X 0 S 0 S 55 D 51 D 18 R 0 S 67 I 43 R 2 R 0 S 39 X 1 S 4 N 37 D 64 N 61 R 2 R 0 R 2 I 21 X 1 S 86 X 0 N 22 S 56 R 1 N 32 I 9 R 0 I 83 S 6 I 16 R 2 R 1 R 1 S 57 I 86 S 76 N 13 X 0 X 0 X 1 X 1 X 1 N 44 R 0 R 1 D 4 N 38 D 10 R 2 D 79 X 0 D 34 N 70 S 59 I 33 R 0 D 35 R 0 D 74 S 8 S 40 R 2 N 0 N 9 X 1 S 59 R 1 X 0 X 0 I 26 N 2 N 33 N 13 R 0 I 71 N 83 X 0 D 11 R 0 R 2 R 2 N 53 N 7 N 78 R 1 D 61 I 20 D 55 S 84 I 5 N 74 R 2 S 96 X 1 N 98 N 87 I 46 S 29 N 25 S 88 N 54 X 1 S 86 I 90 R 1 N 85 I 28 S 6 D 39 I 79 R 2 R 2 I 38 X 1 I 73 D 18 D 90 D 18 I 5 S 1 S 31 R 1 R 2 R 1 N 10 X 1 I 66 234 N 37 N 35 X 0 S 91 R 1 I 4 D 76 D 92 S 32 D 30 D 56 X 1 R 2 X 0 R 1 D 13 S 75 S 6 R 0 X 0 R 0 D 69 S 53 R 0 N 25 I 96 N 36 R 0 I 39 D 86 R 1 I 76 I 9 D 65 R 1 X 1 R 0 S 55 D 39 X 1 D 43 N 66 S 26 X 0 R 0 D 84 X 1 I 20 N 64 I 47 S 45 X 1 D 19 N 70 S 40 R 2 D 62 S 38 I 49 I 74 N 18 S 26 X 1 I 75 S 36 X 0 I 66 S 73 I 34 N 14 N 17 I 11 I 29 N 10 D 18 R 0 D 34 D 99 X 1 S 13 S 21 S 73 R 0 D 41 I 37 N 84 X 1 R 1 N 26 N 38 X 1 S 85 S 41 D 76 S 11 R 0 N 19 I 65 D 50 D 17 N 90 D 71 S 46 N 8 R 2 D 40 I 42 D 20 R 1 D 63 S 28 X 0 I 1 X 0 N 49 S 38 I 94 S 27 S 50 R 1 D 52 I 98 X 0 S 72 N 18 X 1 S 17 I 42 S 9 N 51 R 1 D 15 R 0 N 65 X 0 X 0 I 63 D 19 R 1 X 0 N 30 N 60 X 0 R 1 D 49 S 29 D 31 X 1 X 0 I 28 R 0 N 23 R 0 D 40 S 91 X 1 X 1 S 87 D 95 X 0 D 2 I 78 I 71 R 1 X 1 R 0 S 74 R 0 N 19 I 92 R 2 I 74 D 72 I 59 I 12 S 33 N 19 D 91 R 1 I 0 D 34 S 34 I 94 D 20 R 1 X 1 I 12 X 1 N 96 I 20 D 85 X 1 I 18 I 26 I 13 D 39 D 72 X 1 X 1 D 47 S 66 N 54 X 0 N 60 S 98 D 10 X 1 I 14 R 1 N 70 R 0 D 5 R 2 X 1 R 2 N 25 R 2 N 99 N 69 R 0 R 0 N 66 N 73 S 52 D 90 N 64 N 10 I 84 D 92 R 1 D 31 X 1 S 52 I 49 214 X 1 N 53 D 71 N 49 R 0 R 2 S 40 I 77 X 1 D 62 X 0 I 13 N 97 S 17 D 57 X 0 N 27 R 2 S 3 N 34 X 0 N 88 N 3 X 0 S 74 R 1 S 75 N 17 X 0 D 43 I 34 D 79 X 1 D 90 S 34 N 7 N 88 R 0 D 96 R 0 X 1 X 0 S 63 D 73 R 1 I 38 I 65 S 30 X 1 X 0 S 61 X 0 I 14 N 40 I 62 X 1 D 61 R 1 R 1 N 89 I 84 I 46 R 2 I 44 S 38 N 84 S 64 I 97 D 89 S 35 X 0 N 74 S 65 I 11 I 98 I 53 S 87 S 10 I 98 S 91 N 50 S 86 S 18 X 0 N 85 N 68 S 47 D 96 N 87 D 57 X 1 N 37 N 5 I 45 R 1 X 1 S 64 N 54 D 20 S 63 X 1 S 97 X 0 N 43 N 39 N 2 I 76 N 62 D 73 S 20 N 30 X 0 N 93 I 94 I 25 X 1 X 0 R 0 N 91 R 2 S 70 D 14 I 66 D 62 D 97 D 80 I 80 R 1 S 92 S 40 R 1 D 38 I 15 S 12 S 29 N 8 D 72 X 1 R 2 S 90 I 89 I 29 D 80 S 49 X 0 X 0 S 51 N 75 N 17 X 0 S 8 R 2 X 0 R 0 D 53 X 1 R 0 D 75 D 30 S 99 X 0 R 1 N 35 S 97 I 7 D 98 R 0 I 50 N 18 R 2 N 70 D 11 N 40 R 0 D 53 I 43 S 57 I 75 D 15 I 43 N 98 I 97 R 1 N 8 R 2 N 85 R 0 S 88 R 1 X 1 R 2 R 0 X 1 I 62 X 0 D 36 N 13 R 2 N 13 I 59 N 56 D 93 X 0 R 0 N 81 S 60 D 3 R 2 N 3 N 24 S 52 X 0 D 17 D 70 169 N 3 D 63 I 2 X 0 N 86 X 0 S 88 X 0 R 1 R 0 S 7 R 2 R 1 I 60 S 34 N 73 I 7 D 81 R 2 D 48 R 0 I 66 I 11 S 15 I 35 D 19 R 2 X 1 X 1 D 33 R 0 X 1 D 30 R 2 I 74 D 80 D 58 R 2 N 52 R 2 X 1 D 47 D 25 N 6 N 50 R 1 X 1 X 1 R 2 N 12 N 10 R 0 I 38 S 90 D 84 X 1 X 1 X 1 X 0 I 46 D 37 D 79 R 1 R 1 N 91 I 84 R 2 S 74 R 2 X 0 X 0 I 8 R 0 D 81 I 32 D 37 N 66 X 0 S 20 X 1 R 2 I 90 I 64 S 63 D 98 N 89 R 1 D 63 R 2 R 1 D 28 I 62 N 68 R 0 D 69 I 47 D 85 N 89 S 25 R 0 I 6 X 1 X 1 S 58 I 75 I 62 X 0 D 7 R 1 R 0 D 51 D 45 X 1 X 0 I 34 D 78 N 31 N 88 R 2 N 39 S 30 S 51 I 73 N 62 X 0 R 1 D 96 S 23 S 29 D 58 D 60 S 15 I 9 R 2 I 85 D 85 D 64 D 82 R 0 X 0 D 74 S 8 N 76 R 0 N 7 I 15 X 0 I 32 I 1 I 61 D 2 X 1 N 69 R 2 R 2 N 4 S 6 I 24 S 73 N 53 R 1 S 82 D 21 X 1 R 2 I 92 S 30 D 30 I 30 248 I 73 D 71 S 10 D 84 X 0 D 83 S 10 D 91 I 77 N 25 R 0 N 69 N 61 I 25 N 74 S 60 D 28 X 0 N 51 R 2 S 57 N 17 R 1 X 1 D 2 D 52 X 0 I 86 S 59 R 2 N 41 D 27 R 1 R 0 R 1 N 97 R 0 I 12 R 1 D 30 R 1 S 54 D 8 R 1 I 86 R 0 N 89 X 0 D 34 X 1 D 1 D 40 I 84 D 7 N 37 N 1 D 84 S 48 D 13 X 1 N 61 I 62 N 50 R 2 D 76 N 9 N 1 R 2 D 45 S 4 N 86 D 86 R 1 N 48 S 82 D 43 N 45 N 32 X 1 R 1 D 9 S 8 N 9 I 29 N 62 N 6 S 37 D 73 R 0 S 68 I 91 S 53 X 1 R 0 D 94 R 2 X 1 D 54 I 64 N 68 N 55 S 13 S 13 N 34 S 71 X 0 R 2 N 79 N 42 X 0 N 24 D 64 I 7 R 2 R 2 S 90 I 21 S 25 S 31 R 2 D 87 S 20 X 0 I 60 X 1 S 10 I 0 I 91 D 56 X 1 R 2 D 1 N 28 I 75 D 63 I 34 X 0 R 1 R 0 D 62 S 33 N 33 S 37 S 16 N 63 X 0 I 27 S 48 S 83 D 93 X 0 X 1 R 2 R 1 X 0 R 2 R 2 D 72 D 80 S 95 R 0 N 88 S 41 N 31 D 3 I 8 R 1 N 30 S 96 D 95 D 99 S 70 R 2 I 41 R 1 X 0 S 34 R 2 S 58 R 2 X 1 R 2 D 87 I 62 X 1 R 2 R 1 D 40 N 74 N 51 I 67 S 68 I 73 D 70 X 1 D 89 S 76 D 18 X 1 R 2 D 92 X 0 D 58 X 0 I 71 S 14 N 78 X 1 X 0 N 46 S 23 X 1 R 2 R 1 N 32 R 1 R 2 S 14 I 87 D 29 I 39 I 38 S 36 N 89 X 0 I 8 N 43 S 20 I 24 R 1 I 41 R 0 D 90 X 1 X 0 X 1 R 0 S 67 X 0 X 0 D 9 S 26 I 74 X 1 I 39 S 9 I 40 S 8 233 S 3 X 1 N 93 D 59 R 2 D 69 R 2 I 64 I 17 S 43 X 0 I 29 S 91 N 20 I 10 D 3 R 1 N 18 X 1 I 54 D 92 R 0 S 47 R 0 S 8 I 18 N 99 I 93 N 22 D 82 R 1 X 0 D 83 R 0 R 1 N 9 N 86 D 44 S 4 X 1 R 2 X 0 S 64 X 1 I 0 D 61 D 4 X 0 I 7 I 8 N 39 D 64 N 25 N 15 R 2 R 0 N 47 R 2 D 81 X 1 D 68 I 53 R 0 S 99 X 0 I 52 S 39 X 1 S 63 R 1 D 94 X 1 X 1 N 21 N 52 S 97 N 18 N 58 N 60 S 0 D 21 N 98 I 47 I 86 R 0 I 94 X 0 N 2 D 55 N 51 D 5 I 68 S 18 D 11 N 47 S 98 D 18 I 15 X 1 N 4 N 62 I 75 X 0 S 13 N 43 D 73 R 1 N 91 R 0 D 54 D 85 S 23 I 44 N 3 N 29 X 0 I 51 I 81 I 83 S 25 X 0 R 0 X 1 S 46 I 6 I 25 S 75 N 25 I 62 D 1 D 37 N 0 N 27 X 1 R 0 R 0 D 1 N 76 X 1 X 1 D 54 I 37 R 2 I 73 I 84 I 87 D 95 X 0 D 28 I 47 I 6 D 88 D 59 I 6 I 27 D 52 S 43 D 74 D 60 X 1 X 1 X 1 D 26 N 60 X 0 D 35 X 1 R 0 I 56 D 63 N 6 D 99 X 1 D 19 S 23 R 2 I 69 R 2 I 47 X 1 D 42 R 0 R 0 R 1 N 50 I 94 S 30 X 1 I 58 X 0 S 2 X 1 S 13 S 56 R 0 N 15 R 2 I 10 S 8 N 59 N 73 R 1 I 91 N 23 I 39 R 0 X 0 R 0 N 80 N 33 N 28 R 0 X 0 N 44 X 1 I 74 I 72 I 97 R 2 N 49 S 66 R 2 X 1 I 29 X 0 X 0 I 64 N 17 I 71 X 0 X 1 N 91 N 35 249 R 2 N 60 X 1 X 1 I 41 S 96 I 6 I 7 I 29 S 12 D 31 N 5 N 70 I 31 S 53 I 12 N 77 I 88 D 25 I 55 R 1 N 45 D 48 D 10 X 1 D 87 N 70 S 20 X 0 D 40 R 0 R 0 I 44 I 5 S 69 I 26 I 45 D 52 N 73 R 0 X 1 D 38 I 9 N 16 D 43 D 94 D 17 R 2 N 76 N 5 X 0 R 1 D 28 N 8 N 28 S 61 N 36 X 0 I 89 D 18 N 59 S 99 I 76 S 18 D 51 N 61 I 75 D 10 D 16 N 23 S 2 I 46 I 39 I 85 N 86 D 44 R 2 X 0 S 66 N 33 X 0 N 66 R 1 S 0 N 62 D 88 I 26 S 89 I 79 I 29 S 87 N 83 S 56 R 2 N 51 R 1 N 88 I 91 I 60 R 0 S 77 R 1 I 1 N 75 R 0 I 76 N 17 N 20 R 1 N 69 R 1 I 28 X 0 I 91 R 0 X 1 D 94 X 0 I 6 N 85 R 1 X 0 D 75 D 73 D 24 S 82 R 0 I 36 N 47 N 72 R 2 D 24 S 5 I 43 S 26 R 0 S 66 D 52 N 38 X 0 X 0 N 77 X 0 R 2 D 24 I 85 D 86 D 10 N 57 X 0 X 1 X 1 S 56 X 0 X 1 S 95 X 0 D 50 N 30 N 5 R 1 D 34 D 51 X 1 D 90 R 1 N 18 X 0 N 21 X 0 S 41 I 28 R 2 I 46 X 0 N 86 N 8 I 35 D 72 N 89 D 33 I 56 D 29 N 1 D 2 N 16 R 1 R 1 N 35 S 19 S 44 D 47 R 1 N 88 N 62 X 1 X 0 N 3 S 36 I 70 X 0 D 44 R 2 N 41 R 0 R 1 N 6 S 94 I 27 R 0 S 80 N 73 X 0 I 85 N 88 I 90 S 22 N 28 N 44 I 45 D 21 R 0 X 1 X 0 X 1 R 2 R 0 S 1 R 1 X 0 X 0 D 5 I 62 S 24 S 95 N 30 D 43 X 1 R 2 X 0 R 0 D 31 N 63 I 21 I 82 X 1 R 0 N 51 I 49 135 I 78 D 0 N 61 S 64 I 95 D 69 I 54 N 94 I 31 R 0 X 0 S 91 D 71 N 13 I 62 R 0 N 95 D 92 D 11 X 0 S 71 N 21 N 46 X 1 D 29 N 7 R 2 D 80 S 61 X 0 S 80 D 72 D 81 R 0 D 33 D 52 D 81 D 50 D 12 S 32 X 0 R 2 R 2 D 32 I 40 X 0 S 61 X 0 R 1 R 0 I 0 R 1 D 80 D 63 I 6 N 37 I 2 N 43 N 12 X 0 S 6 R 0 N 25 S 80 D 91 I 24 S 87 N 65 D 10 D 76 R 1 N 96 S 56 X 1 D 85 S 35 D 41 D 45 D 27 X 0 S 16 I 81 S 72 D 31 D 97 I 89 D 29 I 79 X 0 S 13 N 71 R 1 X 0 X 1 D 28 N 42 I 9 N 38 I 1 S 47 S 90 S 11 I 11 R 2 X 0 D 37 I 2 X 1 D 29 S 86 D 93 S 96 D 54 R 1 S 95 S 56 N 89 S 61 I 91 N 87 S 53 X 1 D 82 R 0 X 0 D 30 X 0 X 0 N 86 I 13 N 6 D 95 I 45 X 0 D 71
test 1 - 74 98 74 - - - - 0 98 74 33 0 7 69 98 83 - - 74 33 0 7 69 98 83 7 0 69 33 83 98 74 - - - 74 33 0 7 69 98 83 - - 0 7 33 55 67 69 74 79 83 98 74 33 0 7 69 67 55 98 83 79 74 33 0 7 69 67 55 98 83 79 - - - 0 - - 0 - 0 0 7 33 42 55 67 69 74 78 79 83 98 0 - - - - 0 7 12 33 39 42 55 67 69 74 78 79 83 98 74 33 0 7 12 69 67 55 42 39 98 83 79 78 - 12 7 0 39 42 55 67 69 33 78 79 83 98 74 0 0 7 12 33 39 42 54 55 67 69 74 78 79 83 98 0 7 12 33 39 42 54 55 67 69 74 78 79 83 98 74 33 0 7 12 69 67 55 42 39 54 98 83 79 78 - 0 7 12 33 39 42 54 55 67 69 74 78 79 83 98 0 7 12 33 39 42 54 55 67 69 74 78 79 83 96 98 - - 12 7 0 39 54 42 55 67 73 69 33 78 79 96 83 98 74 98 0 - 0 0 55 0 7 10 12 33 39 42 54 55 67 69 73 74 78 79 83 96 98 67 10 12 7 0 39 43 54 42 55 67 73 69 33 78 79 96 83 98 74 0 7 10 12 33 39 42 43 54 55 67 69 73 74 78 79 83 96 98 39 98 - - - 10 12 7 0 39 43 54 42 55 67 73 69 33 78 79 96 83 98 74 0 7 10 12 33 39 42 43 54 55 67 69 73 74 78 79 83 96 98 10 12 7 0 39 43 54 42 55 67 73 69 33 78 79 96 83 98 74 98 - 0 - - 74 33 0 7 12 10 21 69 67 55 42 39 54 43 73 98 83 79 78 96 - 0 7 9 10 12 21 33 39 42 43 54 55 67 69 73 74 78 79 83 96 98 - 9 10 16 21 12 7 0 39 43 54 42 55 67 73 69 33 78 79 83 96 83 98 74 74 33 0 7 12 10 9 21 16 69 67 55 42 39 54 43 73 98 83 79 78 96 83 74 33 0 7 12 10 9 21 16 69 67 55 42 39 54 43 73 98 83 79 78 96 83 - - - 0 0 98 98 98 - 0 7 9 10 12 16 21 33 39 42 43 54 55 67 69 73 74 78 79 83 83 86 96 98 74 33 0 7 12 10 9 21 16 69 67 55 42 39 54 43 73 98 83 79 78 96 83 86 - 9 16 21 12 7 0 39 43 54 42 55 67 73 69 33 78 79 86 83 96 83 98 74 0 - - 0 7 9 12 16 21 33 33 39 42 43 54 55 67 69 73 74 78 83 83 86 96 98 0 7 9 12 16 21 33 33 39 42 43 54 55 67 69 73 74 78 83 83 86 96 98 - - 9 16 21 12 7 0 33 39 43 54 42 55 67 69 33 78 86 83 96 83 98 73 7 - 98 - 73 33 0 7 12 9 21 16 69 67 55 42 39 33 54 43 98 83 78 96 83 86 0 0 - 33 - 0 7 9 12 16 21 26 33 33 39 42 43 54 55 67 69 73 78 83 83 86 96 98 83 0 0 7 9 12 16 21 26 33 33 39 42 43 54 55 67 69 71 73 78 83 83 86 96 98 9 16 26 21 12 7 0 33 39 43 54 42 55 67 71 69 33 78 86 83 96 83 98 73 9 16 26 21 12 7 0 33 39 43 54 42 55 67 71 69 33 78 86 83 96 83 98 73 - 9 - 73 33 0 7 12 9 21 16 26 69 67 55 42 39 33 54 43 71 98 83 78 96 83 86 - - 5 9 20 16 26 21 12 7 0 33 39 43 54 42 67 71 69 33 78 86 83 96 83 98 73 96 98 - - - - - - 98 86 73 33 0 7 5 12 9 21 16 20 26 69 67 42 39 33 54 43 46 71 98 83 78 96 83 86 90 - - 5 9 20 16 28 26 21 12 7 0 33 46 43 54 42 67 71 69 33 79 78 90 86 83 96 83 98 73 5 9 20 16 28 26 21 12 7 0 33 46 43 54 42 67 71 69 33 79 78 90 86 83 96 83 98 73 98 - - 73 33 0 7 5 5 12 9 21 16 20 26 28 69 67 42 33 38 54 43 46 71 98 83 78 73 79 96 83 86 5 5 9 20 16 28 26 21 12 7 0 38 33 46 43 54 42 67 71 69 33 73 79 78 86 83 96 83 98 73 73 33 0 7 5 5 12 9 21 16 20 26 28 69 67 42 33 38 54 43 46 71 98 83 78 73 79 96 83 86 - 98 test 2 - - - - 4 4 4 4 - - 4 4 4 - 4 - - 4 96 4 96 39 4 96 39 9 76 96 4 9 39 76 96 - 96 - - 4 4 9 76 96 96 - - 96 - - 47 20 76 9 96 4 - - - 96 - 4 - - - - 4 9 11 20 29 34 47 49 66 74 75 76 96 96 - - - 4 9 11 20 29 47 49 66 74 75 76 96 - 96 4 96 9 76 20 11 47 29 37 49 74 66 75 - - 96 - - 11 4 9 11 20 29 37 47 49 66 74 75 96 - - - - 11 37 29 65 66 75 74 49 47 20 9 96 4 4 96 9 11 47 29 37 42 49 74 66 65 75 - 4 1 65 - - - 4 1 96 9 11 47 29 37 42 49 74 66 65 75 94 1 - - 98 - 9 - 4 1 96 9 11 47 29 37 42 42 49 74 66 65 75 94 98 1 4 9 11 29 37 42 42 47 49 65 66 74 75 94 96 98 - 1 1 4 1 96 9 11 47 29 37 42 42 49 74 66 65 63 75 94 98 1 - - 1 4 1 96 9 11 47 29 37 42 42 49 74 66 65 63 75 94 98 29 98 1 1 4 9 11 28 29 37 42 42 47 63 65 66 74 75 94 96 98 - 1 4 9 11 28 29 37 42 42 47 63 65 66 74 75 94 96 98 - 98 98 - 1 4 1 96 9 11 47 29 28 37 42 42 74 66 65 63 71 75 94 78 98 98 1 4 9 11 28 29 37 42 42 47 63 65 66 71 74 75 78 94 96 98 74 1 4 9 11 28 29 37 42 42 47 63 65 66 71 74 75 78 94 96 98 - 1 28 42 42 37 29 63 65 71 66 92 78 94 75 74 47 11 9 98 96 4 - - 4 1 96 9 11 47 29 28 12 37 42 42 74 66 65 63 59 71 75 74 94 78 92 98 - 4 1 0 96 9 11 47 29 28 12 37 42 42 74 66 65 63 59 71 75 74 94 78 92 94 98 98 98 98 98 98 98 66 - 0 - 98 98 4 1 0 96 9 11 42 29 28 12 12 20 18 13 14 26 37 42 74 66 65 63 59 71 75 74 94 78 92 94 98 - 0 1 4 9 11 12 12 13 14 18 20 26 28 29 37 42 42 59 63 65 66 71 74 74 75 78 92 94 94 96 98 0 1 14 13 18 26 20 12 12 28 42 37 29 59 63 65 71 66 74 92 78 94 94 75 74 42 11 9 98 96 4 98 0 1 14 13 18 26 20 12 12 28 42 37 29 59 63 65 71 66 74 92 78 94 94 75 74 42 11 9 98 96 4 - 0 1 14 13 18 26 20 12 12 28 42 37 29 59 63 65 71 66 74 92 78 94 94 75 74 42 11 9 98 96 4 - - 0 1 4 9 11 12 12 13 14 18 20 26 28 29 37 42 42 59 63 65 66 71 74 74 75 78 92 94 94 96 98 0 1 4 9 11 12 12 13 14 18 20 26 28 29 37 42 42 59 63 65 66 71 74 74 75 78 92 94 94 96 98 71 - - - - 4 1 0 96 9 11 42 29 28 12 12 20 18 13 14 26 37 42 74 66 65 63 59 71 75 74 94 78 84 94 98 98 - test 3 - - - 77 77 - - 13 - 13 77 - - 13 - - 13 - 77 13 - - 13 77 34 - - 13 34 77 13 34 77 77 13 - 77 13 34 - 77 13 - 13 - 77 77 13 34 14 38 65 62 77 13 34 14 38 65 62 - 14 46 62 65 38 34 13 84 77 38 - - - 13 - 65 - - - - - - 11 - - - - 98 - - 77 13 11 34 14 38 65 62 46 44 45 53 84 97 98 98 98 - - - 98 97 11 - - - - - - 11 - 98 11 11 13 14 25 34 38 44 45 46 53 62 65 76 77 84 94 97 98 98 - 11 25 14 45 44 53 46 62 76 65 38 34 13 94 98 98 97 84 77 - 77 13 11 34 25 38 65 46 44 45 53 76 66 84 80 94 98 98 - - 77 13 11 34 25 38 65 46 44 45 53 76 66 84 80 94 98 98 - - - 98 11 15 25 45 44 53 46 66 76 65 34 13 80 98 98 94 84 77 - - 11 11 - - - 11 - 11 15 29 25 45 44 53 46 66 76 65 34 13 89 98 98 94 84 77 11 11 13 15 25 29 34 44 45 46 53 65 66 76 77 84 89 94 98 98 98 11 13 15 25 29 34 44 45 46 65 66 76 77 84 89 94 98 98 - 11 77 13 11 34 25 15 29 65 46 44 45 76 66 84 94 89 98 98 - - 7 11 13 15 25 29 34 44 45 46 65 66 76 77 84 89 94 98 - 7 11 15 29 25 45 44 50 46 66 76 65 34 13 89 98 94 84 77 - - 7 13 15 25 29 34 44 45 46 50 65 66 76 77 84 89 94 98 - - 77 13 7 34 25 29 65 46 44 43 43 45 50 76 66 75 84 94 89 98 97 - 7 29 25 43 43 45 44 50 46 75 66 76 65 34 13 89 97 98 94 84 77 - 7 13 25 29 34 43 43 44 45 46 50 65 66 75 76 77 84 89 94 97 98 - 77 13 7 34 25 29 65 46 44 43 43 45 50 76 66 75 84 94 89 98 97 98 7 29 25 43 43 45 44 50 46 75 66 76 65 34 13 89 97 98 94 84 77 7 13 25 29 34 43 43 44 45 46 50 65 66 75 76 77 84 89 94 97 98 98 7 25 7 29 25 43 43 45 44 62 50 46 75 66 76 65 34 13 89 97 98 94 84 77 25 - 7 7 13 25 29 34 43 43 44 45 46 50 59 62 65 66 75 76 77 84 89 94 97 98 - - 7 29 25 43 43 45 44 59 62 50 46 75 66 76 65 34 13 89 97 98 94 84 77 - - - 7 test 4 - 2 - 2 - 2 2 2 - 2 2 - - 7 60 2 2 7 60 - 35 11 7 66 60 2 66 66 2 7 11 35 60 66 66 35 11 7 66 60 2 35 11 7 74 66 60 2 - 35 11 7 74 66 60 2 74 - - 2 60 7 11 35 66 74 74 74 35 11 7 74 66 60 2 - - 2 7 11 35 60 66 74 - 74 74 74 2 2 60 7 11 35 38 46 66 74 2 60 7 11 35 38 46 66 74 - 46 38 35 11 7 84 74 66 60 2 74 46 38 35 11 7 84 74 66 60 2 2 2 2 7 8 11 35 38 46 60 66 74 84 74 2 - 84 8 32 46 38 35 11 7 84 74 66 60 2 - - 2 60 7 11 8 35 32 38 46 66 64 74 84 90 8 32 46 38 35 11 7 64 90 84 74 66 60 2 2 60 7 11 8 35 32 38 46 66 64 74 84 90 - 2 7 8 11 32 35 38 46 60 62 64 66 74 84 90 - - 2 7 8 11 32 35 38 46 47 60 62 64 66 74 84 90 90 90 - 2 2 60 6 11 8 35 32 38 46 47 66 64 62 62 74 84 75 90 2 6 8 11 32 35 38 46 47 60 62 62 64 66 74 75 84 90 90 2 - - 8 34 32 47 46 38 35 11 6 62 62 64 75 90 84 74 66 60 2 - - - 62 2 2 60 6 11 8 35 32 34 38 46 47 66 64 62 62 74 73 84 75 90 - - - 9 8 34 32 46 38 35 11 6 62 62 64 73 75 90 84 74 66 47 2 2 6 8 9 11 32 34 35 38 46 47 62 62 66 73 74 75 84 90 2 8 - 2 6 8 9 11 32 34 35 38 46 47 62 62 66 73 75 84 90 - 2 90 - 9 8 15 32 34 32 46 38 35 11 6 61 62 62 75 90 84 73 66 47 1 9 8 15 32 34 32 46 38 35 11 6 61 62 62 75 90 84 73 66 47 1 - 6 73 - 1 47 6 11 8 9 35 32 15 24 34 32 38 46 66 62 61 62 73 84 75 90 - 90 9 8 24 15 32 34 32 46 38 35 11 6 61 62 62 75 90 84 73 66 47 1 - test 5 - 73 - - 73 77 - - - - 25 - 25 77 73 - - 73 25 77 77 25 - 25 86 77 73 - 73 25 77 86 25 73 77 86 73 25 77 86 - 25 73 77 86 73 25 12 77 86 73 25 12 77 86 - 73 25 12 77 86 12 25 73 77 86 86 - 12 86 - - - 86 - - 12 62 25 86 86 77 73 - - 12 62 25 86 86 77 73 - 86 73 25 12 62 77 86 - - - - 86 73 25 12 62 77 86 - - - - - 12 25 29 62 77 86 - - 91 12 25 29 62 77 86 91 12 29 25 91 86 77 62 91 - - - - - - 12 12 29 25 64 91 86 77 62 - - 12 - 7 12 29 25 91 86 77 62 7 12 29 25 91 86 77 62 - 25 - 7 21 12 29 25 91 86 77 62 - 7 91 - 91 0 7 21 12 60 29 25 91 91 86 77 62 - 0 62 25 12 7 0 21 29 60 34 77 75 86 91 91 0 7 12 21 25 29 34 60 62 75 77 86 91 91 - - - - - 0 - - 0 91 0 7 21 12 27 34 29 25 75 91 91 86 77 60 60 25 12 7 0 21 29 27 34 77 75 86 91 91 0 0 7 21 12 27 34 29 25 75 91 91 86 77 60 0 7 21 12 27 34 29 25 75 91 91 86 77 60 - 0 7 12 21 25 27 29 34 60 75 77 86 91 91 - - - 60 25 12 7 0 8 21 29 27 34 77 75 86 91 91 - - - 0 8 7 21 12 27 34 29 25 75 91 91 86 77 60 60 25 12 7 0 8 21 29 27 34 41 77 75 86 91 91 0 34 0 8 7 21 12 27 41 34 29 25 75 91 91 86 77 60 - 0 8 7 21 12 27 41 34 29 25 75 91 91 86 77 60 91 0 8 7 21 12 27 41 34 29 25 75 91 91 86 77 60 91 0 8 7 21 12 27 41 34 29 25 62 75 91 91 86 77 60 60 25 12 7 0 8 21 29 27 34 41 77 75 62 86 91 91 - - - 91 - 91 0 8 7 21 12 27 41 34 29 25 73 67 62 75 91 91 86 77 60 0 0 - - 91 0 - - 91 0 8 7 21 12 27 41 34 29 25 71 73 67 62 75 91 91 86 77 60 60 25 12 7 0 8 21 29 27 34 41 77 75 62 67 73 71 86 91 91 - 60 25 12 7 0 8 21 29 27 34 41 77 75 62 67 73 71 86 91 91 0 8 7 21 12 27 41 34 29 25 71 73 67 62 75 91 91 86 77 60 - - - 0 - - 60 25 12 7 0 8 8 21 24 27 34 41 39 38 77 75 62 67 73 71 86 91 87 91 0 7 8 8 12 21 24 25 27 34 38 39 41 41 60 62 67 71 73 75 77 86 87 91 91 91 0 91 0 7 8 8 12 21 24 25 27 34 38 39 41 41 60 62 67 71 73 75 77 86 87 91 91 67 0 0 - 91 - 8 test 6 - - - 17 - - 64 17 10 29 - 64 10 17 29 54 64 - 10 17 29 54 64 - - - 64 17 10 29 18 54 93 10 10 17 18 29 54 64 93 64 17 10 29 18 54 93 - - - 93 10 18 54 29 17 93 64 10 64 93 0 - - - 8 7 0 10 18 29 17 93 54 0 7 8 10 17 18 29 54 93 - 8 7 0 10 18 29 17 93 54 93 0 7 8 10 17 18 29 53 54 93 - 0 - 93 - 54 17 10 0 7 8 29 18 53 52 93 93 93 - - - - - - 0 - 0 7 8 10 17 18 29 47 52 53 54 86 93 0 - - 18 - - 94 - - 0 - - 54 17 10 0 7 8 15 29 53 52 47 93 86 68 75 94 - 0 7 8 10 15 17 29 47 52 53 54 68 75 86 93 94 - - 44 0 - 0 0 7 8 10 15 17 29 44 47 51 52 53 68 75 81 83 86 93 94 94 - 75 - 6 - 94 0 6 7 8 10 15 17 25 29 44 47 51 52 53 62 68 75 81 83 86 93 94 0 6 7 8 10 15 17 25 29 44 47 51 52 53 62 68 75 81 83 86 93 94 - 94 94 6 8 7 0 15 10 25 37 44 51 47 52 29 17 62 83 81 75 68 86 94 93 53 0 - 94 94 94 - 0 94 0 6 6 6 7 8 10 15 17 25 27 29 37 44 47 47 51 53 62 68 73 75 81 83 84 86 87 93 94 6 94 - 6 6 6 8 7 0 15 10 27 25 37 44 47 51 47 29 17 56 62 73 84 83 81 75 68 87 86 94 93 53 6 6 6 8 7 0 15 10 27 25 37 44 47 51 47 29 17 56 62 69 73 84 83 81 75 68 87 86 94 93 53 94 0 6 6 6 7 8 10 15 17 25 27 29 37 44 47 47 47 51 53 56 62 68 69 73 75 81 83 84 86 87 93 94 0 6 6 6 7 8 10 15 17 25 27 29 37 44 47 47 47 51 53 56 62 68 69 73 75 81 83 84 86 87 93 94 53 17 10 0 7 6 6 6 8 15 29 25 27 47 44 37 51 47 47 93 86 68 62 56 75 73 69 81 83 84 87 94 - - 94 0 - 94 - 56 0 6 6 6 7 8 10 15 17 25 27 29 37 44 47 47 47 51 53 56 58 62 68 69 73 75 81 83 84 86 87 93 94 94 - 6 6 6 8 7 0 15 10 27 25 37 44 47 47 51 47 29 17 58 56 62 69 73 84 83 81 75 68 87 86 94 94 93 53 8 - - 53 17 10 0 7 6 6 6 8 15 10 29 25 27 47 44 37 51 47 47 93 86 68 62 56 58 75 73 69 81 83 84 87 94 94 - 0 6 6 6 7 8 10 10 15 17 25 27 29 37 39 44 47 47 47 51 53 56 58 62 68 69 73 75 81 83 84 86 87 91 93 94 94 0 0 6 6 6 7 8 10 10 15 17 25 27 29 37 39 44 47 47 47 51 53 56 58 62 68 69 73 75 81 83 84 86 87 91 93 94 94 - - - 0 6 6 6 7 8 10 10 15 17 25 27 29 37 39 44 47 47 47 51 53 56 58 62 68 69 73 75 81 83 84 86 87 91 93 94 94 0 - 94 6 6 6 8 7 0 10 15 10 27 25 39 37 44 47 47 51 47 29 17 58 56 62 72 69 74 73 84 83 81 75 68 91 87 86 97 94 94 93 53 - - 6 6 6 8 7 0 10 15 10 27 25 39 37 44 47 47 51 47 29 17 58 56 62 72 69 74 73 84 83 81 75 68 91 87 86 97 94 94 93 53 97 0 0 25 0 97 - - test 7 - - - - - - - - - 41 6 7 29 12 31 88 55 - 88 - - 6 6 7 12 29 31 41 55 88 6 7 12 29 31 41 55 88 - - 5 6 7 12 26 29 31 41 44 45 55 88 88 - 5 9 26 12 31 29 7 6 45 44 55 88 41 - - 5 41 6 5 7 29 12 9 26 31 88 55 44 45 - - - - 5 - - - - - - - 5 9 26 12 39 31 29 7 6 46 45 75 85 76 55 89 88 41 5 - - 5 - 41 6 5 7 29 12 9 26 31 39 88 55 45 46 76 75 85 89 - - 89 - - - 5 9 26 26 12 29 39 31 29 7 6 46 45 75 79 76 55 89 85 41 - 41 6 5 7 29 12 9 26 26 31 29 39 85 55 45 46 76 75 79 89 - 5 6 7 9 12 26 26 29 29 31 39 41 45 46 55 60 75 76 79 85 89 91 - 41 6 5 7 29 12 9 26 26 31 29 39 85 55 45 46 76 75 60 79 89 91 - 1 5 6 7 9 12 26 26 29 29 31 39 41 45 46 55 60 75 76 79 85 89 91 - - 41 6 5 1 7 29 12 9 26 26 31 29 39 85 55 45 46 76 75 60 79 76 89 91 - 41 6 5 1 7 29 12 9 26 26 31 29 39 85 55 45 46 76 75 60 79 76 89 91 1 1 5 6 7 9 12 26 26 28 29 29 31 39 41 45 46 55 60 75 76 76 79 85 89 91 91 91 1 89 41 6 5 1 7 6 29 12 9 26 26 28 31 29 39 85 55 45 46 76 75 60 79 76 89 91 91 1 - 1 5 6 6 7 9 12 26 26 28 29 29 31 39 41 45 46 55 60 76 76 79 85 89 91 91 - - 1 5 6 9 28 26 26 12 29 36 39 31 29 7 6 46 45 60 76 79 76 55 91 91 89 85 41 5 26 1 5 6 6 7 9 12 26 26 28 29 29 31 36 39 41 43 45 46 55 60 76 76 79 85 89 91 91 - - 1 1 - 1 1 5 6 9 28 26 26 12 29 36 39 31 29 7 6 43 46 45 60 76 79 76 55 91 91 89 85 41 - 1 91 91 - 1 91 - 1 - - 41 6 5 1 7 6 29 12 9 26 26 28 31 29 39 36 85 55 45 43 46 76 60 79 76 89 85 91 91 91 41 6 5 1 7 6 29 12 9 26 26 28 31 29 39 36 85 55 45 43 46 76 60 79 76 89 85 91 91 - 1 - 1 41 1 5 6 9 28 28 26 26 12 29 36 39 31 29 7 6 43 46 45 60 76 79 76 55 85 91 91 89 85 41 1 - - 91 - - 41 6 5 1 7 6 28 12 9 26 26 28 31 29 39 36 35 85 55 45 43 46 46 76 60 56 79 76 89 85 91 91 41 6 5 1 7 6 28 12 9 26 26 28 31 29 39 36 35 85 55 45 43 46 46 76 60 56 79 76 89 85 91 91 - - - 41 6 5 1 7 6 28 12 9 26 26 28 31 29 39 36 35 85 55 45 43 46 46 76 60 56 79 76 89 85 91 91 - - 91 1 - 36 1 1 5 6 9 28 26 26 12 29 35 36 39 31 28 7 6 43 46 46 45 56 70 60 76 79 76 55 85 91 91 89 85 41 - 1 5 6 6 7 9 12 26 26 28 28 29 31 35 36 39 41 43 45 46 46 55 56 60 70 76 76 79 85 85 89 91 91 41 6 5 1 7 6 28 12 9 26 26 28 31 29 39 36 35 85 55 45 43 46 46 76 60 56 70 79 76 89 85 91 91 6 - 1 5 6 6 7 9 12 26 26 27 28 28 29 31 35 36 39 41 43 45 46 46 55 56 60 70 76 76 79 85 85 89 91 91 - - 1 - - 29 - 1 5 6 6 7 9 12 26 26 27 28 28 29 31 35 36 39 41 43 45 45 46 46 55 56 60 70 76 76 79 85 85 85 89 90 91 91 91 1 91 1 5 6 9 27 28 26 26 12 29 35 36 39 31 28 7 6 43 45 46 46 45 56 70 60 76 79 76 55 85 85 90 91 91 89 85 41 1 5 6 6 7 9 12 26 26 27 28 28 29 31 35 36 39 41 43 45 45 46 46 55 56 60 70 76 76 79 85 85 85 89 90 91 91 1 41 6 5 1 7 6 28 12 9 26 26 28 27 31 29 39 36 35 85 55 45 43 46 45 46 76 60 56 70 79 76 89 85 85 91 90 91 1 1 - - - 91 1 6 9 27 28 26 26 12 29 35 36 39 31 28 7 6 45 46 46 45 56 62 70 60 76 79 76 55 85 85 90 91 91 89 85 41 1 1 6 6 7 9 12 26 26 27 28 28 29 31 35 36 39 41 45 45 46 46 55 56 60 62 70 76 76 79 85 85 85 89 90 91 91 - 91 1 6 6 7 9 12 21 26 26 27 28 28 29 35 36 39 41 45 45 46 46 55 56 60 62 70 76 76 79 82 85 85 85 89 90 91 91 - test 8 - - - 31 54 78 95 31 - - 31 54 62 78 95 - 31 - - - 95 - 31 62 54 95 78 - 31 - 31 54 62 78 95 - 31 31 62 54 95 78 31 62 54 95 78 31 - 31 78 54 31 40 62 95 31 40 54 62 78 95 78 54 31 0 40 62 95 - - - 0 6 0 2 6 31 40 54 62 78 95 - - - - 78 54 31 0 6 2 24 40 62 95 - - 95 - 0 - - 0 - - 78 54 24 0 6 2 40 62 95 81 79 89 0 95 - - - - - 1 2 11 9 6 0 40 24 62 54 79 89 81 95 78 0 95 - - 78 40 24 0 6 2 1 2 9 11 62 95 81 79 89 95 - - - - - 95 0 1 2 2 6 9 11 24 40 62 78 79 81 89 91 95 0 0 0 - 9 0