// Given a doubly linked list, besides the next and previous pointers, each // element has a child pointer, which may or may not point to a separate doubly // linked list. These child lists may have one or more children of their own. // Now do the following: // a. Flattern this multilevel data structure // b. Restore the original structure from the flatterned structure // e.g. // L1 --> L2 --> L3 --> L7 --> L8 // | // v // L4 --> L5-->L6 // WIll be flattened to // L1 --> L2 --> L3 -->L4 -->L5-->L6-->L7-->L8 #include <iostream> #include <cstdio> #include <cstdlib> #include <unordered_map> using namespace std; struct Node{ int val; Node* next; Node* child; Node(int value):val(value),next(NULL),child(NULL) {} }; Node* createTree(){ Node* head=new Node(1); head->next=new Node(2); head->next->next=new Node(3); head->next->next->next=new Node(7); head->next->next->next->next=new Node(8); head->next->next->child=new Node(4); head->next->next->child->next=new Node(5); head->next->next->child->next->next=new Node(6); head->next->next->child->next->child=new Node(50); head->next->next->child->next->child->next=new Node(51); return head; } void printList(Node* head){ Node* current=head; while(current){ cout<<current->val<<" "; if(current->child){ cout<< "--"; printList(current->child); cout<< "--"; } current=current->next; } } void restoreList(Node* head,unordered_map<Node*,Node*>& oldPositions ){ if(oldPositions.size()==0) return; Node* current=head; while(current){ if(oldPositions.find(current)!=oldPositions.end()){ Node* oldNext=oldPositions[current]->next; oldPositions[current]->next=NULL; restoreList(current->next, oldPositions); current->child=head->next; current->next=oldNext; oldPositions.erase(current); } current=current->next; } } //to be implemented Node* flatList(Node* head, Node*& tail, unordered_map<Node*,Node*>& oldPositions){ if(NULL==head){ tail=NULL; return NULL; } Node* current=head; while(current){ Node* next=current->next; if(current->child){ Node* flatTail=NULL; Node* flatHead=flatList(current->child, flatTail,oldPositions); oldPositions[current]=flatTail; current->child=NULL; current->next=flatHead; flatTail->next=next; } if(current->next==NULL) tail=current; current=current->next; } return head; } int main(int argc, char const *argv[]) { Node* head=createTree(); printList(head); Node* temp=NULL; unordered_map<Node*,Node*> oldPositions; Node* flatHead=flatList(head, temp, oldPositions); cout<<endl; printList(flatHead); cout<<" map size "<<oldPositions.size()<< endl; restoreList(head, oldPositions); cout<<" map size "<<oldPositions.size()<< endl; printList(head); return 0; }
Standard input is empty
1 2 3 --4 5 --50 51 --6 --7 8 1 2 3 4 5 50 51 6 7 8 map size 2 map size 0 1 2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3 --2 3