Artifact Content
Not logged in

Artifact 7ceaf0a4b86ab15e8696751b50ae175a791b627b


#include <iostream>
#include <sstream>
#include <iomanip>
#include <vector>
#include <string>
#include <map>
#include <set>
#include <algorithm>
#include <numeric>
#include <iterator>
#include <functional>
#include <complex>
#include <queue>
#include <stack>
#include <cmath>
#include <cassert>
#include <tuple>
using namespace std;
typedef long long LL;
typedef complex<double> CMP;

int gcd(int a, int b)
{
	while(a)
		swap(a, b%=a);
	return b;
}
pair<int,int> grad(int x, int y, int X, int Y)
{
	x = X-x;
	y = Y-y;
	int g = gcd(abs(x), abs(y));
	return make_pair(x/g,y/g);
}

class BearBall { public:
	int countThrows(vector <int> x, vector <int> y)
	{
		const int N = x.size();
		int total = 0;
		for(int s=0; s<N; ++s)
		{
			map<pair<int,int>, int> g2n;
			for(int g=0; g<N; ++g) if(g!=s)
				g2n[grad(x[s],y[s],x[g],y[g])]++;
			for(auto kv: g2n) {
				int a = kv.first.first;
				int b = kv.first.second;
				int n = kv.second;
				if(!n) continue;
				bool toss = g2n[kv.first]+g2n[make_pair(-a,-b)] < N-1;
				if(toss)
					total += 1 + 2*(n-1);
				else
					total += n*(n+1)/2;
			}
		}
		return total;
	}
};

// BEGIN CUT HERE
#include <ctime>
double start_time; string timer()
 { ostringstream os; os << " (" << int((clock()-start_time)/CLOCKS_PER_SEC*1000) << " msec)"; return os.str(); }
template<typename T> ostream& operator<<(ostream& os, const vector<T>& v)
 { os << "{ ";
   for(typename vector<T>::const_iterator it=v.begin(); it!=v.end(); ++it)
   os << '\"' << *it << '\"' << (it+1==v.end() ? "" : ", "); os << " }"; return os; }
void verify_case(const int& Expected, const int& Received) {
 bool ok = (Expected == Received);
 if(ok) cerr << "PASSED" << timer() << endl;  else { cerr << "FAILED" << timer() << endl;
 cerr << "\to: \"" << Expected << '\"' << endl << "\tx: \"" << Received << '\"' << endl; } }
#define CASE(N) {cerr << "Test Case #" << N << "..." << flush; start_time=clock();
#define END	 verify_case(_, BearBall().countThrows(x, y));}
int main(){

CASE(0)
	int x_[] = {1,4,2};
	  vector <int> x(x_, x_+sizeof(x_)/sizeof(*x_)); 
	int y_[] = {1,10,7};
	  vector <int> y(y_, y_+sizeof(y_)/sizeof(*y_)); 
	int _ = 6; 
END
CASE(1)
	int x_[] = {0,0,0,1,1};
	  vector <int> x(x_, x_+sizeof(x_)/sizeof(*x_)); 
	int y_[] = {0,1,2,0,1};
	  vector <int> y(y_, y_+sizeof(y_)/sizeof(*y_)); 
	int _ = 22; 
END
CASE(2)
	int x_[] = {5,7,9,11};
	  vector <int> x(x_, x_+sizeof(x_)/sizeof(*x_)); 
	int y_[] = {4,3,2,1};
	  vector <int> y(y_, y_+sizeof(y_)/sizeof(*y_)); 
	int _ = 20; 
END
CASE(3)
	int x_[] = {10,10,50,50,90,90};
	  vector <int> x(x_, x_+sizeof(x_)/sizeof(*x_)); 
	int y_[] = {5,17,5,17,5,17};
	  vector <int> y(y_, y_+sizeof(y_)/sizeof(*y_)); 
	int _ = 34; 
END
CASE(4)
	int x_[] = {-100, -90, -80, -70, -85, -90, 0, 20};
	  vector <int> x(x_, x_+sizeof(x_)/sizeof(*x_)); 
	int y_[] = {-5, -8, -13, -21, -13, -13, -13, -69};
	  vector <int> y(y_, y_+sizeof(y_)/sizeof(*y_)); 
	int _ = 68; 
END
CASE(5)
	int x_[] =
	{17580,-15064,-12511,1417,2984,-12580,2103,-715,-13358,7751,-16043,11697,1710,7211,12778,19049,-6604,-18603,-9548,2966,-12697,9293,-5975,5340,-13698,-6818,-15883,-3402,-18729,-15939,12797,12136,18916,-2063,-6443,-3078,15180,-485,-14517,3587,14685,-17965,17443,1553,5142,6307,18151,17031,10987,6234,10786,-4131,-15223,11713,4010,19342,18234,1933,450,17768,-10696,12380,3284,-10046,12086,-17627,8906,-15424,17436,11156,6246,11156,-12460,8485,-6406,-17358,-10155,12564,7025,4084,12506,-6826,-17812,-875,13442,12399,11169,2528,-1152,-15419,-6708,3005,-3083,-4847,-19550,-13035,-15492,-67,-5843,14024,7137,5072,-4728,-5776,-4895,19635,-6296,8644,-18058,-17177,-3790,-1914,-15083,-19225,8185,-11351,-8645,-4496,-13591,3351,-5851,-6040,14135,-6262,-3486,-2363,5032,-17964,745,17861,-1658,8955,-16732,553,-17331,12914,18431,18468,-15892,13578,-17162,19861,-806,-15458,-1265,-8312,-461,-3791,-11801,1796,-4028,794,-8690,-2482,6391,-19270,13031,-10273,18645,-2437,16163,-17192,-18372,-531,17077,7296,-12317,-13058,-13952,10704,17670,-13448,-4630,-2431,-4027,-18741,-8585,10086,12935,16336,19598,673,13476,-19215,-14564,11198,-12082,15411,18215,-648,-4331,3737,-7896,-455,15137,12886,3910,13619,6280,-5038,762,836,4974,-11440,-2240,18721,9122,-18474,-1092,10310,3764,-11459,2502,16835,8253,-6406,-332,12548,-8234,10693,13391,-2217,-12050,-10822,5751,7762,-7774,-14510,-11950,468,11596,19090,12122,-10317,8982,16070,3220,953,10346,16848,660,-17733,16760,-17910,10710,10248,1328,-939,16346,-13353,-7272,7051,19380,-8892,-16496,-3784,6002,-566,-17629,16590,-17001,8903,-1075,14745,12202,-5008,-4788,10418,5194,-5509,-15687,13425,15768,12877,18536,-3032,-10811,-4676,825,15883,18431,-11167,6680,4142,-651,-17207,-2030,-13210,-17966,-7192,-2317,9522,-11169,-7896,18337,-6630,-15347,5984,4506,5836,-3324,11195,17587,-13460,-11927,14104,2193,-7405,-7211,-4749,11515,12793,-13611,-7150,-16850,-19460,-16240,19385,-12554,-2088,-4911,7952,7595,7021,-15868,-7672,-14782,15034,18191,3283,-14100,-522,18474,-11748,-11559,5696,2599,10645,-3342,-9297,1040,16129,-9077,-18272,19492,-10960,-1016,-17724,13281,-15181,-14524,-14185,12485,-13871,2663,19189,5853,7167,13632,-2170,-9941,-9409,18154,5268,18248,2997,-18031,-15732,-3532,15419,-16597,-12443,-14465,-2216,-634,9975,-15258,1168,-15343,9448,-11777,-10229,-14030,-7049,-15247,-14050,13401,-13588,-1715,-4887,7503,7401,-10025,-11893,12760,-2918,2798,8647,-5112,-17314,-6721,6092,-10557,9236,6135,5739,-6946,-5976,-15665,-4598,-2389,-18513,12048,-19764,5843,7039,-2578,-15143,3236,15960,-6555,4780,-17634,2055,-17396,-11408,7631,-16056,-3775,3659,-4092,8550,2889,-9727,-10469,1784,-19174,15473,19792,19809,-6616,8398,-917,-172,-7166,16572,-9390,13987,-13695,-2760,-66,3484,-5687,-5562,2124,-7107,1611,8023,4015,-7665,13459,7246,-4370,815,9006,-9691,-16693,-16421,-8609,8638,5504,-13674,-131,15379,-17110,-10964,-18323,-13919,-6265,-12194,-18240,-19350,-6282,-12436,17582,-7333,19123,11246,-1813,2443,12842,16961,2796,-18998,-10220,18588,4538,15437,14236,10396,-10523,-15159,6998,-15274,5325,9580,10748,7508,-3721,-7922,9602,10773,11052,13751,-12372,-2955,13273,15074,796,1410,4283,-11017,11932,7395,-5311,9410,-5891,11250,3170,4371,5564,-5434,-13399,3029,601,-11278,14012,18625,-19122,11031,18057,-16479,-8971,18459,13319,-14628,603,19829,3097,-14230,-1112,11486,7502,11108,-4856,-9689,-3882,-4118,11431,-15748,-19582,-19753,-3256,-15822,17696,1328,18676,17016,16148,-10801,-7552,-673,-4014,-4958,-6936,-6697,-960,3812,19890,-19938,8565,14305,5764,-121,9830,9666,1482,-12307,3044,-11042,10648,1377,-3704,-11238,-17945,-6576,7533,3831,91,-7028,-11944,7079,-301,9522,-3335,-3062,-12254,-1025,14821,7531,4060,-16271,5914,8585,5288,8426,6945,4118,-8896,9349,4662,6893,2376,18179,-15581,-11100,-4162,-19834,18800,-10359,10477,10404,11060,-9160,16307,-16273,-12341,17677,-19017,947,-15509,14337,-2326,-4207,-1714,16581,-9248,3177,-3078,17031,3712,-2866,-12330,19509,11226,13128,8885,-10793,-14634,-2902,-14861,-5991,8221,2965,16301,10633,-16154,-10461,19707,-2269,15504,14808,2366,-19146,-6072,-19978,-8908,-225,-8735,-9874,18807,-5601,19281,13295,13813,9691,8957,1755,17120,19189,-13364,13340,4221,865,10567,-9092,-12612,18401,12507,-13329,2122,8238,3249,2152,-5897,4442,-15695,-17145,-18239,-9338,-5011,-18342,19707,-4749,-5524,1852,-12913,-14735,-962,19260,-1936,16096,-16112,12047,-4610,6650,14689,-5304,2616,16093,-5182,-14567,-6440,13220,-7741,-13632,-8159,19039,-11740,-14060,3632,-8184,5578,11768,-11894,7162,-15726,-17320,3920,17858,-7374,11966,-13060,19888,-17626,-18700,16798,5071,-11949,18541,16986,16965,-12314,10837,10390,-1645,15009,3312,-1348,-18460,10636,16177,9108,3641,6206,13067,16033,12246,-18500,1657,-19967,1909,-19838,15341,-8382,-7255,16830,-16541,8211,7002,11980,4502,-9243,-15152,5466,-4677,15007,9686,9258,-4818,-5973,4300,-17606,7805,-6060,-10093,-6370,-11492,-19647,-9283,4661,1852,3776,-2609,-12993,-11023,-4721,19335,12536,15246,-7665,-8323,394,14732,16133,1200,-8475,-3776,10691,-1006,17478,12398,-3005,-446,11295,-3511,6032,15438,1510,11726,6691,18425,-18172,10398,4643,-17072,12596,-7569,4663,7785,-9779,19346,4331,-17399,-15035,16589,-2864,8255,19161,1008,2458,3515,14330,-16268,15630,982,-15491,16334,6526,-12071,16760,-7468,12959,15151,-6420,-13967,3074,13686,-1826,-4883,15532,16831,785,18239,15273,-2228,651,-18644,-12336,10604,-8132,-2965,-15914,3328,-12673,-5749,14893,-19210,-13916,6362,10447,520,18643,-6841,5116,-9120,-16486,-1084,-11362,-3787,2233,-2020,5009,6417,5498,-10627,11954,-6425,17054,11234,-3579,11338,8746,-8169,16854,3469,4625,-19755,-17875,-8427,-5014,4835,16943,-8251,-9550,-9802,4188,-5388,-9726,-1919,-13834,-11355,3203,17310,-11136,1831,1350,-16117,5375,12807,1731,7896,5972,-6995,9274,-15167,-19802,14936,4688,-16451,15530,-15182,-14010,-12380,-17346,7165,-5200,-3657,10276,18308,-1892,-17393,-429,-17889,-5578,-9326,12428,-11668,8239,13357,3636,13575,7671,-3497,17030,-5152,-5967,-8231,10135,14630,-18221,4013,10528,15016,12798,-8670,-15159,18690,16671,-2967,-6677,8242,-7428,13601,3590,-4910,-4832,-7559,5347,3037,13102,-3263,-19147,-10134,9961,19717,-4364,5433,11772,3342,-19076,2447,-4882,-4398,-16306,-11023,-14417,-10457,-5564,17271,3607,6718,-4379,-6597,5226,3726,4931,8847,7755,12441,3310,-3772,16084,7465,17494,-4704,1941,-12664,5765,5459,-2567,18455,18144,672,-5352,-13422,1081,-1520,7925,-1804,-6341,14864,-12689,9132,-5355,5639,3013,3106,-20,10352,-18739,-6646,1309,-14533,11221,6791,14738,4601,14597,13600,-619,-16705,-16389,-8687,-14787,19426,13966,19482,-12286,11629,9898,-5850,-6402,1771,-17738,-13291,-12062,3133,4119,-13580,-12154,6894,-16852,-15750,15034,1722,-15416,15963,11148,-19892,-12976,18267,-19244,11800,-4896,-5679,-1579,14116,9456,-14988,12101,-7379,3548,15914,1216,-3470,-9605,-7456,-3319,-12599,1566,9992,-8448,17144,18354,13813,9089,-693,-11393,-5113,-13119,-10769,7715,-10880,-3689,11219,10990,11929,17192,-10034,-11131,6074,-11479,19165,-16452,-3944,1894,-1600,-17986,4393,-3068,4990,13166,5496,14485,-19862,10052,7055,5965,18451,5608,3123,-9479,-4022,348,18780,10589,-13170,18089,-4671,5367,121,-3879,8321,-14917,-15016,10379,-11978,-14928,-11701,-5365,7851,-7406,-11373,18776,-2907,-7404,11451,-10467,-8079,6281,-5555,12945,-6296,-13440,3931,-5535,19416,289,299,2026,3200,18800,-18091,-15964,2356,5928,121,3161,18965,16342,8590,-14100,-17678,9958,5541,-6348,-10123,5564,-17018,-13935,-17340,-18089,8894,5930,-9353,18117,-4659,7982,11444,-5901,-12138,11271,5498,1959,12227,-13053,11785,-3677,-16760,-8421,-19165,-12990,3720,-1517,16008,13524,17644,3732,-1618,11415,9283,-5126,16848,1063,13111,19138,-18143,-9158,-3618,-12738,-8743,13714,-14176,42,-8059,668,-4318,1271,-4595,-10365,13063,8880,460,16771,5749,19240,-12004,5966,-5016,-17677,-18174,14666,7455,-16448,14905,17955,-7549,-1281,-11325,9807,13458,4114,9629,4505,803,-9198,14908,14300,-11304,2359,19307,-5087,-12207,-14138,4917,-19041,2128,4749,11916,-1997,15931,16499,-13430,-17388,-10265,19410,6681,5102,-18967,370,-10810,-3583,-13909,9072,17990,-3063,18088,-6987,9443,18843,7174,-12932,-7095,-9178,16731,5873,17209,7876,-8008,-11266,-15949,-4919,-1623,11602,-15751,-4868,11646,-8829,-5492,-18506,5718,-10251,-15893,-1509,-10228,9476,9720,4967,8271,10027,14567,9016,10381,19556,-12036,17869,5504,-124,9929,-10803,9744,-17158,7953,2451,-7508,7232,16230,-16515,1374,-2816,7917,5884,-8177,4543,16678,-10029,-9367,2662,-13823,713,-18567,3595,-1099,-15953,19668,-6746,-8151,-7526,11403,-19623,-10905,-14673,-11337,-17343,-14768,5506,2284,12740,-1377,14271,9309,-5853,105,-18556,6979,-6462,12240,-527,16473,-11942,8916,-16476,12686,-14891,-11932,11088,-593,-8066,12530,17300,13719,4979,-4290,2378,-5182,14263,8068,-9451,10989,16216,11486,7668,-19270,10367,14908,-19790,15961,15559,11646,6287,-6255,-18221,-8431,-17501,-9726,-2719,17612,5566,6677,-11371,-3773,14166,6229,-9303,10333,4949,-16990,-8818,3846,7224,-9767,-1411,43,3695,-16693,-15545,-15370,2632,-16793,-15889,-959,-4939,-4382,-2300,-16789,-19931,-2768,-10048,-19485}
;
	  vector <int> x(x_, x_+sizeof(x_)/sizeof(*x_)); 
	int y_[] =
	{-11593,-15376,17547,5927,11116,10257,-7595,696,9623,-7689,-17575,-14288,19520,13251,-12892,-13120,-2225,-1907,9852,-6215,-14268,4036,-4714,7622,7055,19830,17231,-12758,19943,18288,-16988,4938,3258,10139,13268,-15477,-9957,14247,8491,10552,19286,-17528,3223,-19323,-4041,15877,-10229,13386,-15025,-10337,8407,-17190,16217,16537,-18515,14561,-4035,16688,-15231,19361,17423,16698,5446,402,-7842,11723,-7754,6084,13468,16677,19345,-2523,6969,-15116,3550,-6545,13301,-9891,-12518,724,5552,17233,11199,1975,16270,14571,-490,3664,-5566,-9310,19036,-13096,9856,3470,3399,-2598,-12315,278,625,-2638,14185,-15394,-13529,6882,-1684,12002,18709,14455,-9364,-1937,-16381,14606,13034,365,11385,-9310,3027,5136,-9172,14276,-223,6014,-3484,19834,-10472,1073,-5147,-2182,15884,11814,-635,2549,-15524,6314,-16016,-2543,8040,-125,-14210,-7282,-2906,-14205,-7235,-14556,-19229,10457,-12997,17857,-14741,-18013,-566,10428,-14673,5127,8979,-14913,-12082,-3681,-9006,-7354,-5418,6224,-5605,2474,-4642,15374,6862,669,-10241,-18028,-14752,-14663,-12936,-12217,-10981,-3640,-18649,5424,3842,-7673,11510,-7617,4320,-8639,-393,17388,15203,-1342,11865,-13323,-4470,-10432,18522,17555,-1085,5019,2870,-16366,-15300,14067,6560,2689,18864,-17213,15387,-11578,-2255,-17351,10172,-17082,5571,16677,19969,-6728,15661,-6375,440,-8424,13705,14535,5849,11826,-17764,-19910,5339,10289,-11426,-17099,15369,-15923,4805,18093,499,14752,-12298,-13886,9878,-17207,11793,-11295,-17382,-6062,-8946,2468,8406,1895,15495,-11239,-1496,-14197,11776,806,7118,1572,-5092,-9150,4793,-4247,-9080,742,-12196,12460,2653,-17942,-16656,-16703,18074,-434,-3872,10007,-12446,-13250,-3877,-3156,-492,8413,-15485,426,8316,-12854,16619,11346,-11284,14887,12690,-2148,2817,-15187,14444,17784,18032,7656,-12562,18284,12525,-5128,7612,-10825,5501,18197,959,500,11278,-3040,-8537,-259,17016,-14500,6549,-7483,384,8743,9473,-5652,-3828,16802,-6091,7019,-6711,3197,-11415,3124,17417,-15490,80,-12875,-18958,-14536,9893,19508,-16827,-9878,-4401,-17315,15273,-38,-13044,-4185,19852,-13099,4282,19703,15807,13635,-1519,11366,11671,-11616,16569,-16506,-13147,12541,8370,-9202,-12314,-7449,15298,-771,-7460,-610,595,-9826,-4265,9943,-1288,-15992,-13441,13832,-901,6338,-14007,14254,-1753,9959,15598,-777,-9097,15762,19852,-15757,6853,7321,-10139,13390,-16492,-14371,12973,-7768,14631,13162,-7499,-17319,14958,-8655,-16712,15053,-7241,12675,-1539,13153,13958,-16664,-16882,-2447,10280,9680,-10210,12198,-15156,17485,5534,-7460,-472,10342,12161,3661,-8059,18262,-12593,916,17348,-7647,-19548,-16921,12883,-14519,19247,8788,8871,17352,3114,14467,-10183,11520,-9918,-18520,4366,-3678,-16571,17801,-19548,11365,12641,-19100,13615,-11867,2971,-100,1969,-1272,8718,-13730,-6598,19460,-9649,4945,-2953,529,-19473,8978,-17763,-18039,-12881,-680,-527,17325,15612,-5907,16417,-16592,-19490,1335,-16467,-14926,6329,8527,10411,12229,17621,-2525,-4484,-19108,17411,-7519,559,16147,-986,12205,-1208,4316,-4230,-1686,-10004,6010,-13202,15491,-1044,1450,-15159,10694,-8355,10657,-7596,-8007,-11270,-11556,16112,13258,-13710,17222,16532,480,-6262,145,-19292,-10104,-18468,1143,8701,5718,-3834,1191,4779,-15946,-14134,3486,-11935,6094,1312,-14955,4550,-16509,18912,-3367,17835,-4013,17570,-15126,16868,-7752,4279,-11244,-9832,4233,-604,1411,61,-3394,-10855,15467,9018,-17624,-3737,-2601,1028,-13328,-4332,485,4539,-1941,-19537,-17225,-15832,-16108,9066,19602,16548,-2736,4959,-2044,-7593,-3958,-8810,5968,2890,-1706,3200,432,-10698,-1779,-16564,16096,8804,6648,5023,9707,16838,7495,-949,-13865,-2009,-8856,-17863,-6020,19697,-11499,4449,-15898,-9867,-15359,8332,14241,3256,5057,-14624,-13609,14797,-7193,-5836,-17365,18859,-12480,13527,14729,-16268,11831,6312,-11379,1572,10782,280,3999,-16327,-12862,-1119,785,-4588,-4343,-11514,4973,11090,4929,-11386,-3122,16999,-14889,-7581,-778,-6945,7771,11532,-18120,15299,-291,-15264,10274,-9618,11546,16023,-18598,-16601,632,-12654,-16747,-16906,-8159,14531,-14278,-6192,-4255,2123,-14140,15127,4814,-11485,9476,-18325,-2435,9792,16708,-3522,-16024,-1802,-17042,7140,-7565,120,11919,-608,2305,-1670,4143,-12046,-18684,-19057,-18837,2475,-10373,-17324,18506,12734,11314,-6750,19316,-12436,-13759,-6246,1081,19069,4184,12384,8076,-7794,14112,-19062,2423,-5805,15916,11796,-8891,4726,-3168,-2631,-2793,-16520,19044,8417,12324,14410,4906,-1914,7690,-13778,6302,3708,-10411,-4721,4807,-6285,8485,-12406,9531,-14422,5201,10550,-11307,-938,-11220,17257,-1930,13571,12241,-6343,17062,-16112,-8038,-17829,7693,-16836,3036,-3913,-8983,19689,6171,-15669,-18903,-4078,-431,14552,19504,2194,4415,-8201,5393,-2310,-18077,-7533,17337,-6050,19325,13590,-15486,18795,6399,-19421,3665,-9798,10137,14877,-6291,-17501,10214,-1834,8869,-11690,-13039,1867,18509,16831,18142,-7919,13194,3114,-10219,11483,-7840,7809,19507,-19522,-7129,1350,4809,12262,-4896,1914,17646,-2142,11026,5766,-15678,-17339,18104,-12804,-8081,-15740,697,17663,-14728,-9305,4488,18912,-10956,11357,-14747,10126,-734,-11828,566,5009,13376,4806,590,-11306,8376,18911,-30,-2397,-18648,-1459,-9837,8897,19852,-4330,630,17227,-5302,742,-18718,-13209,-7940,673,-13675,4474,17424,12279,13024,6954,-606,-2592,4237,11546,-10847,-19891,-5508,3785,-2937,-17267,393,5757,19400,-5022,6196,-5946,-13984,249,9973,13543,14214,19268,-18270,11686,8719,8277,-17701,17943,2385,3978,5180,-3327,-3206,-7378,-17739,19593,8162,8987,-9014,-3271,-14927,5782,14346,16864,17582,-15346,1302,8580,18839,2345,-2936,-10686,-17195,17041,-5857,5314,440,14342,-17628,15026,-987,7680,-3108,-14521,17649,-9486,1389,-10931,-9578,-10693,-9901,17541,-14475,-627,14505,16829,-3226,-18410,8273,-7681,-19602,-14912,19418,-15553,6848,10220,2576,-17792,12306,-19651,4738,-12370,7923,8715,7035,13981,-1676,227,17092,-18518,853,422,-11943,-13775,-16084,-11143,-18675,-3888,18102,3701,12307,-1262,17956,-13484,-16425,847,-10014,-8708,14971,-1413,14115,-16500,-19617,-4166,-8971,4718,-14413,-13854,-11646,5384,2767,7516,-15065,-3352,17899,-3872,10822,7262,-15542,3121,15521,-16183,-8013,10954,-13958,-18576,11510,-18906,-4422,3638,-3404,18842,4921,-3388,-8777,11290,-3672,13129,-3667,-7494,1349,-14062,-19837,11830,-6149,-3578,-10248,-17754,7537,-516,-7219,-13281,18399,4088,-8604,-7961,-1318,13452,-19171,-16442,17279,-14299,-12076,5967,-9235,-18544,5296,-19323,19962,-11890,13922,6191,-3154,-337,-18980,4001,13,-18760,10760,6997,-2728,7319,8366,4761,9836,-15789,-10174,-12531,6072,17137,-1802,-1123,16742,2624,8995,18019,7751,-17701,-18914,15006,4390,19935,17838,-4340,8709,17579,-9003,-7389,-16068,-1123,4256,-451,8795,-10051,-9637,11651,15484,2508,-13948,-16079,1347,-6777,18496,14551,-539,-13596,17412,-19707,8505,-13587,12620,7467,3561,-5496,-1906,-11093,10370,14545,-13650,16381,18417,-12128,-18264,-1322,14279,-15968,19597,12523,653,1269,-19532,-1848,18683,-8509,14194,10073,6095,2071,-13753,12152,-16250,-5757,-6715,-9156,4829,-2293,14655,1456,6479,-4832,-11090,4467,11745,18814,-19186,1168,-15519,-1304,9023,-8756,-9269,-17589,1411,-855,-13514,-15422,10889,19852,19726,3698,17328,-8548,353,16831,-11846,2721,5163,13971,9084,-5410,19788,18605,17163,3573,17831,-998,16508,-592,10291,-14353,3137,-6342,19110,-5628,2169,-1271,-16565,701,2697,14532,-15923,8822,-11808,10994,17103,9260,18308,2542,4321,12452,-1797,-17095,6159,-13537,8478,5620,1957,11141,6219,-7859,8100,5743,-19482,10569,13052,18253,-4439,-15128,17749,-14485,16046,-279,-13176,9621,-11216,10112,5333,-4127,11684,11808,-19497,-11038,-566,14535,16916,6980,-754,16114,8862,12154,-11213,-1364,-10108,539,-4578,5237,-17236,-18969,5861,13855,6591,2012,-14210,15663,13448,4894,-6544,9378,-1050,-3332,3833,-5298,8863,19820,8126,7468,11571,-6598,4985,14369,10943,-1784,-93,13060,16951,-15623,1772,6333,10196,2042,4494,7956,9168,7805,-2252,13402,-2690,-10009,17519,16978,-2803,-18780,11100,3756,-5309,-9482,11769,19649,-16646,13193,16791,-4313,15039,13860,14565,9079,5209,-18923,15451,-16977,11553,-8969,10175,-13017,-1444,7689,13512,-4722,-13769,12412,17040,-7746,-11665,-12818,-8247,-1004,-17674,19463,-4997,-4231,19518,-15278,-3644,16714,-6087,1408,5232,7317,13791,6336,3043,-13256,-20,-16837,-240,13072,-10317,-9086,-1115,2456,14810,-15363,-17997,-3164,-4816,-10824,-4801,-5535,-42,-2036,19034,-16396,-5823,-8932,9649,-9280,6169,-1553,2373,14349,-7141,-18698,-2986,4112,-10059,-4298,-17034,2135,-9078,-6855,2124,2813,-2862,-12454,19433,4328,12499,-5532,-18038,-19305,10053,14515,-15392,593,-17004,10439,-11993,2522,16903,-6595,2279,13840,8546,-4733,2782,-15664,14530,-15342,-5013,-684,-14862,-12446,-3096,-1198,-8215,-6322,-17875,4619,5447,-14755,-7318,-5241,6404,1762,-14907,18775,-7102,8429,11812,7444,19258,-12167,-16305,-1366,-15696,-11954,-17508,-17188,-6603,10244,-10680,12017,-8342,11350,-9116,12635,10163,-132,-5297,13386,2381,16616,3198,7407,13918,-8068,-419,1703,-9247,1793,-8608,-14395,10024,12130,8307,-12739,-6980,8720,-16935,-3184,11296,6145,6754,2830,8216,11924,17594,1656,-14130,-17565,-9566,-10022,-805,-11432,-4426,-18633,-13820,15121,11332,-16666,3346,2619,-2809}
;
	  vector <int> y(y_, y_+sizeof(y_)/sizeof(*y_)); 
	int _ = -1; 
END
CASE(6)
	int x_[] =
	{17580,-15064,-12511,1417,2984,-12580,2103,-715,-13358,7751,-16043,11697,1710,7211,12778,19049,-6604,-18603,-9548,2966,-12697,9293,-5975,5340,-13698,-6818,-15883,-3402,-18729,-15939,12797,12136,18916,-2063,-6443,-3078,15180,-485,-14517,3587,14685,-17965,17443,1553,5142,6307,18151,17031,10987,6234,10786,-4131,-15223,11713,4010,19342,18234,1933,450,17768,-10696,12380,3284,-10046,12086,-17627,8906,-15424,17436,11156,6246,11156,-12460,8485,-6406,-17358,-10155,12564,7025,4084,12506,-6826,-17812,-875,13442,12399,11169,2528,-1152,-15419,-6708,3005,-3083,-4847,-19550,-13035,-15492,-67,-5843,14024,7137,5072,-4728,-5776,-4895,19635,-6296,8644,-18058,-17177,-3790,-1914,-15083,-19225,8185,-11351,-8645,-4496,-13591,3351,-5851,-6040,14135,-6262,-3486,-2363,5032,-17964,745,17861,-1658,8955,-16732,553,-17331,12914,18431,18468,-15892,13578,-17162,19861,-806,-15458,-1265,-8312,-461,-3791,-11801,1796,-4028,794,-8690,-2482,6391,-19270,13031,-10273,18645,-2437,16163,-17192,-18372,-531,17077,7296,-12317,-13058,-13952,10704,17670,-13448,-4630,-2431,-4027,-18741,-8585,10086,12935,16336,19598,673,13476,-19215,-14564,11198,-12082,15411,18215,-648,-4331,3737,-7896,-455,15137,12886,3910,13619,6280,-5038,762,836,4974,-11440,-2240,18721,9122,-18474,-1092,10310,3764,-11459,2502,16835,8253,-6406,-332,12548,-8234,10693,13391,-2217,-12050,-10822,5751,7762,-7774,-14510,-11950,468,11596,19090,12122,-10317,8982,16070,3220,953,10346,16848,660,-17733,16760,-17910,10710,10248,1328,-939,16346,-13353,-7272,7051,19380,-8892,-16496,-3784,6002,-566,-17629,16590,-17001,8903,-1075,14745,12202,-5008,-4788,10418,5194,-5509,-15687,13425,15768,12877,18536,-3032,-10811,-4676,825,15883,18431,-11167,6680,4142,-651,-17207,-2030,-13210,-17966,-7192,-2317,9522,-11169,-7896,18337,-6630,-15347,5984,4506,5836,-3324,11195,17587,-13460,-11927,14104,2193,-7405,-7211,-4749,11515,12793,-13611,-7150,-16850,-19460,-16240,19385,-12554,-2088,-4911,7952,7595,7021,-15868,-7672,-14782,15034,18191,3283,-14100,-522,18474,-11748,-11559,5696,2599,10645,-3342,-9297,1040,16129,-9077,-18272,19492,-10960,-1016,-17724,13281,-15181,-14524,-14185,12485,-13871,2663,19189,5853,7167,13632,-2170,-9941,-9409,18154,5268,18248,2997,-18031,-15732,-3532,15419,-16597,-12443,-14465,-2216,-634,9975,-15258,1168,-15343,9448,-11777,-10229,-14030,-7049,-15247,-14050,13401,-13588,-1715,-4887,7503,7401,-10025,-11893,12760,-2918,2798,8647,-5112,-17314,-6721,6092,-10557,9236,6135,5739,-6946,-5976,-15665,-4598,-2389,-18513,12048,-19764,5843,7039,-2578,-15143,3236,15960,-6555,4780,-17634,2055,-17396,-11408,7631,-16056,-3775,3659,-4092,8550,2889,-9727,-10469,1784,-19174,15473,19792,19809,-6616,8398,-917,-172,-7166,16572,-9390,13987,-13695,-2760,-66,3484,-5687,-5562,2124,-7107,1611,8023,4015,-7665,13459,7246,-4370,815,9006,-9691,-16693,-16421,-8609,8638,5504,-13674,-131,15379,-17110,-10964,-18323,-13919,-6265,-12194,-18240,-19350,-6282,-12436,17582,-7333,19123,11246,-1813,2443,12842,16961,2796,-18998,-10220,18588,4538,15437,14236,10396,-10523,-15159,6998,-15274,5325,9580,10748,7508,-3721,-7922,9602,10773,11052,13751,-12372,-2955,13273,15074,796,1410,4283,-11017,11932,7395,-5311,9410,-5891,11250,3170,4371,5564,-5434,-13399,3029,601,-11278,14012,18625,-19122,11031,18057,-16479,-8971,18459,13319,-14628,603,19829,3097,-14230,-1112,11486,7502,11108,-4856,-9689,-3882,-4118,11431,-15748,-19582,-19753,-3256,-15822,17696,1328,18676,17016,16148,-10801,-7552,-673,-4014,-4958,-6936,-6697,-960,3812,19890,-19938,8565,14305,5764,-121,9830,9666,1482,-12307,3044,-11042,10648,1377,-3704,-11238,-17945,-6576,7533,3831,91,-7028,-11944,7079,-301,9522,-3335,-3062,-12254,-1025,14821,7531,4060,-16271,5914,8585,5288,8426,6945,4118,-8896,9349,4662,6893,2376,18179,-15581,-11100,-4162,-19834,18800,-10359,10477,10404,11060,-9160,16307,-16273,-12341,17677,-19017,947,-15509,14337,-2326,-4207,-1714,16581,-9248,3177,-3078,17031,3712,-2866,-12330,19509,11226,13128,8885,-10793,-14634,-2902,-14861,-5991,8221,2965,16301,10633,-16154,-10461,19707,-2269,15504,14808,2366,-19146,-6072,-19978,-8908,-225,-8735,-9874,18807,-5601,19281,13295,13813,9691,8957,1755,17120,19189,-13364,13340,4221,865,10567,-9092,-12612,18401,12507,-13329,2122,8238,3249,2152,-5897,4442,-15695,-17145,-18239,-9338,-5011,-18342,19707,-4749,-5524,1852,-12913,-14735,-962,19260,-1936,16096,-16112,12047,-4610,6650,14689,-5304,2616,16093,-5182,-14567,-6440,13220,-7741,-13632,-8159,19039,-11740,-14060,3632,-8184,5578,11768,-11894,7162,-15726,-17320,3920,17858,-7374,11966,-13060,19888,-17626,-18700,16798,5071,-11949,18541,16986,16965,-12314,10837,10390,-1645,15009,3312,-1348,-18460,10636,16177,9108,3641,6206,13067,16033,12246,-18500,1657,-19967,1909,-19838,15341,-8382,-7255,16830,-16541,8211,7002,11980,4502,-9243,-15152,5466,-4677,15007,9686,9258,-4818,-5973,4300,-17606,7805,-6060,-10093,-6370,-11492,-19647,-9283,4661,1852,3776,-2609,-12993,-11023,-4721,19335,12536,15246,-7665,-8323,394,14732,16133,1200,-8475,-3776,10691,-1006,17478,12398,-3005,-446,11295,-3511,6032,15438,1510,11726,6691,18425,-18172,10398,4643,-17072,12596,-7569,4663,7785,-9779,19346,4331,-17399,-15035,16589,-2864,8255,19161,1008,2458,3515,14330,-16268,15630,982,-15491,16334,6526,-12071,16760,-7468,12959,15151,-6420,-13967,3074,13686,-1826,-4883,15532,16831,785,18239,15273,-2228,651,-18644,-12336,10604,-8132,-2965,-15914,3328,-12673,-5749,14893,-19210,-13916,6362,10447,520,18643,-6841,5116,-9120,-16486,-1084,-11362,-3787,2233,-2020,5009,6417,5498,-10627,11954,-6425,17054,11234,-3579,11338,8746,-8169,16854,3469,4625,-19755,-17875,-8427,-5014,4835,16943,-8251,-9550,-9802,4188,-5388,-9726,-1919,-13834,-11355,3203,17310,-11136,1831,1350,-16117,5375,12807,1731,7896,5972,-6995,9274,-15167,-19802,14936,4688,-16451,15530,-15182,-14010,-12380,-17346,7165,-5200,-3657,10276,18308,-1892,-17393,-429,-17889,-5578,-9326,12428,-11668,8239,13357,3636,13575,7671,-3497,17030,-5152,-5967,-8231,10135,14630,-18221,4013,10528,15016,12798,-8670,-15159,18690,16671,-2967,-6677,8242,-7428,13601,3590,-4910,-4832,-7559,5347,3037,13102,-3263,-19147,-10134,9961,19717,-4364,5433,11772,3342,-19076,2447,-4882,-4398,-16306,-11023,-14417,-10457,-5564,17271,3607,6718,-4379,-6597,5226,3726,4931,8847,7755,12441,3310,-3772,16084,7465,17494,-4704,1941,-12664,5765,5459,-2567,18455,18144,672,-5352,-13422,1081,-1520,7925,-1804,-6341,14864,-12689,9132,-5355,5639,3013,3106,-20,10352,-18739,-6646,1309,-14533,11221,6791,14738,4601,14597,13600,-619,-16705,-16389,-8687,-14787,19426,13966,19482,-12286,11629,9898,-5850,-6402,1771,-17738,-13291,-12062,3133,4119,-13580,-12154,6894,-16852,-15750,15034,1722,-15416,15963,11148,-19892,-12976,18267,-19244,11800,-4896,-5679,-1579,14116,9456,-14988,12101,-7379,3548,15914,1216,-3470,-9605,-7456,-3319,-12599,1566,9992,-8448,17144,18354,13813,9089,-693,-11393,-5113,-13119,-10769,7715,-10880,-3689,11219,10990,11929,17192,-10034,-11131,6074,-11479,19165,-16452,-3944,1894,-1600,-17986,4393,-3068,4990,13166,5496,14485,-19862,10052,7055,5965,18451,5608,3123,-9479,-4022,348,18780,10589,-13170,18089,-4671,5367,121,-3879,8321,-14917,-15016,10379,-11978,-14928,-11701,-5365,7851,-7406,-11373,18776,-2907,-7404,11451,-10467,-8079,6281,-5555,12945,-6296,-13440,3931,-5535,19416,289,299,2026,3200,18800,-18091,-15964,2356,5928,121,3161,18965,16342,8590,-14100,-17678,9958,5541,-6348,-10123,5564,-17018,-13935,-17340,-18089,8894,5930,-9353,18117,-4659,7982,11444,-5901,-12138,11271,5498,1959,12227,-13053,11785,-3677,-16760,-8421,-19165,-12990,3720,-1517,16008,13524,17644,3732,-1618,11415,9283,-5126,16848,1063,13111,19138,-18143,-9158,-3618,-12738,-8743,13714,-14176,42,-8059,668,-4318,1271,-4595,-10365,13063,8880,460,16771,5749,19240,-12004,5966,-5016,-17677,-18174,14666,7455,-16448,14905,17955,-7549,-1281,-11325,9807,13458,4114,9629,4505,803,-9198,14908,14300,-11304,2359,19307,-5087,-12207,-14138,4917,-19041,2128,4749,11916,-1997,15931,16499,-13430,-17388,-10265,19410,6681,5102,-18967,370,-10810,-3583,-13909,9072,17990,-3063,18088,-6987,9443,18843,7174,-12932,-7095,-9178,16731,5873,17209,7876,-8008,-11266,-15949,-4919,-1623,11602,-15751,-4868,11646,-8829,-5492,-18506,5718,-10251,-15893,-1509,-10228,9476,9720,4967,8271,10027,14567,9016,10381,19556,-12036,17869,5504,-124,9929,-10803,9744,-17158,7953,2451,-7508,7232,16230,-16515,1374,-2816,7917,5884,-8177,4543,16678,-10029,-9367,2662,-13823,713,-18567,3595,-1099,-15953,19668,-6746,-8151,-7526,11403,-19623,-10905,-14673,-11337,-17343,-14768,5506,2284,12740,-1377,14271,9309,-5853,105,-18556,6979,-6462,12240,-527,16473,-11942,8916,-16476,12686,-14891,-11932,11088,-593,-8066,12530,17300,13719,4979,-4290,2378,-5182,14263,8068,-9451,10989,16216,11486,7668,-19270,10367,14908,-19790,15961,15559,11646,6287,-6255,-18221,-8431,-17501,-9726,-2719,17612,5566,6677,-11371,-3773,14166,6229,-9303,10333,4949,-16990,-8818,3846,7224,-9767,-1411,43,3695,-16693,-15545,-15370,2632,-16793,-15889,-959,-4939,-4382,-2300,-16789,-19931,-2768,-10048,-19485}
;
	  vector <int> x(x_, x_+sizeof(x_)/sizeof(*x_)); 
	int y_[] =
	{17580,-15064,-12511,1417,2984,-12580,2103,-715,-13358,7751,-16043,11697,1710,7211,12778,19049,-6604,-18603,-9548,2966,-12697,9293,-5975,5340,-13698,-6818,-15883,-3402,-18729,-15939,12797,12136,18916,-2063,-6443,-3078,15180,-485,-14517,3587,14685,-17965,17443,1553,5142,6307,18151,17031,10987,6234,10786,-4131,-15223,11713,4010,19342,18234,1933,450,17768,-10696,12380,3284,-10046,12086,-17627,8906,-15424,17436,11156,6246,11156,-12460,8485,-6406,-17358,-10155,12564,7025,4084,12506,-6826,-17812,-875,13442,12399,11169,2528,-1152,-15419,-6708,3005,-3083,-4847,-19550,-13035,-15492,-67,-5843,14024,7137,5072,-4728,-5776,-4895,19635,-6296,8644,-18058,-17177,-3790,-1914,-15083,-19225,8185,-11351,-8645,-4496,-13591,3351,-5851,-6040,14135,-6262,-3486,-2363,5032,-17964,745,17861,-1658,8955,-16732,553,-17331,12914,18431,18468,-15892,13578,-17162,19861,-806,-15458,-1265,-8312,-461,-3791,-11801,1796,-4028,794,-8690,-2482,6391,-19270,13031,-10273,18645,-2437,16163,-17192,-18372,-531,17077,7296,-12317,-13058,-13952,10704,17670,-13448,-4630,-2431,-4027,-18741,-8585,10086,12935,16336,19598,673,13476,-19215,-14564,11198,-12082,15411,18215,-648,-4331,3737,-7896,-455,15137,12886,3910,13619,6280,-5038,762,836,4974,-11440,-2240,18721,9122,-18474,-1092,10310,3764,-11459,2502,16835,8253,-6406,-332,12548,-8234,10693,13391,-2217,-12050,-10822,5751,7762,-7774,-14510,-11950,468,11596,19090,12122,-10317,8982,16070,3220,953,10346,16848,660,-17733,16760,-17910,10710,10248,1328,-939,16346,-13353,-7272,7051,19380,-8892,-16496,-3784,6002,-566,-17629,16590,-17001,8903,-1075,14745,12202,-5008,-4788,10418,5194,-5509,-15687,13425,15768,12877,18536,-3032,-10811,-4676,825,15883,18431,-11167,6680,4142,-651,-17207,-2030,-13210,-17966,-7192,-2317,9522,-11169,-7896,18337,-6630,-15347,5984,4506,5836,-3324,11195,17587,-13460,-11927,14104,2193,-7405,-7211,-4749,11515,12793,-13611,-7150,-16850,-19460,-16240,19385,-12554,-2088,-4911,7952,7595,7021,-15868,-7672,-14782,15034,18191,3283,-14100,-522,18474,-11748,-11559,5696,2599,10645,-3342,-9297,1040,16129,-9077,-18272,19492,-10960,-1016,-17724,13281,-15181,-14524,-14185,12485,-13871,2663,19189,5853,7167,13632,-2170,-9941,-9409,18154,5268,18248,2997,-18031,-15732,-3532,15419,-16597,-12443,-14465,-2216,-634,9975,-15258,1168,-15343,9448,-11777,-10229,-14030,-7049,-15247,-14050,13401,-13588,-1715,-4887,7503,7401,-10025,-11893,12760,-2918,2798,8647,-5112,-17314,-6721,6092,-10557,9236,6135,5739,-6946,-5976,-15665,-4598,-2389,-18513,12048,-19764,5843,7039,-2578,-15143,3236,15960,-6555,4780,-17634,2055,-17396,-11408,7631,-16056,-3775,3659,-4092,8550,2889,-9727,-10469,1784,-19174,15473,19792,19809,-6616,8398,-917,-172,-7166,16572,-9390,13987,-13695,-2760,-66,3484,-5687,-5562,2124,-7107,1611,8023,4015,-7665,13459,7246,-4370,815,9006,-9691,-16693,-16421,-8609,8638,5504,-13674,-131,15379,-17110,-10964,-18323,-13919,-6265,-12194,-18240,-19350,-6282,-12436,17582,-7333,19123,11246,-1813,2443,12842,16961,2796,-18998,-10220,18588,4538,15437,14236,10396,-10523,-15159,6998,-15274,5325,9580,10748,7508,-3721,-7922,9602,10773,11052,13751,-12372,-2955,13273,15074,796,1410,4283,-11017,11932,7395,-5311,9410,-5891,11250,3170,4371,5564,-5434,-13399,3029,601,-11278,14012,18625,-19122,11031,18057,-16479,-8971,18459,13319,-14628,603,19829,3097,-14230,-1112,11486,7502,11108,-4856,-9689,-3882,-4118,11431,-15748,-19582,-19753,-3256,-15822,17696,1328,18676,17016,16148,-10801,-7552,-673,-4014,-4958,-6936,-6697,-960,3812,19890,-19938,8565,14305,5764,-121,9830,9666,1482,-12307,3044,-11042,10648,1377,-3704,-11238,-17945,-6576,7533,3831,91,-7028,-11944,7079,-301,9522,-3335,-3062,-12254,-1025,14821,7531,4060,-16271,5914,8585,5288,8426,6945,4118,-8896,9349,4662,6893,2376,18179,-15581,-11100,-4162,-19834,18800,-10359,10477,10404,11060,-9160,16307,-16273,-12341,17677,-19017,947,-15509,14337,-2326,-4207,-1714,16581,-9248,3177,-3078,17031,3712,-2866,-12330,19509,11226,13128,8885,-10793,-14634,-2902,-14861,-5991,8221,2965,16301,10633,-16154,-10461,19707,-2269,15504,14808,2366,-19146,-6072,-19978,-8908,-225,-8735,-9874,18807,-5601,19281,13295,13813,9691,8957,1755,17120,19189,-13364,13340,4221,865,10567,-9092,-12612,18401,12507,-13329,2122,8238,3249,2152,-5897,4442,-15695,-17145,-18239,-9338,-5011,-18342,19707,-4749,-5524,1852,-12913,-14735,-962,19260,-1936,16096,-16112,12047,-4610,6650,14689,-5304,2616,16093,-5182,-14567,-6440,13220,-7741,-13632,-8159,19039,-11740,-14060,3632,-8184,5578,11768,-11894,7162,-15726,-17320,3920,17858,-7374,11966,-13060,19888,-17626,-18700,16798,5071,-11949,18541,16986,16965,-12314,10837,10390,-1645,15009,3312,-1348,-18460,10636,16177,9108,3641,6206,13067,16033,12246,-18500,1657,-19967,1909,-19838,15341,-8382,-7255,16830,-16541,8211,7002,11980,4502,-9243,-15152,5466,-4677,15007,9686,9258,-4818,-5973,4300,-17606,7805,-6060,-10093,-6370,-11492,-19647,-9283,4661,1852,3776,-2609,-12993,-11023,-4721,19335,12536,15246,-7665,-8323,394,14732,16133,1200,-8475,-3776,10691,-1006,17478,12398,-3005,-446,11295,-3511,6032,15438,1510,11726,6691,18425,-18172,10398,4643,-17072,12596,-7569,4663,7785,-9779,19346,4331,-17399,-15035,16589,-2864,8255,19161,1008,2458,3515,14330,-16268,15630,982,-15491,16334,6526,-12071,16760,-7468,12959,15151,-6420,-13967,3074,13686,-1826,-4883,15532,16831,785,18239,15273,-2228,651,-18644,-12336,10604,-8132,-2965,-15914,3328,-12673,-5749,14893,-19210,-13916,6362,10447,520,18643,-6841,5116,-9120,-16486,-1084,-11362,-3787,2233,-2020,5009,6417,5498,-10627,11954,-6425,17054,11234,-3579,11338,8746,-8169,16854,3469,4625,-19755,-17875,-8427,-5014,4835,16943,-8251,-9550,-9802,4188,-5388,-9726,-1919,-13834,-11355,3203,17310,-11136,1831,1350,-16117,5375,12807,1731,7896,5972,-6995,9274,-15167,-19802,14936,4688,-16451,15530,-15182,-14010,-12380,-17346,7165,-5200,-3657,10276,18308,-1892,-17393,-429,-17889,-5578,-9326,12428,-11668,8239,13357,3636,13575,7671,-3497,17030,-5152,-5967,-8231,10135,14630,-18221,4013,10528,15016,12798,-8670,-15159,18690,16671,-2967,-6677,8242,-7428,13601,3590,-4910,-4832,-7559,5347,3037,13102,-3263,-19147,-10134,9961,19717,-4364,5433,11772,3342,-19076,2447,-4882,-4398,-16306,-11023,-14417,-10457,-5564,17271,3607,6718,-4379,-6597,5226,3726,4931,8847,7755,12441,3310,-3772,16084,7465,17494,-4704,1941,-12664,5765,5459,-2567,18455,18144,672,-5352,-13422,1081,-1520,7925,-1804,-6341,14864,-12689,9132,-5355,5639,3013,3106,-20,10352,-18739,-6646,1309,-14533,11221,6791,14738,4601,14597,13600,-619,-16705,-16389,-8687,-14787,19426,13966,19482,-12286,11629,9898,-5850,-6402,1771,-17738,-13291,-12062,3133,4119,-13580,-12154,6894,-16852,-15750,15034,1722,-15416,15963,11148,-19892,-12976,18267,-19244,11800,-4896,-5679,-1579,14116,9456,-14988,12101,-7379,3548,15914,1216,-3470,-9605,-7456,-3319,-12599,1566,9992,-8448,17144,18354,13813,9089,-693,-11393,-5113,-13119,-10769,7715,-10880,-3689,11219,10990,11929,17192,-10034,-11131,6074,-11479,19165,-16452,-3944,1894,-1600,-17986,4393,-3068,4990,13166,5496,14485,-19862,10052,7055,5965,18451,5608,3123,-9479,-4022,348,18780,10589,-13170,18089,-4671,5367,121,-3879,8321,-14917,-15016,10379,-11978,-14928,-11701,-5365,7851,-7406,-11373,18776,-2907,-7404,11451,-10467,-8079,6281,-5555,12945,-6296,-13440,3931,-5535,19416,289,299,2026,3200,18800,-18091,-15964,2356,5928,121,3161,18965,16342,8590,-14100,-17678,9958,5541,-6348,-10123,5564,-17018,-13935,-17340,-18089,8894,5930,-9353,18117,-4659,7982,11444,-5901,-12138,11271,5498,1959,12227,-13053,11785,-3677,-16760,-8421,-19165,-12990,3720,-1517,16008,13524,17644,3732,-1618,11415,9283,-5126,16848,1063,13111,19138,-18143,-9158,-3618,-12738,-8743,13714,-14176,42,-8059,668,-4318,1271,-4595,-10365,13063,8880,460,16771,5749,19240,-12004,5966,-5016,-17677,-18174,14666,7455,-16448,14905,17955,-7549,-1281,-11325,9807,13458,4114,9629,4505,803,-9198,14908,14300,-11304,2359,19307,-5087,-12207,-14138,4917,-19041,2128,4749,11916,-1997,15931,16499,-13430,-17388,-10265,19410,6681,5102,-18967,370,-10810,-3583,-13909,9072,17990,-3063,18088,-6987,9443,18843,7174,-12932,-7095,-9178,16731,5873,17209,7876,-8008,-11266,-15949,-4919,-1623,11602,-15751,-4868,11646,-8829,-5492,-18506,5718,-10251,-15893,-1509,-10228,9476,9720,4967,8271,10027,14567,9016,10381,19556,-12036,17869,5504,-124,9929,-10803,9744,-17158,7953,2451,-7508,7232,16230,-16515,1374,-2816,7917,5884,-8177,4543,16678,-10029,-9367,2662,-13823,713,-18567,3595,-1099,-15953,19668,-6746,-8151,-7526,11403,-19623,-10905,-14673,-11337,-17343,-14768,5506,2284,12740,-1377,14271,9309,-5853,105,-18556,6979,-6462,12240,-527,16473,-11942,8916,-16476,12686,-14891,-11932,11088,-593,-8066,12530,17300,13719,4979,-4290,2378,-5182,14263,8068,-9451,10989,16216,11486,7668,-19270,10367,14908,-19790,15961,15559,11646,6287,-6255,-18221,-8431,-17501,-9726,-2719,17612,5566,6677,-11371,-3773,14166,6229,-9303,10333,4949,-16990,-8818,3846,7224,-9767,-1411,43,3695,-16693,-15545,-15370,2632,-16793,-15889,-959,-4939,-4382,-2300,-16789,-19931,-2768,-10048,-19485}
;
	  vector <int> y(y_, y_+sizeof(y_)/sizeof(*y_)); 
	int _ = -1; 
END
}
// END CUT HERE