#include <iostream> #include <string> #include <vector> #include <iterator> #include <algorithm> typedef std::vector<std::string> String1D; typedef std::vector<String1D> String2D; typedef std::vector<int> Int1D; typedef std::vector<Int1D> Int2D; Int1D m_alpha; Int1D m_beta; int m_size_alpha; int m_size_beta; Int2D m_graph_mat; using namespace std; int main() { int size; //numarul de noduri int index_beta = 0; //beta indicele cout << "Numarul de noduri : "; cin >> size; m_size_alpha = size; m_alpha.resize(size); m_beta.resize(size*size); m_alpha[0] = 0; for (int i = 0; i < size; i++) //desigur, toate nodurile { char c = 65 + i; //c = "A" sau "B, etc ... char succ = 'A'; //iniÈializeazÄ succ la întâmplare while (succ != '0') { cout << "succesor " << c << " : "; cin >> succ; if (succ != '0') { m_beta[index_beta] = succ - 65; //succesorul tocmai am introdus, dar figura: 'A' = 0 'B' = 1, etc ... index_beta++; //urmatoarea caseta pentru urmatorul succesor } cout << endl; } m_alpha[i + 1] = index_beta; } m_size_beta = index_beta; cout << "Initializarea Graph" << endl << endl; for (int i = 0; i < m_size_alpha; i++) { cout << "Virfuri adiacente cu " << (char)(i + 65) << " sunt : "; for (int j = m_alpha[i]; j < m_alpha[i + 1]; j++) { cout << "[" << (char)(m_beta[j] + 65) << "] "; } cout << endl; } m_graph_mat = Int2D(m_size_alpha, Int1D(m_size_alpha)); for (int k = 0; k < m_size_alpha; k++) { for (int l = m_alpha[k]; l < m_alpha[k + 1]; l++) { m_graph_mat[k][m_beta[l]] = 1; } } cout << "Initializarea matricea de adiacenta" << endl << endl; for (int i = 0; i < m_size_alpha; i++) { for (int j = 0; j < m_size_alpha; j++) { cout << (int)m_graph_mat[i][j] << " "; } cout << endl; } Int2D mat(m_size_alpha, Int1D(m_size_alpha)); int i, j; for (i = 0; i < m_size_alpha; i++) { for (j = 0; j < m_size_alpha; j++) { mat[i][j] = 1 - m_graph_mat[i][j]; } } cout << "Matricea complementara" << endl << endl; for (int i = 0; i < m_size_alpha; i++) { for (int j = 0; j < m_size_alpha; j++) { cout << (int)mat[i][j] << " "; } cout << endl; } String2D masiv_C0(m_size_alpha, String1D(2)); for (int i = 0; i < m_size_alpha; i++) { masiv_C0[i][0] = 65 + i; for (int j = 0; j < m_size_alpha; j++) { if (mat[i][j] == 1) masiv_C0[i][1] = masiv_C0[i][1] + (char)(65 + j); } } String2D masiv_X0(m_size_alpha, String1D(2)); for (int i = 0; i < m_size_alpha; i++) { for (int j = i + 1; j < m_size_alpha; j++) { if ((masiv_C0[j][0].find(masiv_C0[i][0]) != string::npos) && (masiv_C0[j][1].find(masiv_C0[i][1]) != string::npos)) { masiv_X0[i][0] = masiv_C0[i][0]; masiv_X0[i][1] = masiv_C0[i][1]; break; } } } String2D masiv_Y1 = masiv_C0; for (size_t i = 0; i < masiv_X0.size(); ++i) { for (size_t j = 0; j < masiv_X0[i].size(); ++j) { auto& str = masiv_X0[i][j]; for (size_t cur = 0; cur < masiv_Y1.size(); ++cur) { auto iter = std::remove(masiv_Y1[cur].begin(), masiv_Y1[cur].end(), str); masiv_Y1[cur].erase(iter, masiv_Y1[cur].end()); } } } String2D::iterator iter = masiv_C0.begin(); while (iter != masiv_C0.end()) { std::copy((*iter).begin(), (*iter).end(), std::ostream_iterator<std::string>(cout, " ")); cout << "\n"; ++iter; } return(0); }
Standard input is empty
Numarul de noduri : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A : succesor A