#include<iostream> #include<cstdio> #include<sstream> #include<string> #include<cstring> #include<map> #include<set> #include<deque> #include<queue> #include<stack> #include<vector> #include<algorithm> #include<cmath> #include<cstdlib> #include<bitset> #include<cctype> #include<ctime> using namespace std; typedef long long ll; #define MOD 1e4 #define INF 1e9 #define EPS 1e-18 #define PI acos(-1) #define FOR(i,a,b) for(int i = a; i < b; ++i) #define REP(i,a,b) for(int i = a; i <= b; ++i) #define FORD(i,a,b) for(int i = a; i >= b; --i) #define FORV(i,vt) for(size_t i = 0; i < vt.size(); ++i) #define siz(x) (int)x.size() #define pb push_back #define m_p make_pair #define pii pair<int,int> #define pss pair<string, string> #define psi pair<string, int> #define mpsr make_pair(sender, receiver) #define mprs make_pair(receiver, sender) int myabs(int x) { return x < 0 ? -x : x; } long long gcd(long long x, long long y) { return y == 0 ? x : gcd(y, x % y); } int toInt(char xx) { return xx - '0'; } char toChar(int xx) { return xx + '0'; } bool isNum(char xx) { return ('0' <= xx && xx <= '9'); } bool isCharacter(char xx) { return (('a' <= xx && xx <= 'z') || ('A' <= xx && xx <= 'Z')); } bool isUpper(char xx) { return ('A' <= xx && xx <= 'Z'); } bool isLower(char xx) { return ('a' <= xx && xx <= 'z'); } bool isPalin(string x) { int len = x.length(); REP(i,0,len/2) { if (x[i] != x[len - 1 - i]) return false; } return true; } void swapInt(int &x, int &y) { x = x ^ y; y = x ^ y; x = x ^ y; } string tolowerStr(string x) { string ret = ""; FOR(i,0,siz(x)) { ret.pb(tolower(x[i])); } return ret; } string toupperStr(string x) { string ret = ""; FOR(i,0,siz(x)) { ret.pb(toupper(x[i])); } return ret; } template<class T> bool isInArray(T x, vector<T> vt) { FOR(i,0,siz(vt)) { if (vt[i] == x) { return true; } } return false; } string trim(string x) { int l = 0, r = x.size() - 1; char arr[] = { '\f', '\v', '\t', '\r', '\n', ' ' }; vector<char> delimiter(arr, arr + sizeof(arr) / sizeof(char)); while (isInArray(x[l], delimiter)) { l++; } while (isInArray(x[r], delimiter)) { r--; } return x.substr(l, r - l + 1); } vector<string> getToken(string x, vector<char> tokens) { int icounter = 0, lastIndex = x.length() - 1; vector<string> ret; for (;;) { string tmp = ""; while (icounter <= lastIndex && isInArray(x[icounter], tokens)) icounter++; while (icounter <= lastIndex && !isInArray(x[icounter], tokens)) { tmp.pb(x[icounter]); icounter++; } if (tmp.length() > 0) ret.pb(tmp); if (icounter > lastIndex) break; } return ret; } inline void clear_buffer() { string tmp; getline(cin, tmp); } int nextIndexInCircle(int n, int currentPosition, int firstPointIndex) { if (firstPointIndex == 0) { return (currentPosition + 1) % n; } else { if (currentPosition == n - 1) { return n; } else { return (currentPosition + 1) % n; } } } const int bfsz = 1 << 16; char bf[bfsz + 5]; int rsz = 0; int ptr = 0; char gc() { if (rsz <= 0) { ptr = 0; rsz = fread(bf, 1, bfsz, stdin); if (rsz <= 0) return EOF; } --rsz; return bf[ptr++]; } void ga(char &c) { c = EOF; while (!isalpha(c)) c = gc(); } int gs(char s[]) { int l = 0; char c = gc(); while (isspace(c)) c = gc(); while (c != EOF && !isspace(c)) { s[l++] = c; c = gc(); } s[l] = '\0'; return l; } template<class T> bool gi(T &v) { v = 0; char c = gc(); while (c != EOF && c != '-' && !isdigit(c)) c = gc(); if (c == EOF) return false; bool neg = c == '-'; if (neg) c = gc(); while (isdigit(c)) { v = v * 10 + c - '0'; c = gc(); } if (neg) v = -v; return true; } template<class T> inline void checkmin(T &a, T b) { if (b < a) a = b; } /* example of very quick - read : * read int : gi(n) <=> scanf("%d",&n); * read char : ga(x) <=> scanf("%c",&x); */ /*** Fenwick Tree store FREQUENCY value ***/ #define LSOne(S) (S & (-S)) #define maxVal 100001 void ft_create(vector<int> &t, int n) { t.assign(n + 1, 0); } int ft_get(vector<int> &t, int idx) { int ret = 0; while (idx > 0) { ret += t[idx]; idx -= LSOne(idx); } return ret; } void ft_update(vector<int> &t, int idx) { int incrementValue = 1; while (idx < maxVal) { t[idx] += incrementValue; idx += LSOne(idx); } } /*** IMPLEMENTATION ***/ const int maxn = 5 * (1e5) + 5; bool exitInput = false; int n; int a[maxn]; int left_equal[maxn], right_equal[maxn]; int left_bigger[maxn], right_bigger[maxn]; map<pair<int, int> , bool> counted; int n_equal_left[maxn], n_equal_right[maxn]; void read() { gi(n); REP(i,1,n) gi(a[i]); } void current_Stack(deque<int> st) { printf("=== Current Stack : \n"); while (!st.empty()) { printf("%d ", st.back()); st.pop_back(); } printf("\n"); } void build_bigger_from_left() { deque<int> st; st.push_back(1); left_bigger[1] = -1; int i = 2; while (i <= n) { while (!st.empty() && a[st.front()] <= a[i]) { st.pop_front(); } if (!st.empty()) { left_bigger[i] = st.front(); } else { left_bigger[i] = -1; } st.push_front(i); i++; } } void build_equal_from_left() { deque<int> st; st.push_back(1); left_equal[1] = -1; int i = 2; while (i <= n) { while (!st.empty() && a[st.front()] < a[i]) { st.pop_front(); } if (!st.empty() && a[st.front()] == a[i]) { left_equal[i] = st.front(); } else { left_equal[i] = -1; } st.push_front(i); i++; } } void build_bigger_from_right() { deque<int> st; st.push_back(n); right_bigger[n] = -1; int i = n - 1; while (i >= 1) { while (!st.empty() && a[st.back()] <= a[i]) { st.pop_back(); } if (!st.empty()) { right_bigger[i] = st.back(); } else { right_bigger[i] = -1; } st.push_back(i); i--; } } void build_equal_from_right() { deque<int> st; st.push_back(n); right_equal[n] = -1; int i = n - 1; while (i >= 1) { while (!st.empty() && a[st.front()] < a[i]) { st.pop_front(); } if (!st.empty() && a[st.front()] == a[i]) { right_equal[i] = st.front(); } else { right_equal[i] = -1; } st.push_front(i); i--; // printf("after i = %d, stack is :\n",i+1); // current_Stack(st); } } void build_n_equal_left() { n_equal_left[1] = 1; REP(i,2,n) { if (a[i] == a[i - 1]) { n_equal_left[i] = n_equal_left[i - 1] + 1; } else { n_equal_left[i] = 1; } } } void build_n_equal_right() { n_equal_right[n] = 1; FORD(i,n-1,1) { if (a[i] == a[i + 1]) { n_equal_right[i] = n_equal_right[i + 1] + 1; } else { n_equal_right[i] = 1; } } } void init() { build_bigger_from_left(); build_equal_from_left(); build_bigger_from_right(); build_equal_from_right(); build_n_equal_left(); build_n_equal_right(); a[0] = -10; a[n + 1] = -10; } void solve() { long long cnt = (ll) (n - 1); REP(i,1,n) { int j = i; while (j + 1 <= n && a[j + 1] == a[i]) { j++; } //cout << "j = " << j << endl; long long len = (ll) (j - i + 1); cnt += (len - 2) * (len - 1) / 2; i = j; } //cout << cnt << endl; REP(i,1,n) { long long lc = 0; long long lc1 = 0, lc2 = 0; int le_bigger, le_equal, ri_bigger, ri_equal; le_bigger = left_bigger[i]; le_equal = left_equal[i]; ri_bigger = right_bigger[i]; ri_equal = right_equal[i]; if (a[i] != a[i - 1] || a[i] != a[i + 1]) { if (le_bigger > 0) { if (ri_bigger > 0) { if (!counted[make_pair(le_bigger, ri_bigger)]) { if (a[ri_bigger] == a[ri_bigger + 1] && counted[make_pair(le_bigger, ri_bigger + 1)] == true) { lc2 = 1; } else { lc2 = n_equal_right[ri_bigger]; } if (a[le_bigger] == a[le_bigger - 1] && counted[make_pair(le_bigger - 1, ri_bigger)] == true) { lc1 = 1; } else { lc1 = n_equal_left[le_bigger]; } counted[make_pair(le_bigger, ri_bigger)] = true; counted[make_pair(ri_bigger, le_bigger)] = true; // printf("both bigger, i = %d, ghep cap : %d and %d\n", // i, le_bigger, ri_bigger); lc += lc1*lc2; } } if (ri_equal > 0) { if (!counted[make_pair(le_bigger, ri_equal)]) { if (a[ri_equal] == a[ri_equal - 1] && counted[make_pair(le_bigger, ri_equal - 1)] == true) { lc2 = 0; } else { lc2 = n_equal_right[ri_equal]; } lc1 = n_equal_left[le_bigger]; counted[make_pair(le_bigger, ri_equal)] = true; counted[make_pair(ri_equal, le_bigger)] = true; // printf("left big, right equal, i = %d, ghep cap : %d and %d\n", i, le_bigger, // ri_equal); lc += lc1*lc2; } } } if (le_equal > 0) { if (ri_bigger > 0) { if (!counted[make_pair(le_equal, ri_bigger)]) { if (a[le_equal] == a[le_equal - 1] && counted[make_pair(le_equal - 1, ri_bigger)] == true) { lc1 = 1; } else { lc1 = n_equal_left[le_equal]; } lc2 = n_equal_right[ri_bigger]; counted[make_pair(le_equal, ri_bigger)] = true; counted[make_pair(ri_bigger, le_equal)] = true; // printf("left equal, right big , i = %d, ghep cap : %d and %d\n", i, le_bigger, // ri_bigger); lc += lc1*lc2; } } if (ri_equal > 0) { if (!counted[make_pair(le_equal, ri_equal)]) { lc1 = n_equal_left[le_equal]; if (a[ri_equal] == a[ri_equal - 1] && counted[make_pair(le_equal, ri_equal - 1)] == true) { lc2 = 0; } else { lc2 = n_equal_right[ri_equal]; } counted[make_pair(le_equal, ri_equal)] = true; counted[make_pair(ri_equal, le_equal)] = true; // printf("both equal, i = %d, ghep cap : %d and %d\n", i, // le_equal, ri_equal); lc += lc1*lc2; } } } } // printf( // "i = %d, le_bigger = %d, le_equal = %d, ri_bigger = %d, ri_equal = %d, lc = %d\n", // i, le_bigger, le_equal, ri_bigger, ri_equal, lc); cnt += lc; } printf("%lld\n", cnt); } int main() { #ifndef ONLINE_JUDGE freopen("input.txt", "r", stdin); //freopen("output.txt", "w", stdout); #endif int ntest = 1; int itest = 1; //scanf("%d", &ntest); for (itest = 1; itest <= ntest; ++itest) { read(); if (exitInput) { break; } // if(itest > 1){ // printf("\n"); // } //cout << "Case " << itest++ << ": "; init(); solve(); } return 0; }
5000 42 18468 6335 26501 19170 15725 11479 29359 26963 24465 5706 28146 23282 16828 9962 492 2996 11943 4828 5437 32392 14605 3903 154 293 12383 17422 18717 19719 19896 5448 21727 14772 11539 1870 19913 25668 26300 17036 9895 28704 23812 31323 30334 17674 4665 15142 7712 28254 6869 25548 27645 32663 32758 20038 12860 8724 9742 27530 779 12317 3036 22191 1843 289 30107 9041 8943 19265 22649 27447 23806 15891 6730 24371 15351 15007 31102 24394 3549 19630 12624 24085 19955 18757 11841 4967 7377 13932 26309 16945 32440 24627 11324 5538 21539 16119 2083 22930 16542 4834 31116 4640 29659 22705 9931 13978 2307 31674 22387 5022 28746 26925 19073 6271 5830 26778 15574 5098 16513 23987 13291 9162 18637 22356 24768 23656 15575 4032 12053 27351 1151 16942 21725 13967 3431 31108 30192 18008 11338 15458 12288 27754 10384 14946 8910 32210 9759 24222 18589 6423 24947 27507 13031 16414 29169 901 32592 18763 1656 17411 6360 27625 20538 21549 6484 27596 4042 3603 24351 10292 30837 9375 11021 4597 24022 27349 23200 19669 24485 8282 4735 54 2000 26419 27939 6901 3789 18128 468 3729 14894 24649 22484 17808 2422 14311 6618 22814 9515 14310 7617 18936 17452 20601 5250 16520 31557 22799 30304 6225 11009 5845 32610 14990 32703 3196 20486 3094 14344 30524 1588 29315 9504 7449 25201 13459 6619 20581 19797 14799 15282 19590 20799 28010 27158 20473 23623 18539 12293 6039 24180 18191 29658 7959 6192 19816 22889 19157 11512 16203 2635 24273 20056 20329 22647 26363 4887 18876 28434 29870 20143 23845 1417 21882 31999 10323 18652 10022 5700 3558 28477 27893 24390 5076 10713 2601 2511 21004 26870 17862 14689 13402 9790 15256 16424 5003 10586 24183 10286 27089 31427 28618 23758 9833 30933 4170 2155 25722 17190 19977 31330 2369 28693 21426 10556 3435 16550 7442 9513 30146 18061 21719 3754 16140 12424 16280 25997 16688 12530 22550 17438 19867 12950 194 23196 3298 20417 28287 16106 24489 16283 12456 25735 18115 11702 31317 20672 5787 12264 4314 24356 31186 20054 913 10809 1833 20946 4314 27757 28322 19559 23647 27983 482 4145 23197 20223 7130 2162 5536 20451 11174 10467 12045 21660 26293 26440 17254 20025 26155 29511 4746 20650 13187 8314 4475 28023 2169 14019 18788 9906 17959 7392 10203 3626 26478 4415 9315 25825 29335 25875 24373 20160 11834 28071 7488 28298 7519 8178 17774 32271 1764 2669 17193 13986 3103 8481 29214 7628 4803 4100 30528 2626 1544 1925 11024 29973 13062 14182 31004 27433 17506 27594 22726 13032 8493 143 17223 31287 13065 7901 19188 8361 22414 30975 14271 29171 236 30834 19712 25761 18897 4668 7286 12551 141 13695 2696 21625 28020 2126 26577 21695 22659 26303 17372 22467 4679 22594 23852 25485 1019 28465 21120 23153 2801 18088 31061 1927 9011 4758 32171 20316 9577 30228 12044 22759 7165 5110 7883 17087 29566 3488 29578 14475 2626 25628 5630 31929 25424 28521 6903 14963 124 24597 3738 13262 10196 32526 1265 8261 6203 8117 5031 20327 29012 30772 6412 25548 21154 21521 29791 14925 30189 21764 4941 20852 18663 13830 30901 17714 18959 17579 8366 13008 11478 1201 26059 6440 2304 12761 19358 2325 6478 5109 21114 14888 19802 22851 14461 22429 12994 27385 19406 6541 31112 28705 12836 32357 6073 29351 18824 14486 20557 23217 1627 9358 8527 13358 29338 23272 23870 29362 12897 13023 29618 10113 12718 18697 11586 24042 24424 24130 24230 4566 6560 8933 22297 29856 12054 16963 3585 29735 6655 16973 21458 14370 22533 2964 2608 2484 912 11636 10068 22849 4676 12939 2224 22143 23755 6512 22742 20176 21460 17826 3222 17871 1627 31935 15206 31784 23851 17399 22280 22702 12194 12735 1638 26535 5557 1994 10177 25706 6963 10549 15882 301 14414 16642 19856 24856 13143 11463 27612 30878 20425 32679 1753 18444 28297 12674 10041 9314 876 20073 12819 611 1018 14933 28113 30696 13170 23832 20041 26489 28686 19091 19498 2590 25991 15146 19354 19315 18652 26741 22045 11259 336 8760 11193 7606 25265 12182 28504 3830 23776 20609 29293 5998 17550 29557 25562 31628 6468 29542 26130 31241 27814 29175 20602 6078 20216 8684 8214 23993 25825 5602 23393 15760 2671 26429 28028 4085 10076 18787 15499 24971 6288 23848 32605 504 21222 22664 5707 2364 9011 22172 27490 18241 12165 25543 7620 20914 7592 6705 31819 9233 751 25206 4976 1540 304 11423 21099 11248 13585 13649 2972 17865 22914 11076 21546 28713 17547 18679 1770 15263 8520 13986 28290 15945 2866 18541 23246 25509 28319 27871 9602 28324 21133 24473 27153 25088 28571 29764 29902 17104 14424 3528 11601 26970 14016 5566 29 21544 25348 2089 2944 12638 22410 26464 5050 4682 1589 11343 609 32061 21222 1759 29955 20889 14147 691 7950 12844 21431 25621 749 27068 4537 20784 18036 32227 15186 7039 9854 25630 11225 15749 19924 3360 32258 24767 4945 14956 23319 32727 25412 21026 20356 31002 22550 9497 18585 9516 17965 23343 8076 17914 16143 31197 21949 25073 20427 14607 26174 24430 32405 6706 20627 29813 19376 30094 16566 16037 14737 29142 30815 5995 8257 6653 23937 30839 20483 1356 21016 1132 18231 17842 14626 2012 32638 4187 19691 1651 5663 21635 10894 10354 21417 13453 14009 7263 22234 5455 16304 16635 26304 14257 149 11125 12318 4214 27110 24029 29201 21081 21319 16859 24051 24156 31362 15265 11904 3677 29644 26910 14903 3562 28490 24949 1283 13654 30675 2221 5403 6924 3832 19370 3879 20260 19009 22620 23972 30004 21946 9782 26505 12393 32686 25314 6699 5590 12723 5939 19038 6411 31462 6235 12509 9962 3960 6494 1516 25270 24938 28870 59 14701 13972 26265 15118 16216 24556 7816 18331 3040 30213 29289 28083 1955 16086 20711 24485 24775 8381 29816 25952 6542 18116 1680 17111 25899 23074 789 23978 18133 29957 28690 26114 10009 12942 15791 1724 21364 29 25185 24779 7201 5072 1886 21975 1072 11334 22868 26154 14296 32169 20826 9677 15630 28651 2599 3310 4694 4687 30081 10117 12250 26668 1529 26680 7865 29422 8406 8827 6817 7517 27727 28667 29088 27682 19965 1341 5687 6022 11663 14722 6065 29310 20416 17903 29874 17125 23942 32746 31763 28424 27532 4807 12269 9319 5603 31908 24308 23482 1013 21137 26631 24115 26810 4085 23557 12291 21294 29997 29153 1055 25346 14709 249 7492 13713 5132 30115 16440 7959 24723 29705 6996 1053 25270 7480 18239 26424 27919 10867 17660 32499 28487 21197 7463 26634 12159 12023 1147 18393 13038 3926 10648 29459 6603 30808 4099 27831 29293 14601 7279 20800 18353 20449 13883 541 28316 4576 8763 9568 22337 18398 31419 19898 25829 13852 26817 24231 4450 16926 659 230 24521 10941 29561 15148 25163 1656 20676 793 22362 31755 16399 23147 8715 26947 21189 19570 8639 27664 15076 24516 11522 476 15616 20529 13235 12571 906 9465 19558 28963 14162 30525 12550 17470 331 31924 28351 14334 22926 10911 19738 16337 18338 1279 12394 7637 30715 28165 31592 19950 19136 2506 13338 10005 16338 2624 28665 9971 25609 30569 19282 7086 9153 18374 28653 8195 9877 23827 28397 7573 6250 14641 29175 18820 944 32612 1942 20290 8420 5566 3806 7586 16217 31451 1616 2610 11065 9167 16894 16075 13510 30301 19696 9574 15590 13162 31173 17969 27359 26032 26269 19427 28511 10423 30775 8780 30911 23553 4183 25392 15496 5765 875 1365 14903 28256 4461 475 6973 26822 26123 25548 21578 9790 25606 30196 27595 7951 16344 755 2482 1013 11673 23440 13429 5913 9763 5968 24409 4416 1909 17224 11760 26435 5205 29487 4320 959 5946 26807 8167 18701 11368 17693 21788 28533 30557 30975 3448 5022 18284 26223 29332 2377 28584 26949 12724 17983 22019 14777 9221 31112 32183 23857 19491 8926 4325 6487 19678 15970 11644 7535 15678 22669 31069 21992 32197 7784 16829 7728 29427 15872 10698 17613 18704 11028 11409 5546 9509 7186 30239 24238 26444 21314 22502 8851 25129 2112 23651 28150 11193 1455 15870 682 27466 20268 17714 19794 18635 25473 20973 22831 24902 28443 5178 13878 25771 703 14365 1382 16591 8824 2238 8024 32180 16596 20170 2328 12043 31311 28183 11059 7927 9488 1671 32529 5652 2259 7214 9861 25784 21287 2743 8611 4473 7129 18435 5842 20719 3504 14868 24866 10939 1882 9258 22751 28615 18599 28459 2662 26064 32757 20808 20279 19490 19436 6366 32076 7587 1387 7834 8361 13331 26049 8929 29493 12434 23841 6767 1736 19811 11600 11838 21893 31983 7329 29353 11370 31245 21795 6609 9253 11648 17433 9536 7209 3265 3498 23244 27650 22016 26842 190 16101 19813 30649 9524 19852 24475 28634 29892 27201 19855 9991 25698 4920 17781 22579 12932 32545 3341 13488 900 22526 8484 5539 7493 6194 28253 25012 1561 15835 1841 31498 2786 18530 31541 18806 28792 13393 13211 13550 21579 26980 30972 9278 74 20194 1621 21498 13827 31277 19791 6583 13579 11160 20419 26490 160 3450 12925 9073 10381 27009 27968 10209 6478 18504 15371 32608 14197 12075 13723 12612 19020 28762 11057 12891 31164 16684 13717 19933 25453 2742 4955 6814 2863 10397 15461 20616 10905 2600 20137 4681 9199 27033 14388 32585 7241 3518 17007 8671 242 18883 25250 3524 31759 12106 29622 17096 7297 9917 15679 10179 13580 25059 27578 12751 14008 23730 24082 2996 2679 24677 27754 20900 11785 15566 3094 13609 6173 11244 29930 7515 10169 5056 11192 5974 8923 6749 5652 10987 2145 16447 31578 26518 14630 29917 5875 15792 15470 22913 8147 30694 9092 9816 26950 26858 20641 26053 237 8552 9488 31227 28163 16956 23184 8395 30181 16098 3066 27066 2514 9262 12579 21079 16879 14141 4612 31948 2446 171 29976 13490 24751 6150 3334 13866 22215 17283 27008 27433 8897 16368 28523 4883 31811 17642 7232 2188 6706 6480 6322 6539 31352 19448 24209 9647 22277 25760 30190 30423 27667 8487 3456 2029 29615 4861 29254 11778 31349 12504 10862 22432 29083 12456 14198 22107 8753 15822 17297 26282 26022 24456 15948 27125 18319 9136 11377 1775 29860 24999 12075 9254 6923 10636 1644 28889 8154 13233 4748 28681 19927 25679 6451 14802 24962 14200 20856 26364 5717 10574 31562 23246 6474 28275 1551 24354 1182 4288 2700 18111 18644 17466 7173 2530 9982 2113 13477 4382 8248 26891 16672 8806 32373 30033 3990 9321 23166 15432 9659 11294 17207 26579 16949 2207 27172 18167 3397 16698 31021 23695 15530 14789 30110 17985 11970 28979 21618 4016 16627 3685 9169 17907 25929 12098 28119 24391 15200 11786 14487 19200 12421 20711 18272 15814 27416 6086 319 3581 1332 7268 8388 13445 23187 14508 4361 17828 28075 26432 7153 30272 10269 4694 19886 338 31312 17605 12678 407 7769 29023 19414 5001 543 17538 30039 21389 7356 13290 31648 3182 13094 16585 10988 10762 20494 8218 9502 17483 29448 15666 10754 22105 15085 19096 13526 30222 3965 21782 4873 8107 3657 3344 22594 27081 16081 14869 21412 13714 20969 3252 27217 12080 28769 17041 31532 12934 23780 20664 12260 26654 27937 2096 24366 11875 7721 26836 25681 8977 18456 5726 4072 24809 13560 9157 5603 17833 7906 10441 7376 21563 22886 21963 21081 1837 10798 31203 10509 10081 5341 12077 9059 31494 7741 8547 20475 24774 19098 8881 23336 11073 23401 708 22956 20667 4142 23589 12482 17169 28316 19397 16226 1010 22013 18137 11456 18763 25044 743 22 17923 24513 9249 26019 27369 23718 9715 17651 13291 3336 12760 3170 21896 5304 22641 21980 24200 29106 24792 18662 8682 3653 8754 24034 32030 15988 7043 26254 20084 11421 15815 32719 12245 31064 7230 20653 18865 4770 30471 15006 21048 1595 21488 24327 3277 21324 6541 7680 23991 32589 24711 29272 17946 29222 28471 20184 23590 23956 4979 24780 5007 13263 20136 23488 27197 29034 2089 12936 19780 15994 14791 24963 18966 11002 19106 11808 24568 2670 3135 32672 1458 12999 3546 13598 14219 8839 14845 7373 8564 21029 29265 28802 14724 13491 7605 31602 24228 11198 23693 19772 20364 29302 22364 7722 3566 17422 23446 18611 496 16742 15023 31813 29152 23016 8056 3394 8739 15280 19883 1609 12655 3823 32708 24246 1339 145 22291 31340 23155 24605 4624 22226 20079 21725 31982 2331 29734 28224 20595 29131 18847 4988 29446 18806 8617 5751 20490 27339 21964 28136 14698 32210 21631 23225 1909 26738 24475 31921 27373 10294 3856 6735 9562 31057 27607 8185 7076 28383 14120 6742 30433 24685 12780 12280 18284 20668 30837 24126 24119 12738 18029 32120 20578 10738 14092 20557 22796 16061 21902 8794 3433 2137 4581 14876 5908 21185 28075 8720 26791 20477 30042 3352 8330 16291 22975 23073 3592 12190 15788 31491 3240 14894 3054 17064 10682 25904 27006 24177 18480 1696 6140 32469 13999 21084 23640 29516 27622 29994 15827 15723 23839 24829 12582 24400 8979 11892 1024 26944 24835 14244 7350 2703 8708 20503 25142 10688 8347 15892 24638 18414 11401 22817 31691 13163 8936 29127 19411 19878 11383 26261 27190 26706 13875 2664 20723 32196 22567 16361 6039 18589 7812 28246 9468 32426 26868 13190 10543 13064 21548 30503 29618 9100 25024 17227 31204 30049 21052 1571 8637 9459 25968 8457 9406 11532 29963 26820 7976 10557 7532 31496 8045 30592 26804 3389 18916 7451 12320 6273 25792 29384 10134 1776 24643 23570 18301 17955 12079 3586 2258 25334 894 10491 10104 4751 17234 10723 24272 19612 18991 30339 21642 23259 19048 2353 9659 480 25303 32684 18991 10003 15569 4423 16896 6136 18009 12362 16743 22195 23700 23189 20179 4043 31358 23942 1848 7470 16346 4381 31914 14965 25711 20062 25386 20074 27505 9463 32704 28103 11070 5155 3530 31553 32075 19150 3731 2245 10845 13050 14119 24066 26364 19553 28774 18471 29732 6748 7512 5870 14399 10499 7104 27353 25680 28054 13044 14523 31089 1564 25835 9851 17023 7241 21912 9493 5652 28581 15478 27617 29877 19179 5221 14616 22349 26799 32180 31636 16858 2884 1663 18903 28263 19421 19771 19023 9274 25842 12687 28889 3918 31718 1893 13699 11268 11750 66 10390 6933 25620 16082 2004 29131 13029 18632 14590 23153 18631 19173 19865 6408 12296 25429 29682 18491 26611 26178 31072 25237 6460 20644 16841 27634 27038 23894 22631 20275 12994 28783 32204 17462 8291 19663 22308 20998 31152 18424 8891 16718 6641 28704 5567 4884 23662 22660 18246 20387 32652 32766 19602 16841 17210 1498 27284 29251 18059 8422 176 30582 26788 3272 4288 28000 12505 24980 2139 10701 531 2462 12119 206 7541 18829 24460 11623 14399 3761 27099 12936 10482 30615 19568 18494 28597 19162 7747 10539 7671 20539 21477 21556 24918 16372 16761 5753 13759 15434 32256 29066 727 2402 3035 12760 10394 30549 27274 18793 16194 12934 30138 17104 3691 28212 13695 24669 32628 7499 990 15249 3880 11648 11150 30932 670 30876 25599 25450 25437 24600 20124 1444 1732 18155 22862 4435 9386 23968 10817 11394 16705 29867 30954 30309 28224 18685 30793 22668 10049 32470 13931 30812 19815 16091 5428 23744 1605 10600 16475 7196 507 5159 17590 9859 27810 17890 11448 41 3819 9365 17976 27 25090 2504 30067 26413 6841 12571 14677 25396 28642 29987 17652 21110 8188 20084 21086 23391 31251 18687 4756 11382 28129 25503 24278 30863 26425 3566 3873 833 30886 14429 6647 20890 6479 10884 24926 21266 31261 5046 20779 5822 13856 2521 12928 24774 25135 27252 22676 13337 16335 21002 2738 9311 5975 7591 20357 1072 32081 10936 32146 17283 1826 18719 13574 4713 13038 4999 9906 7163 1718 8693 19540 28048 10947 19104 30232 24116 840 25859 20830 2646 3395 17200 19646 14273 676 21863 32073 13774 2481 11239 26898 3543 29609 19204 23278 6126 20135 1402 9079 18383 20170 20737 27479 17940 21139 18722 31427 10664 1678 21576 6725 25982 27701 7962 28863 16003 18449 25096 685 24017 15138 9508 13994 21285 2945 30260 822 7059 24644 17669 10678 120 29858 23042 8892 25265 1624 6916 8073 17930 842 4716 17616 12537 14958 27760 701 13453 5094 24242 11830 12449 5228 11799 16225 10325 12275 18134 22886 15039 12171 6863 32630 5085 11910 14879 6924 27086 29401 23025 14194 23106 9413 15766 5768 15408 10678 13785 705 14791 9835 10892 622 18086 27735 25191 20543 17999 22087 32019 15622 30425 22598 21377 24255 29670 18109 12928 12494 26069 6367 9103 2439 12601 10820 14319 2291 14985 16340 2557 25809 4633 21479 26815 13788 7240 28075 25021 10828 2555 1989 7442 16799 13643 19003 16322 30105 13947 7057 18510 29834 17709 19762 6534 20687 14805 26386 10143 18843 17261 22162 31621 4344 9579 1188 114 13064 4592 5935 20416 657 29762 25013 28412 11960 16252 18739 13371 26125 5508 8008 17585 10952 23102 14490 24959 15442 1791 17014 30413 14856 21061 7094 8473 25403 32677 13544 7374 6267 27652 15276 21529 533 10762 5470 32504 32730 17108 27893 2452 17954 28393 22571 13520 19473 23408 22495 9506 28441 20384 14263 21410 28608 18039 4361 5472 11172 20655 29948 11515 14524 21230 490 6767 17888 29757 26633 7471 25740 20667 8523 7284 8161 17554 24706 27092 1260 25387 31688 4630 43 28318 22046 12357 13389 25453 3155 30467 11834 27761 26920 25632 6739 21268 25777 21099 24315 16321 13054 24008 16470 24217 9723 19843 29008 15464 26261 30948 13794 28631 18718 23044 31377 25315 16627 17118 1335 20621 14172 26793 8965 19155 18867 14694 30665 23776 13001 12213 21101 7552 25477 6380 10944 17878 3790 362 11386 8273 11435 15145 29562 25564 14505 12947 23889 20309 12158 1431 5124 6465 4075 4347 13838 1982 25319 26612 16293 17592 3833 27124 6462 16992 31462 27331 28499 17370 17292 8401 14180 24118 2318 19915 1596 1442 5937 21868 7029 31454 27910 13974 17982 11504 26570 6817 1884 25368 5386 28403 5231 17158 28682 15568 8311 1867 3688 13172 3478 31246 32765 6239 27672 2048 26116 4593 27312 32658 1406 54 7172 20581 22741 22531 13676 24321 25791 13378 10999 16587 21605 4490 19632 29745 8389 26611 18719 26920 18260 5928 14610 28120 21480 22717 6301 21397 16854 11459 20831 24594 30807 29850 14855 24273 26161 12295 12055 26334 147 4230 10472 10429 10560 22242 29422 22689 16367 12034 26686 2271 25330 32262 22861 2209 8983 22163 32507 6879 11980 1898 7888 6539 14470 30784 17541 22796 7267 18634 13510 24558 2318 26135 32054 18136 12259 2594 17844 21694 16467 22952 18141 11095 12938 5175 2513 6098 9552 2696 21818 23493 21293 20238 27531 614 25297 21711 32390 5629 5810 28787 31745 18841 8183 28570 6121 27394 6293 14963 14215 12528 26808 13195 8706 14714 7012 18914 6694 19665 26204 28996 17763 14382 26947 29910 1049 21769 26625 22512 7955 4236 1128 14634 28241 1863 15128 27578 23818 2341 10143 15101 28401 6559 21477 3155 10936 16431 5832 21296 3538 15624 17923 2928 28030 30212 16212 11755 26881 12254 3294 21322 20786 26529 10444 31001 10556 24672 9271 7453 9376 14632 13641 8935 18041 7987 28835 14249 1540 28766 12797 10313 7263 25053 30732 23988 24465 32558 14249 29557 20171 5451 27183 7302 13294 24100 23333 19045 32332 76 31005 19051 15027 14067 11739 19802 19624 13844 442 3381 19696 7919 3660 1364 12629 6330 1089 28855 8614 24980 18570 667 7680 27578 27838 3403 23116 23293 1724 2873 29449 30324 11154 15949 24396 25198 4509 22909 17412 13994 7666 26782 3203 17611 24829 27257 27706 8966 18024 20770 11716 20254 31806 23685 29479 32146 21841 834 19286 26901 10969 23995 16634 13886 349 18282 18033 16257 29911 10873 8983 23902 12307 10636 17861 32472 29528 7138 8344 9769 28234 3996 29172 7604 28943 18012 7880 31035 14513 24594 531 14162 23235 10259 21927 5907 5192 14444 6189 30228 32720 26485 5225 19094 30436 13225 28095 3583 8868 8628 22006 11147 32687 16590 20541 18238 22851 18760 9579 28957 32678 2404 28043 6301 15812 5226 21144 21596 21017 26616 28805 21007 28369 31642 30336 699 1326 28314 28024 22313 24619 18458 18397 8340 21087 32095 7847 27044 31523 12912 16281 23456 26359 26848 28871 991 3874 4328 3414 3455 31897 12473 24451 17242 4642 5647 23526 28214 16825 17930 8696 25404 12595 7994 26068 22188 4641 25080 10042 18126 12535 4861 23001 4908 32622 27693 25294 5118 7718 20404 3944 17894 10640 29012 26926 24029 19979 10749 2851 22893 26445 10655 23624 24354 12037 31548 21347 827 16062 3905 10239 17572 26887 16406 5300 22057 11729 1268 3752 2020 19992 18167 5718 25847 17094 3188 1422 22913 6868 28300 32445 29898 1202 3329 24943 7105 1769 29769 26642 16297 11263 10721 21245 27919 9626 21220 17585 18175 10985 10460 13150 17015 5696 12504 5033 13852 1538 26815 8364 4652 1220 24291 25918 21684 31919 26585 27253 3587 31270 26249 12138 2398 425 23169 20028 28149 31994 10383 29272 27670 894 20878 1015 19105 485 2944 11496 26812 1294 28893 6799 1991 11300 14891 8494 29075 1550 13775 9315 20174 24070 29219 26866 16834 15239 19912 13253 6464 6509 25150 23089 12246 6232 31921 10107 19272 12369 6422 15259 4158 9648 4983 18239 24123 17724 907 18707 10190 11157 30346 12352 6924 7119 31551 2098 11837 10592 13407 4511 25814 14652 25881 27845 24744 7742 11246 14579 4950 21706 24515 19786 9228 8625 17205 28357 23918 6228 556 10103 14287 19469 11699 8980 21412 12490 10759 13491 30776 28411 17133 27090 27297 11951 23113 20123 12530 7673 25837 18278 5554 13977 10671 9086 32653 1752 30398 19752 29002 436 16694 15073 17917 6717 25329 1512 32126 11839 27297 18940 11545 1057 12827 12903 26759 24589 12022 22587 14109 29778 12629 21980 26948 12550 1281 13246 25129 14063 10427 4720 10678 29092 4048 13786 23232 7407 8685 21955 16770 14710 27957 22422 15946 13466 16017 21861 16498 18336 5191 5678 28050 21006 7887 23389 18676 13144 17378 10131 28488 26556 22483 25254 15001 27755 290 32489 25216 12009 31311 941 27800 2998 9708 8455 305 8238 10486 12500 30793 29614 32613 18683 12984 15352 16130 17138 5034 16601 31865 23684 11858 8969 1711 21969 31709 2642 27733 12438 11685 32500 32702 29870 28584 29257 19693 7641 12088 15013 13811 5821 14836 1664 10616 25898 18678 2775 10135 27554 19534 28879 2287 25625 2735 18076 15350 30713 26985 30625 27793 6505 28823 4056 18914 463 24474 20085 24161 31123 26054 19398 11823 19751 21338 13918 4007 4932 22198 27506 29237 10358 6600 28291 1899 986 21448 1085 593 18726 8997 29856 24829 15339 17343 14429 29796 30743 30038 5507 6768 5054 9794 28506 24147 3610 13925 19855 29466 12240 26207 24210 15493 16500 18176 31037 23062 13648 15619 25014 26728 15713 27897 21910 27842 20131 9091 9035 7916 6287 3524 20667 1345 32737 22038 5417 5894 1950 30972 10845 22778 19286 26201 14591 10286 28326 17119 25669 10007 9730 24009 14542 226 15537 11981 717 30471 15385 28748 20329 27937 6205 10701 7524 26365 1412 16041 251 11505 23484 21767 16142 2671 10846 10507 9089 23257 25108 8267 5858 22679 14200 12675 14156 25192 8991 29833 30859 10997 8918 28291 3968 1708 8235 28247 11463 19403 8240 3427 19096 30907 8315 10351 4587 5280 17777 25823 6880 32302 15813 5677 3165 7358 32571 6039 24313 10145 16562 28181 18201 30644 21857 18062 2648 5940 19809 9291 17453 980 32619 21420 24008 22285 24548 29978 15676 18614 18710 13372 28643 16340 6337 32622 21502 26035 18130 21359 1437 28470 22898 28505 4799 4203 23106 1239 15033 20066 12517 14482 15580 9024 1728 1772 31314 10383 6141 24817 28489 15320 5590 5514 18260 20852 32272 23284 4365 27039 3013 3185 21760 23502 9575 28734 5060 27715 27650 6596 28523 24542 20417 15378 1053 566 19892 139 13311 20968 15056 13788 27225 18223 16440 27442 6649 26805 27835 19369 31442 8873 32669 19975 19177 5138 20634 3242 5746 18019 31016 22975 19253 847 8957 25525 6967 15582 8145 32241 29335 15297 11877 25028 1206 2019 4292 31642 13466 16192 22472 6260 23701 20218 2017 1944 14625 17065 31506 1158 31503 7667 9276 32047 17633 29790 6047 2146 6004 13153 31902 8327 29154 21185 19650 30351 10406 24347 1026 28971 14337 4796 9794 11324 5533 28857 15897 3211 17777 5693 14551 15291 13796 13853 17351 8316 10037 29362 3761 9985 8730 2535 6051 28083 16807 1937 25585 10791 21618 29183 19067 23117 6389 9426 13102 5611 6451 19983 28622 5194 27039 16755 4594 14896 20281 5639 25168 17421 4346 16884 23866 24697 30834 10391 22633 20190 17840 20184 13818 22130 6754 10680 18614 10601 8253 15146 19862 2152 28319 28964 7814 14908 29555 31477 618 11212 25430 2265 15967 19532 29943 10699 19523 31156 27588 15258 23159 4465 13763 8511 30947 31066 8381 13166 5947 13541 27298 8043 14465 23195 12585 10271 32716 32201 1207 32107 31303 24697 8834 7612 19068 416 6646 30176 6355 23449 24920 13080 27989 26322 7593 31598 22198 13510 8653 72 659 14123 26860 7998 11000 1900 4121 1321 32037 16985 4913 1916 23954 19486 20742 10200 11568 4209 6845 30170 29682 4880 21109 17208 5260 25707 23850 24076 28027 20125 27608 17775 2885 20129 24547 3146 20482 11715 20150 24169 13339 20308 26794 23505 1106 1698 18218 15956 16642 2344 26134 32098 680 20737 19556 25634 1955 931 10253 19905 20280 12489 24871 31755 26073 32177 26702 15416 18087 4232 17481 19976 30261 20515 8939 16658 14991 19439 28982 15448 5243 24619 16071 25632 24062 27220 28782 20991 12834 8673 1564 21303 503 26929 30722 24899 31448 10946 28407 2223 8687 5795 23578 12845 18684 21548 13241 486 16465 31724 20338 16654 27169 28131 15256 1467 4859 22513 29657 3319 13202 143 21277 31507 32703 10685 15024 30271 26313 8251 13476 20312 26851 19196 5489 11521 26102 20184 24799 27893 18849 6785 30246 12188 14463 28344 18259 16860 8872 14017 8173 22833 24442 17684 16089 22016 13977 18517 18299 40 31284 3206 19998 29147 5770 23676 918 9388 15021 6031 17443 21736 32390 20374 3481 12074 10778 787 8382 31786 523 18346 20980 16086 15714 30936 19736 30884 2187 16097 20649 2086 14753 522 9261 21983 6637 7689 19920 17237 26793 27066 19279 4199 31497 26387 21012 10977 7548 12122 23203 7246 6703 28565 31540 2573 2258 2371 21921 31655 19360 11081 7299 23392 23961 30511 29592 25868 22034 1676 12137 30500 17776 25791 14377 31257 20273 20704 5087 20968 9516 23543 23496 3567 18457 14187 8438 19199 12627 18365 1086 31666 18909 20341 1361 2815 21155 18013 19753 3339 8707 12526 30631 29250 23180 3080 8314 28839 32518 8422 14146 5992 1970 21840 24309 16566 23763 19474 23682 21971 23148 27054 22709 6509 16716 4430 31067 27690 14664 11772 5542 16260 18632 23573 2515 10967 25989 18171 28169 22200 656 3851 13445 12937 16279 19407 29428 10314 7524 32372 23328 17074 23462 2174 9935 31103 25588 31418 31464 6154 26127 20596 1496 29214 2407 27371 23860 23306 22497 24834 24224 4853 17880 30520 6127 7794 31586 21466 31372 15445 17108 17272 24088 28100 16520 8597 5716 17553 22493 14754 8258 27591 24960 13358 10887 7810 5866 25687 32020 260 22314 2436 1029 4102 10469 22870 457 6732 7579 26075 11396 30844 31275 13317 15025 30512 18586 5723 8972 10058 14096 8175 5039 2184 26659 17296 25723 16984 6232 29504 2233 24301 15591 21481 17409 15506 32703 22859 9819 10558 15562 24121 5029 23657 25714 3333 23093 17183 26468 11321 7359 21075 3988 9095 4984 21365 27265 19715 26747 24391 10426 26256 13164 31468 5793 14232 22620 2881 4719 16129 19949 4721 9080 32092 3767 27588 5809 12127 14826 31160 17519 3221 10036 31315 25457 24148 29157 30135 3361 752 16209 31479 22295 12590 17525 7977 9695 4091 20190 29373 7420 30302 21703 24845 20524 26540 20610 11828 6638 8187 27417 1828 15170 17624 14900 22515 10416 3645 5437 23670 10379 31677 17859 7953 9847 27138 5916 22989 24617 7289 2383 28075 20334 3916 11057 25657 30063 9617 24525 12130 27443 1985 4873 7050 23397 18027 8583 10203 18776 5417 30666 14553 18760 12756 11418 22845 3555 19444 6825 32000 28423 122 15734 31414 19918 15794 21874 12061 31176 9075 5986 32502 31623 13209 27396 11027 26721 26292 31989 10930 9073 30978 10194 9 12255 923 30877 15138 30817 13804 21091 7913 12290 17254 29980 7300 12323 22903 27603 6370 30655 12730 9735 12439 12275 5227 16464 28135 22973 24349 16454 9504 2308 25519 18334 27438 20696 13180 662 23145 17660 10962 21908 6577 13473 20646 3593 22973 629 24197 6812 15536 15836 1230 3717 23533 24957 16159 29750 24621 23297 19725 13121 24527 16407 8984 3446 30575 21692 26589 30539 20665 18105 20878 20354 2943 17005 30624 14853 15626 17612 27843 8725 31150 20136 13591 10147 7329 23856 27805 31742 16910 19382 12780 29103 10084 693 10533 17313 26100 6162 11048 22406 15291 17570 29960 32629 22140 21229 27581 32472 21779 27441 18457 22149 29445 24746 16126 7211 4699 25617 31181 24816 6065 16227 29473 27480 19594 32483 3006 18537 15334 11106 27588 30733 15639 31166 1065 14519 8400 5033 17509 13897 13439 23979 22639 8246 4060 24170 745 27363 24770 11050 26519 16468 10559 32144 23062 25604 9191 22187 1227 3604 17005 21301 31769 424 31348 5397 4567 25231 21666 26153 32001 3618 29174 30787 10669 31598 31580 26225 17729 26261 12159 23426 23268 19313 735 453 5170 29563 1571 8212 29236 6891 1712 2065 4751 28961 7546 14768 21755 30788 8218 24566 29943 2089 10274 2816 27580 30838 9389 19270 11887 13831 10810 4641 7322 18320 29882 31627 13021 1412 20455 25894 21985 2358 23000 30337 18830 5951 21458 32406 10366 2335 30050 19095 28593 31271 30120 23018 29314 15254 16118 4978 19161 21506 154 24592 6563 3577 4855 20073 11135 23017 25051 9194 21946 1853 20748 32522 8062 6345 20260 28367 2886 14440 2719 9108 5269 3555 32051 7433 13800 32021 16736 31099 2793 3917 26183 19030 25317 3060 13759 4584 22400 1136 8358 20071 15272 22343 17781 13878 30407 28296 17687 2404 8253 15719 23036 7286 28429 16679 25961 102 20950 2365 26386 27627 17158 2738 4842 18939 11594 17097 31034 4494 29769 27874 29936 19110 30097 20382 21562 25740 5585 25924 28500 16732 11850 25443 8607 6851 28288 26041 22770 9224 1589 16468 12084 3401 11159 15607 16939 19464 20921 18367 15759 19686 9024 20230 19299 29357 5471 23176 24197 1684 9989 7620 2947 32191 8276 2470 25520