diff --git a/input/day23.txt b/input/day23.txt new file mode 100644 index 0000000..bf113b8 --- /dev/null +++ b/input/day23.txt @@ -0,0 +1,1000 @@ +pos=<44935897,30255154,71162812>, r=67454650 +pos=<18353950,43128513,54500356>, r=76457555 +pos=<29911505,18682351,-5963496>, r=78858704 +pos=<72679809,46787842,47249596>, r=73586633 +pos=<34501215,40793040,90044972>, r=72208466 +pos=<3194932,51989408,43028879>, r=88850417 +pos=<25092729,77844007,18150719>, r=71709867 +pos=<-21999679,38421725,74090244>, r=72846483 +pos=<88032595,44770652,50363954>, r=90036567 +pos=<44594065,59343959,47739972>, r=58547317 +pos=<58713227,67854313,29354710>, r=84136876 +pos=<25985974,92656428,60943460>, r=86455122 +pos=<69801402,50140062,55329009>, r=82139773 +pos=<-61785,33176880,76482110>, r=56443225 +pos=<73044614,35878010,29167435>, r=69664673 +pos=<42213536,61119197,24480646>, r=65776064 +pos=<37258061,81202835,189615885>, r=84162509 +pos=<58079693,13572238,54130808>, r=80249261 +pos=<23044576,71798555,20922012>, r=60845077 +pos=<31835899,22790246,98788596>, r=89445310 +pos=<26446023,75055532,60183357>, r=68554156 +pos=<33403299,69959428,72667022>, r=82899025 +pos=<80842988,38734864,54123598>, r=80570840 +pos=<49635958,55370844,45775153>, r=57651379 +pos=<95052328,40637382,53638691>, r=96197685 +pos=<55584389,17473392,65856218>, r=85578168 +pos=<17754214,38709532,95398050>, r=58731031 +pos=<38625234,63292716,33375838>, r=55465924 +pos=<20905938,60927616,107236263>, r=95939149 +pos=<47650429,57999883,53975690>, r=66495330 +pos=<-45668149,43446598,36823750>, r=70680264 +pos=<75180075,50442888,45039584>, r=77531782 +pos=<-9432446,47437125,42089667>, r=86730581 +pos=<40856506,44560660,99917280>, r=92203921 +pos=<54316151,46592713,48550277>, r=56328381 +pos=<26520777,70304897,89253517>, r=92948474 +pos=<-68432877,42089678,37615290>, r=91296400 +pos=<4370416,34125867,38455003>, r=62832743 +pos=<38728283,75709046,20101549>, r=81259781 +pos=<30383527,46377447,100425863>, r=84056235 +pos=<63980971,19678233,17492881>, r=88475633 +pos=<33338320,39538027,70447965>, r=50193600 +pos=<28853508,75394696,46706318>, r=57823844 +pos=<5040408,70911104,57717763>, r=61923045 +pos=<36363681,79038537,25826131>, r=76499977 +pos=<93545144,46411135,46798097>, r=93623793 +pos=<82159103,62625263,46807510>, r=98461333 +pos=<26950677,81852418,77563698>, r=93236329 +pos=<-29766068,11168251,58948724>, r=90622777 +pos=<38373061,1970498,51405061>, r=69418518 +pos=<62419393,74754774,47815269>, r=91858716 +pos=<3927115,50098897,86817288>, r=71324184 +pos=<-6185447,55790106,59677637>, r=59987738 +pos=<69074200,42038261,42856808>, r=60838883 +pos=<86816090,84646307,-54166728>, r=69448582 +pos=<64779109,43647949,48428184>, r=63724610 +pos=<19902041,44657770,45381898>, r=77249651 +pos=<20625445,83068138,73453459>, r=84016443 +pos=<-22466486,42621719,50495983>, r=53918771 +pos=<29199170,11713075,71945026>, r=71042123 +pos=<-23486591,39392783,58701878>, r=59915850 +pos=<86318593,50123668,49951519>, r=93263683 +pos=<51128038,-4898006,58891254>, r=96528189 +pos=<52222195,1785356,44532245>, r=76580261 +pos=<-55783855,41250206,55971820>, r=91340540 +pos=<81414270,31312320,42955675>, r=74668599 +pos=<13650844,43861259,45303643>, r=93456211 +pos=<44782943,71634614,23010423>, r=80330937 +pos=<33572026,25116919,61273495>, r=51339513 +pos=<21445979,41621170,34603402>, r=49948592 +pos=<71913576,40189751,46513393>, r=65486014 +pos=<60862887,41025470,58151787>, r=66909506 +pos=<-17712132,59780733,52629786>, r=68457399 +pos=<19690638,60725275,69981532>, r=57266680 +pos=<29997289,65719111,74610325>, r=77196035 +pos=<47893081,51291275,73013390>, r=79067003 +pos=<67580601,40141784,37163171>, r=57483102 +pos=<78009510,40613333,47055134>, r=72547765 +pos=<65840300,44561688,78354697>, r=95625952 +pos=<48056076,45110416,61881015>, r=61916801 +pos=<73627174,47747297,34370778>, r=73927502 +pos=<95135036,43555529,47529170>, r=93089602 +pos=<23733630,62858456,96449671>, r=89911085 +pos=<24373093,109157513,57455873>, r=97855917 +pos=<62237702,10560512,64706472>, r=97994804 +pos=<29885792,53042962,99060603>, r=88858600 +pos=<22829428,93689938,23554761>, r=79888470 +pos=<-10043688,49758301,75261387>, r=73398000 +pos=<68596281,36043613,50689543>, r=64853211 +pos=<-14054149,45818098,62039872>, r=60246754 +pos=<27711860,-3032481,44035951>, r=56391203 +pos=<20738822,54579577,41975484>, r=91861665 +pos=<42937059,43853438,61667990>, r=55327863 +pos=<34483244,55901781,71814819>, r=69069124 +pos=<27349269,41068545,58042230>, r=52558566 +pos=<39621007,44497307,64351721>, r=55339285 +pos=<24861928,30723230,115989776>, r=91739520 +pos=<81247031,41227673,38885471>, r=70513181 +pos=<42452473,27147342,79355373>, r=76271803 +pos=<40730310,72787397,59763828>, r=80150792 +pos=<55436064,61786615,63319754>, r=87411867 +pos=<87269530,33886864,60694566>, r=95688227 +pos=<25166065,-1607738,49244717>, r=57629498 +pos=<70174302,44039169,37528213>, r=63609062 +pos=<73481859,53668762,38582617>, r=75491901 +pos=<6946914,38717038,107895511>, r=78000195 +pos=<-12914094,48075616,71055027>, r=70379294 +pos=<71696799,45228675,30235731>, r=73613562 +pos=<88928728,47456939,41495534>, r=84750454 +pos=<83929900,33452592,49458733>, r=81546937 +pos=<72051397,42726407,68204922>, r=89852194 +pos=<34762688,39851999,70163064>, r=51647077 +pos=<26353516,40187536,50376004>, r=70776419 +pos=<71045665,50235351,69493731>, r=97644066 +pos=<26258340,54254655,7069962>, r=60366936 +pos=<30261308,38421564,42328944>, r=60790473 +pos=<1332269,4773758,83313547>, r=90284358 +pos=<25439745,97246505,46441239>, r=75996964 +pos=<31537495,72405868,87327583>, r=98140248 +pos=<43331533,51342239,70161210>, r=71704380 +pos=<8817331,66334019,59091677>, r=54942966 +pos=<29998097,61318476,84018038>, r=82203893 +pos=<25261232,91616297,53132070>, r=76878893 +pos=<27555433,29436254,95079349>, r=74809419 +pos=<-51898792,57985755,45490886>, r=93709995 +pos=<70731781,42811789,42443769>, r=62856587 +pos=<1487336,79666345,44324550>, r=60838576 +pos=<85709446,38980881,65648106>, r=97207676 +pos=<85424347,40746006,43431793>, r=76471406 +pos=<-19015794,42192335,67451855>, r=66994616 +pos=<82899513,49459609,35694465>, r=83588468 +pos=<39594029,30354843,18790637>, r=52114113 +pos=<81536642,29155709,37517516>, r=76528886 +pos=<17023067,54504679,54461155>, r=88782033 +pos=<77828218,40198936,46804537>, r=71701008 +pos=<80629043,54668248,46777441>, r=88943973 +pos=<71377765,52142229,65828505>, r=96217779 +pos=<-7403394,49799741,20315150>, r=55277100 +pos=<79559936,13618887,49377397>, r=96929344 +pos=<71415418,47883727,43401963>, r=69570344 +pos=<1282181,91749473,58377873>, r=87179741 +pos=<45226999,72064214,56410677>, r=80571185 +pos=<-60463400,39578561,54051566>, r=92428103 +pos=<57356343,15718046,25224281>, r=78079523 +pos=<23444698,39102341,101183300>, r=70599590 +pos=<19889367,93832817,54696718>, r=75288164 +pos=<62464495,34261005,53121329>, r=62935718 +pos=<46634507,45154953,52900253>, r=51559047 +pos=<17868252,70130314,13751068>, r=61171346 +pos=<68086256,41866334,21707634>, r=75168820 +pos=<75194946,42295923,61110804>, r=85470910 +pos=<48673521,33701706,75717175>, r=72300446 +pos=<-24633428,48995319,45580380>, r=57543736 +pos=<26951389,34704789,36322679>, r=69677308 +pos=<-5649782,17855667,59568945>, r=60439348 +pos=<152071936,98485748,61481335>, r=69305248 +pos=<-18138085,58340951,62679513>, r=77493111 +pos=<31474024,52164891,19943089>, r=50619800 +pos=<79952830,43798113,47245683>, r=77865868 +pos=<49773979,57385502,48184473>, r=62213325 +pos=<17515475,69377204,67254081>, r=61016079 +pos=<-38781741,38924498,43020259>, r=59061063 +pos=<50768333,86702228,44495563>, r=88835607 +pos=<29694898,55250276,41685830>, r=57883158 +pos=<52619503,67388059,50473632>, r=77350463 +pos=<65255062,47169494,62017399>, r=81311635 +pos=<50229752,-4712285,43016750>, r=79569823 +pos=<49374510,39390567,55569764>, r=51204235 +pos=<52473971,45089635,48679805>, r=53112646 +pos=<24942028,84063955,48075148>, r=63950398 +pos=<-14490205,23845490,49609184>, r=53330099 +pos=<-38783448,53604085,43106694>, r=73828816 +pos=<4524115,86229990,49890888>, r=69931340 +pos=<19904441,7636157,62282708>, r=56161893 +pos=<76754175,3182871,42768060>, r=97950565 +pos=<22500446,102191924,41599066>, r=73160679 +pos=<-34024080,16533119,60822864>, r=91390197 +pos=<66083314,35381505,86804970>, r=99117775 +pos=<51998160,69246819,61378494>, r=89492736 +pos=<19678402,82228502,48763683>, r=57539847 +pos=<56259014,59667076,48019986>, r=70815376 +pos=<-35657314,54299553,61334370>, r=89625861 +pos=<-39306924,41148273,48182907>, r=66972715 +pos=<36889455,49862327,76350844>, r=69971861 +pos=<5041395,57948157,80543339>, r=71784701 +pos=<-29563927,63630472,42994887>, r=74523980 +pos=<-633351,45806314,10513483>, r=54315366 +pos=<44250859,28936393,81977772>, r=78903129 +pos=<26109521,61367535,69058588>, r=63404910 +pos=<53734038,56188976,61225103>, r=78017456 +pos=<41690218,47277275,22200187>, r=53691178 +pos=<56241330,39664419,66056981>, r=68832384 +pos=<46564865,8414054,195335738>, r=79001442 +pos=<183327073,67436935,57512668>, r=74175291 +pos=<-23123527,57385761,61021169>, r=79865050 +pos=<42058687,47109423,61411324>, r=57448682 +pos=<51336074,62993682,56726351>, r=77925493 +pos=<29989389,78836786,56632784>, r=72328196 +pos=<-37152504,49891551,45730215>, r=71109308 +pos=<-34489590,47560778,45987152>, r=66372062 +pos=<16733056,80536218,50010635>, r=54149187 +pos=<53662586,68727992,52278744>, r=81538768 +pos=<14051600,50673046,117178840>, r=92134837 +pos=<62812740,42157910,36447428>, r=55447120 +pos=<19710279,56187416,84746898>, r=67513841 +pos=<51126530,45850108,61476688>, r=65322586 +pos=<-26523757,58012548,57178042>, r=80048917 +pos=<-21805419,13278587,5725270>, r=95932328 +pos=<202752052,51581278,45877237>, r=64044698 +pos=<60253358,46083043,69430178>, r=82636104 +pos=<44097035,47108037,69726005>, r=67800313 +pos=<33714248,25414052,10986227>, r=58979515 +pos=<36656638,64771128,49389859>, r=57686871 +pos=<96588090,44000600,42271014>, r=89729420 +pos=<9507690,81674705,977130>, r=89579394 +pos=<64176702,64362372,31921834>, r=83541124 +pos=<32493670,45278536,42591216>, r=55292345 +pos=<26592333,56780478,60493788>, r=50736009 +pos=<21900598,42527334,47477367>, r=57053721 +pos=<70310217,43713398,33104482>, r=67843007 +pos=<25339994,76439309,84726754>, r=93375603 +pos=<-5656483,55202477,14658939>, r=64589258 +pos=<48077091,49357799,62815599>, r=67119745 +pos=<39824150,43710346,78661326>, r=69065194 +pos=<23266175,44099599,47134494>, r=51608330 +pos=<17885705,47033944,112911597>, r=84700649 +pos=<59979355,31005963,41406554>, r=51990877 +pos=<90892298,41288487,36797989>, r=82306651 +pos=<78155182,45503809,43654604>, r=74183390 +pos=<61366514,50255861,77390899>, r=95882515 +pos=<70678346,43170268,46116559>, r=66834412 +pos=<96258200,40546931,41218217>, r=84893274 +pos=<61776305,39433158,50584012>, r=58662711 +pos=<46670865,36355707,42064155>, r=92197739 +pos=<65419648,40603003,46294188>, r=59186086 +pos=<-35106546,64531519,176289884>, r=61125307 +pos=<83737336,39450773,48922113>, r=78979566 +pos=<47099007,67879072,13764008>, r=88137886 +pos=<80952246,40653047,41076098>, r=69550676 +pos=<51509504,68731235,47313590>, r=74423578 +pos=<-28287277,27612131,43779262>, r=57530619 +pos=<77392675,32092131,43751020>, r=70662455 +pos=<36418628,78956613,52855391>, r=75100161 +pos=<87748695,50946220,41667799>, r=87231959 +pos=<48546647,66482263,76908036>, r=98806200 +pos=<27118119,48593393,76424465>, r=59005429 +pos=<-19333920,47337466,70377064>, r=75383000 +pos=<49555412,-9802817,33678351>, r=87345531 +pos=<63233303,55887279,63575460>, r=89565314 +pos=<74657354,61401396,44470782>, r=87398772 +pos=<-45994399,41740028,41684141>, r=67753267 +pos=<54999540,46081285,51929570>, r=59879639 +pos=<-30119184,61533212,52906696>, r=82893789 +pos=<19871862,82681590,13362984>, r=76114280 +pos=<69440478,33125041,41552788>, r=59479510 +pos=<18508027,46822791,50287340>, r=79613755 +pos=<25031977,87644145,44479936>, r=64025372 +pos=<71172215,42920663,37324159>, r=63692635 +pos=<56824370,49111691,35465194>, r=57394736 +pos=<-28688894,40732515,29938538>, r=57872082 +pos=<66253158,28968945,50846108>, r=69741219 +pos=<19849711,43772130,112203211>, r=82694438 +pos=<27437553,22338547,63177583>, r=49887482 +pos=<20731307,83181413,67214742>, r=77996705 +pos=<58962672,64170780,43799901>, r=73803102 +pos=<-5554452,16494144,53798192>, r=55934738 +pos=<-30403760,63252586,54682727>, r=86673713 +pos=<72145687,63301544,42386453>, r=84702952 +pos=<90688721,40734934,44316508>, r=82609484 +pos=<23601926,94147020,41401854>, r=66020039 +pos=<89001062,54881672,42718873>, r=93471001 +pos=<37122332,49288767,22037019>, r=51298083 +pos=<40577020,63525246,43610236>, r=54581762 +pos=<51890279,-10591915,49642210>, r=93735338 +pos=<49847750,39892525,64953742>, r=61563256 +pos=<85630381,43717036,61505614>, r=97722276 +pos=<81326448,53293156,43145598>, r=84634535 +pos=<37201027,-26150773,45817242>, r=90780057 +pos=<49421142,68346518,36055057>, r=68636506 +pos=<68245883,-72015127,89347059>, r=61189891 +pos=<19335752,60874470,85346499>, r=72426062 +pos=<65138887,51213072,42407267>, r=65628465 +pos=<35191964,74650754,51551299>, r=68263257 +pos=<39581244,30750804,71773476>, r=62214808 +pos=<99342727,39679598,45156156>, r=91047718 +pos=<155464239,-5441450,80591297>, r=78193358 +pos=<17946869,90109841,61682338>, r=76608336 +pos=<32891063,51443042,63872107>, r=55075466 +pos=<57789732,39912312,46450503>, r=51021805 +pos=<-62765397,44118023,44695036>, r=89913490 +pos=<39080577,46478464,42902218>, r=64038273 +pos=<57455288,67387648,12855426>, r=98911360 +pos=<22482681,48592874,84055261>, r=62000070 +pos=<44947611,66617460,54961200>, r=73395602 +pos=<39035718,33942556,-12752880>, r=79511865 +pos=<-7168259,63501875,78323275>, r=87327950 +pos=<26723860,39283543,42377969>, r=63231205 +pos=<19009248,43461264,99128350>, r=68468114 +pos=<17529585,31299779,53511140>, r=92241850 +pos=<-7687587,62344461,56614261>, r=64980911 +pos=<73669494,47109458,50525750>, r=78174006 +pos=<59535953,43251359,41832174>, r=51488723 +pos=<-46258981,50043355,31304555>, r=83386897 +pos=<25928376,40135637,116068028>, r=89001279 +pos=<16863043,48762752,32315029>, r=95733343 +pos=<-45014932,57034131,43700813>, r=84084676 +pos=<20373486,71965566,68946068>, r=68154358 +pos=<24540725,78050556,50019235>, r=59480204 +pos=<30871573,67487810,84232863>, r=89461540 +pos=<32296894,29089597,78520787>, r=63339707 +pos=<49831136,6883581,27574330>, r=77038857 +pos=<17750324,85577218,-6187476>, r=96438877 +pos=<-28185671,33610252,47736010>, r=55387918 +pos=<37365236,106993802,41485590>, r=92714649 +pos=<82548912,17085291,46680471>, r=93755122 +pos=<13277103,76319350,7492876>, r=73938616 +pos=<6943686,90538267,50800334>, r=72729535 +pos=<90630114,39996233,52954329>, r=90450173 +pos=<56242041,31571197,50119411>, r=56401156 +pos=<19850283,87350797,28933703>, r=65191211 +pos=<30745010,81484249,67481201>, r=86579762 +pos=<67371441,30208016,44091352>, r=62865669 +pos=<40197112,44180303,17129187>, r=54172156 +pos=<21276829,43595334,46654911>, r=68910209 +pos=<86180807,56042058,48009071>, r=97101238 +pos=<-34629239,30198368,41850137>, r=59357372 +pos=<-32647491,42024548,35312260>, r=57748948 +pos=<-19012709,80453646,52861020>, r=90661964 +pos=<21156218,107748585,41826354>, r=77600444 +pos=<32156511,67332102,61133439>, r=67491336 +pos=<-23852123,16816279,47238361>, r=67350440 +pos=<20483383,53100058,77371672>, r=57824595 +pos=<22345120,94790932,55804926>, r=79810342 +pos=<26263506,86339113,71394342>, r=90866196 +pos=<22672567,91047479,61496681>, r=82085967 +pos=<55759808,40116762,69064173>, r=71810030 +pos=<34714186,48923617,59470724>, r=49977782 +pos=<-34691612,68176445,43023892>, r=84226799 +pos=<59105951,63020961,45207629>, r=74203796 +pos=<59311566,59273197,62552422>, r=88006470 +pos=<35437151,39351518,70849771>, r=52508085 +pos=<50821404,67099835,14880362>, r=89964737 +pos=<-26654597,66127977,56589570>, r=87706686 +pos=<78529795,49715840,45089517>, r=80204553 +pos=<20158538,92920994,62541527>, r=82490683 +pos=<84125867,36229177,50796125>, r=80303706 +pos=<62229821,43510064,47386214>, r=59995381 +pos=<-50603640,31400496,44805706>, r=77085135 +pos=<18092924,62384932,69018828>, r=56365940 +pos=<-14206810,58704354,59147179>, r=70393132 +pos=<26558373,-16599452,11213150>, r=93610353 +pos=<39863441,-31972715,42301506>, r=95748555 +pos=<18811965,73292623,94939827>, r=93913921 +pos=<45028449,-7681807,47462952>, r=81784158 +pos=<11989554,99145669,42476297>, r=67967052 +pos=<52705333,91257818,44081649>, r=94914094 +pos=<91786483,38406384,43386874>, r=80449000 +pos=<50855681,94200270,42110911>, r=94036111 +pos=<76148397,49298120,44110341>, r=76426313 +pos=<78177125,43673189,45558505>, r=74278143 +pos=<66975895,23154102,49769929>, r=75203154 +pos=<48961036,53233016,46467290>, r=55530869 +pos=<206101689,32174112,56098554>, r=52450634 +pos=<1276025,40634050,78039941>, r=55732658 +pos=<78216259,41932261,59190332>, r=86208088 +pos=<17883132,18781775,74859169>, r=55571419 +pos=<20947817,61661572,98801655>, r=88280319 +pos=<79060316,44855366,46324040>, r=77109003 +pos=<36993111,63272484,86203356>, r=93338417 +pos=<64013110,29536709,46853304>, r=62940652 +pos=<75284398,49041145,57537651>, r=88732552 +pos=<20666030,48711548,107739542>, r=83986408 +pos=<-2116611,58163923,54905005>, r=53520167 +pos=<17326137,-83089486,132675228>, r=82263140 +pos=<69384234,50574034,56363066>, r=83190569 +pos=<28959461,48317114,65963299>, r=50109113 +pos=<17402617,52025939,56811959>, r=94330599 +pos=<32781570,41265969,88886936>, r=69803847 +pos=<-43411334,53658442,54816373>, r=90220793 +pos=<22062431,41080310,28075405>, r=50873272 +pos=<45747499,25024003,52492427>, r=54826816 +pos=<18880474,47411740,92257026>, r=65418874 +pos=<-11921305,11939621,66809279>, r=79867195 +pos=<29845077,53007224,4383169>, r=65393007 +pos=<67673970,65413361,55004420>, r=94961007 +pos=<-25612107,20006925,50441406>, r=69123078 +pos=<53197174,83195179,55891460>, r=99153530 +pos=<17187106,41905470,48186656>, r=62628075 +pos=<23857603,57881290,34797952>, r=67624646 +pos=<71523879,34036817,50258951>, r=69357741 +pos=<51549081,44072015,91730038>, r=94220379 +pos=<17694732,69454566,60203290>, r=54221881 +pos=<18288797,83216098,46551898>, r=54926032 +pos=<39924177,15170414,73586417>, r=79951190 +pos=<227929,100347433,53983153>, r=92437222 +pos=<64016422,39648875,54677847>, r=65212659 +pos=<-19498758,73962533,44575525>, r=76371392 +pos=<53694242,39250089,91188508>, r=91002096 +pos=<21975275,48962856,100696829>, r=78504222 +pos=<31282533,49821960,-9941387>, r=77969748 +pos=<100224486,35495652,45458642>, r=91798404 +pos=<3035661,54552394,60259754>, r=50111154 +pos=<25887766,50625214,49789492>, r=98800332 +pos=<44057784,87000636,52599077>, r=90526740 +pos=<5635663,87953521,64790630>, r=85443305 +pos=<30188973,23545768,2560761>, r=65747919 +pos=<67814497,41306189,41092207>, r=57082201 +pos=<-3333752,44166582,50426339>, r=55793241 +pos=<64251037,25822409,78679035>, r=98718564 +pos=<60499393,43254448,44056724>, r=54679957 +pos=<18200375,46688871,48401746>, r=75568464 +pos=<66321742,35596284,42092331>, r=54428702 +pos=<67101123,51028334,38101541>, r=66951726 +pos=<21240517,184753863,-20782708>, r=49881301 +pos=<38601872,29964701,76025907>, r=66274020 +pos=<46959526,57564227,-7908900>, r=99356560 +pos=<50070839,51639247,8347630>, r=80286259 +pos=<65748637,40400585,43545006>, r=56563760 +pos=<21995346,80491099,52702790>, r=62058565 +pos=<56422407,45671777,70954435>, r=79917927 +pos=<59440842,78549595,54602601>, r=99462279 +pos=<32182454,777348,75882359>, r=88898816 +pos=<12330439,45815257,30012540>, r=60714204 +pos=<37982048,72397048,56454856>, r=73703699 +pos=<226654113,32565151,41751672>, r=53457683 +pos=<30943019,-22904624,52742952>, r=88201525 +pos=<83818313,43350769,46040623>, r=80079462 +pos=<-25716696,68370451,48371461>, r=80793202 +pos=<44780591,70169733,50451813>, r=72271588 +pos=<-35916257,39389044,68172853>, r=81812837 +pos=<20883442,22855304,92736688>, r=72375738 +pos=<77813699,44710742,46142835>, r=75536703 +pos=<33466442,75555255,15859162>, r=80086377 +pos=<29442337,76976981,73079523>, r=86368113 +pos=<33350947,71789045,29777053>, r=62286748 +pos=<17589077,28241293,103823540>, r=74782259 +pos=<49405212,64716533,55217857>, r=76208923 +pos=<67233692,53510380,55457292>, r=83070644 +pos=<49480995,41157891,54837982>, r=52346111 +pos=<65443172,40759381,965650>, r=92160851 +pos=<-5467934,14750596,63487073>, r=67280680 +pos=<-15780425,14303687,30201141>, r=64406606 +pos=<88126975,38814252,46084799>, r=79895264 +pos=<50623827,45002744,48190581>, r=50686417 +pos=<-22053452,41496928,89983345>, r=91868283 +pos=<-48285549,58003246,43315427>, r=87938942 +pos=<49485248,39620352,73905080>, r=69879932 +pos=<63847777,38962659,42425731>, r=52105485 +pos=<74335447,26273314,48747433>, r=78420608 +pos=<-42359982,40131126,44936396>, r=65762459 +pos=<69026475,44204817,53565653>, r=73666254 +pos=<62366251,41501360,48687511>, r=59424648 +pos=<17675509,74413386,59008576>, r=57967356 +pos=<96469422,44237396,31006349>, r=96624667 +pos=<43272607,45322966,100369275>, r=95834141 +pos=<28017623,96007067,43251597>, r=74145673 +pos=<21634219,69605446,61085942>, r=59195280 +pos=<21450039,52852531,46025118>, r=89268181 +pos=<44086014,33793562,-2049410>, r=74007479 +pos=<23554321,63312689,82343443>, r=76079709 +pos=<-73813436,41124395,44093707>, r=97366118 +pos=<-18290456,57263513,51664329>, r=65552899 +pos=<94739910,34764956,43837377>, r=85423236 +pos=<33993191,56103385,56018470>, r=52984353 +pos=<44897026,31776858,9632679>, r=65152968 +pos=<46314006,93535020,47525623>, r=94243894 +pos=<23657043,56501451,70101875>, r=57129647 +pos=<63743157,66510618,57216912>, r=94340075 +pos=<-17613415,38403458,92110665>, r=86462107 +pos=<39404296,29514454,91705117>, r=83206048 +pos=<-70839388,41255501,48910276>, r=99339776 +pos=<74352482,53317122,18787936>, r=95805484 +pos=<-26624872,72149063,43199147>, r=80307631 +pos=<96537811,39227432,33519818>, r=89169352 +pos=<56250592,45033852,45434888>, r=53588570 +pos=<-13634953,54752865,19332200>, r=67444923 +pos=<66600362,41846672,42859178>, r=58175801 +pos=<39495987,14960657,47527657>, r=53673883 +pos=<91261259,46013600,41506915>, r=85651015 +pos=<4484728,40945094,47735250>, r=85075386 +pos=<18601449,78162552,17659048>, r=66028779 +pos=<-46969511,46563894,48722914>, r=80590967 +pos=<26676316,33577356,47810870>, r=62001931 +pos=<60789105,48831249,42968527>, r=59458233 +pos=<70062677,54335483,51124216>, r=82392293 +pos=<26896647,78529683,75003398>, r=87298991 +pos=<82872754,39245362,41149861>, r=70137221 +pos=<25117538,32502465,52890561>, r=75515014 +pos=<48376285,39015322,58672728>, r=52933585 +pos=<43079156,59832628,48149310>, r=57930395 +pos=<17006477,51208285,52990940>, r=63825806 +pos=<83177336,19757771,36672970>, r=88412054 +pos=<25388799,64174223,71719148>, r=68151431 +pos=<27037378,40810738,46757713>, r=81537430 +pos=<88434240,41021292,45942106>, r=82267219 +pos=<33756685,13335487,54636103>, r=56668240 +pos=<37149186,9988086,15932091>, r=72894696 +pos=<-17197179,67468087,61060741>, r=84060564 +pos=<58688894,42566243,54904845>, r=63029605 +pos=<-38152245,26533104,47032412>, r=71727854 +pos=<12168255,52210080,71916897>, r=50293284 +pos=<-10858962,42495316,41243527>, r=50536166 +pos=<74929088,51947715,44510487>, r=78256549 +pos=<75852324,64318903,44233238>, r=91273751 +pos=<-24816040,88747678,43171272>, r=95069619 +pos=<86424315,41621068,52051122>, r=86965740 +pos=<-28713143,56335926,34386524>, r=69051657 +pos=<52127369,38707380,52250750>, r=49954899 +pos=<10660214,44332118,-17343298>, r=69404373 +pos=<36609212,66192114,70112847>, r=79783508 +pos=<24318253,-1794913,44775942>, r=52500196 +pos=<27114336,70589962,51601907>, r=56175637 +pos=<25681627,44474243,58697457>, r=70760191 +pos=<20386659,215746148,1314057>, r=78808938 +pos=<17993330,56989350,86452714>, r=68305197 +pos=<23708434,50727335,9072315>, r=52287257 +pos=<25636224,57953422,97346042>, r=87805047 +pos=<41538406,42793476,81535408>, r=72736592 +pos=<45568539,82419526,34558169>, r=80354087 +pos=<20556607,107926921,41381222>, r=76733988 +pos=<62026584,42226852,45146100>, r=56268772 +pos=<62546772,5434025,46013324>, r=84737074 +pos=<51700641,-3226338,45498487>, r=82036717 +pos=<103036667,42891109,38612836>, r=94238901 +pos=<20204670,-956415,3409249>, r=79417434 +pos=<18597805,85523830,-5386013>, r=96431512 +pos=<64536588,28510188,44319634>, r=61957275 +pos=<51306141,65738397,55044134>, r=78957976 +pos=<22723423,38516528,17516755>, r=68991333 +pos=<19332126,22147725,84659082>, r=63454391 +pos=<42413792,35863914,64849358>, r=53010211 +pos=<57050702,62969388,66385622>, r=93275157 +pos=<97752191,43707878,49215362>, r=97544707 +pos=<61607731,41333510,47422970>, r=57233459 +pos=<37247125,41477760,45960167>, r=59008578 +pos=<44626625,41468114,59298625>, r=52262706 +pos=<62690179,39394156,42569478>, r=51523170 +pos=<34537266,52421565,67517606>, r=61345681 +pos=<43846163,15962456,83096456>, r=92591106 +pos=<38788237,38668740,9528849>, r=54852087 +pos=<38739209,47282953,42708227>, r=56846440 +pos=<79470765,54342530,49819687>, r=90502217 +pos=<-53417176,46436906,55402747>, r=93591415 +pos=<40028091,43390913,37216793>, r=91494039 +pos=<66202427,18729910,49130973>, r=78214444 +pos=<60711108,40359942,49468047>, r=57408379 +pos=<52956623,73188079,65886674>, r=98900624 +pos=<79068797,34959279,50759577>, r=76480123 +pos=<-25138809,39239129,77961481>, r=80674090 +pos=<23175791,81127750,-4729666>, r=95957074 +pos=<40974412,49581536,90908056>, r=88333247 +pos=<78431455,62365186,32228835>, r=95491613 +pos=<24441757,43955408,41481993>, r=67441509 +pos=<82293525,15639053,46393744>, r=94659130 +pos=<-2867972,57025225,65081311>, r=63309051 +pos=<23980901,19446961,-7984300>, r=74183781 +pos=<54042779,42279377,13377682>, r=69868516 +pos=<10639841,-7574286,51621293>, r=61631956 +pos=<22072014,40746738,43994665>, r=66978889 +pos=<69271991,43943897,46602251>, r=66687377 +pos=<-35420794,27203396,49513570>, r=70807754 +pos=<3144413,57537113,36099732>, r=54381651 +pos=<4278806,34561820,97221379>, r=71457015 +pos=<53615610,71772054,49374912>, r=81631820 +pos=<19801880,42808744,82225228>, r=51705090 +pos=<49122992,38814241,88275102>, r=83081658 +pos=<78119432,39578304,42915157>, r=67482925 +pos=<17878735,53853625,55177867>, r=62321827 +pos=<42565434,47468265,75042742>, r=71946111 +pos=<65241680,32782907,50050388>, r=64120052 +pos=<-16323664,-2998485,25070907>, r=87382135 +pos=<47788110,42148407,61909339>, r=58715268 +pos=<61467804,65119861,64038275>, r=97495544 +pos=<24196976,95959712,49218668>, r=76244771 +pos=<-5144654,-5473077,66909535>, r=90603473 +pos=<46534813,61092630,60078117>, r=74574960 +pos=<76898971,39176981,58696134>, r=81641373 +pos=<41528587,24127220,69886698>, r=68899100 +pos=<3425630,81145510,65415508>, r=81470033 +pos=<53869341,74853651,57085625>, r=92677891 +pos=<74532243,28062758,23799133>, r=84336126 +pos=<40539812,58186863,61508320>, r=67104270 +pos=<38594956,49117999,56109864>, r=50692283 +pos=<55309127,138847263,108296913>, r=82882863 +pos=<87113392,40991034,41704971>, r=76678633 +pos=<55453271,49709387,19971171>, r=72115294 +pos=<67504354,64071522,58594890>, r=97040015 +pos=<21667096,58312195,102089587>, r=88938139 +pos=<40555081,66432399,-1023356>, r=94934656 +pos=<19302458,69829778,94951843>, r=90953379 +pos=<73546957,43126080,74288130>, r=97830405 +pos=<101595184,39559578,41673238>, r=89697251 +pos=<93754302,38567395,48328086>, r=87519019 +pos=<72346538,57193439,25381391>, r=91082427 +pos=<10458620,7764474,103100330>, r=97953499 +pos=<4140555,92180667,50363594>, r=76738471 +pos=<24553146,57915965,62281111>, r=51619462 +pos=<85149284,40769471,29737234>, r=83105416 +pos=<42440662,45120994,56952158>, r=51383102 +pos=<50131342,39294808,90162558>, r=86458255 +pos=<54104502,41960978,62215556>, r=65150534 +pos=<3151975,11556560,77455520>, r=75823201 +pos=<20491067,51110716,78168643>, r=56639723 +pos=<23289280,65718817,69252713>, r=65130060 +pos=<29017887,77297246,84105457>, r=97290148 +pos=<-44463448,59235355,56164552>, r=98198100 +pos=<19943963,33716004,45275973>, r=76886317 +pos=<13156771,86967278,29143596>, r=63056101 +pos=<1232806,43624832,-30470827>, r=91251985 +pos=<-34563905,27718951,65983630>, r=85904908 +pos=<31789851,102413940,47798789>, r=88872056 +pos=<39466995,19735067,57091344>, r=58434348 +pos=<88870785,53361860,42156795>, r=91258775 +pos=<44837176,41137035,42593180>, r=57823357 +pos=<30400700,55396948,77911197>, r=70578125 +pos=<74996901,39985745,42208844>, r=64060802 +pos=<28166928,-19082766,43396336>, r=72257426 +pos=<52017064,41322084,55202254>, r=55410645 +pos=<52166596,66118178,64848342>, r=90002373 +pos=<74021285,43813334,42207943>, r=66911808 +pos=<34406149,43601110,38486732>, r=96001113 +pos=<53833022,60169120,60987017>, r=81858489 +pos=<43608488,43594890,95319456>, r=89392070 +pos=<-31313320,39762045,45872140>, r=55282157 +pos=<2705470,41960271,80752768>, r=58342250 +pos=<88308261,39008129,42241365>, r=76426996 +pos=<34217726,41597422,75928041>, r=58612930 +pos=<24760912,88194330,50657153>, r=70481681 +pos=<49163602,46846901,47889362>, r=50769395 +pos=<71456643,180016098,36094125>, r=74908512 +pos=<86644349,54042872,35069494>, r=92541745 +pos=<49859580,54787447,74965877>, r=86482221 +pos=<95579643,52431887,41467328>, r=96348348 +pos=<62395413,51435919,62096964>, r=82797606 +pos=<45054162,-322062,70870781>, r=97857900 +pos=<41396591,47757441,56379907>, r=52403181 +pos=<19170071,41664784,45697463>, r=56952341 +pos=<-16765111,60533373,47155663>, r=62788726 +pos=<45981347,81772955,45433920>, r=80057464 +pos=<63676247,42573460,58769889>, r=71888939 +pos=<16978433,34408999,85837330>, r=50017818 +pos=<44359893,55778700,79383559>, r=86391569 +pos=<68961083,40837978,74457190>, r=91125504 +pos=<63406173,44670509,43394789>, r=58340706 +pos=<6043897,1978046,86400781>, r=91455313 +pos=<41055286,68923096,46369316>, r=63216969 +pos=<30419616,70422836,42885654>, r=50597354 +pos=<9889263,-37647261,47180521>, r=88014756 +pos=<47231185,50812063,53750946>, r=58663464 +pos=<48756422,16920449,50979287>, r=64426151 +pos=<46127377,4026267,64190912>, r=87902963 +pos=<63785424,62374087,46282452>, r=79311679 +pos=<11761516,32475816,111918484>, r=80757450 +pos=<70383092,47688291,44677138>, r=69617767 +pos=<17083211,80793321,88035081>, r=92780982 +pos=<39875067,42785694,76339179>, r=65869276 +pos=<-5157747,41748552,107083750>, r=92324593 +pos=<18964146,93929980,61477178>, r=81240555 +pos=<81536776,46433680,46801012>, r=81640941 +pos=<94166011,38407521,42667604>, r=82110723 +pos=<60728423,45142856,50542727>, r=63283338 +pos=<36410855,83675087,50022721>, r=76978022 +pos=<-20454635,58207989,66425766>, r=83422988 +pos=<46246033,49048711,53659999>, r=55824102 +pos=<72692893,153801242,85967425>, r=88751755 +pos=<4540630,110718546,42553480>, r=87065938 +pos=<42413753,73869042,57176342>, r=80328373 +pos=<64971284,22940199,72937665>, r=96579688 +pos=<91461930,49009151,45287658>, r=92628460 +pos=<62390239,22723353,47540542>, r=68818344 +pos=<59755013,45687319,49343292>, r=61654859 +pos=<49353913,31367635,10119153>, r=69532639 +pos=<54114140,2147482,65373607>, r=98951198 +pos=<3389758,52962712,67513533>, r=55421240 +pos=<78789828,40476770,32878831>, r=73311577 +pos=<101155428,30649423,41221897>, r=93338801 +pos=<53564934,5105594,62986141>, r=93056599 +pos=<65593518,29456685,41715814>, r=59463715 +pos=<-35586198,36028162,32986875>, r=59702033 +pos=<-25295205,40482663,56964615>, r=61077194 +pos=<18356784,58990025,114909279>, r=99125332 +pos=<83621641,39628269,45906127>, r=76025394 +pos=<22565697,35678102,49062922>, r=94579648 +pos=<90954307,42117152,43480499>, r=83421318 +pos=<46634969,35196426,-25094629>, r=98198958 +pos=<85428189,41911485,47556600>, r=81765646 +pos=<25555322,93081931,56727362>, r=82234151 +pos=<10034755,-9212713,68730616>, r=80984855 +pos=<30653862,87661731,64353386>, r=89538349 +pos=<54019970,60577388,65566592>, r=87033313 +pos=<-46807523,40903604,61224382>, r=87270136 +pos=<17893775,103221148,46929713>, r=74913957 +pos=<-2336941,50879914,94527016>, r=86078413 +pos=<66394311,51471008,43652686>, r=68387253 +pos=<94767703,46867970,45208013>, r=93712994 +pos=<59467453,60147182,44071362>, r=70555245 +pos=<56500093,40110380,47005458>, r=50485371 +pos=<44935759,58409350,44642484>, r=54856886 +pos=<-25936652,63053569,68868448>, r=96193758 +pos=<-3652911,52146751,79512908>, r=73647159 +pos=<-169202265,42151386,13051029>, r=68596274 +pos=<60459549,20975954,51793535>, r=72888116 +pos=<35124985,50824662,-15124583>, r=87998109 +pos=<34880990,68694410,51533853>, r=61978553 +pos=<38920017,58803910,80564410>, r=85157737 +pos=<29843157,41108330,47648885>, r=56314980 +pos=<21074227,72909178,61771468>, r=62624179 +pos=<9838125,69066161,77292668>, r=74855317 +pos=<18744824,68528106,56749391>, r=50891556 +pos=<82615629,110551945,113401881>, r=60034541 +pos=<47646119,53167861,44057630>, r=51740851 +pos=<-8645886,47719672,57082272>, r=51782452 +pos=<18742435,19359542,73491788>, r=54486361 +pos=<28628063,64024523,68261245>, r=67783193 +pos=<-4367728,27353731,15043545>, r=55101226 +pos=<44220252,59414300,48614097>, r=59117932 +pos=<-53150933,43778136,20986715>, r=94331539 +pos=<44073554,44058530,77281473>, r=72283210 +pos=<-51423316,39794197,45918527>, r=75470609 +pos=<-46400175,58193913,55581310>, r=98510067 +pos=<21231560,51342742,117869864>, r=97313437 +pos=<49334661,50867463,37173524>, r=49952551 +pos=<34518353,51698488,58407301>, r=51493446 +pos=<49579601,41224150,-7199567>, r=84927150 +pos=<50022590,61359544,51296327>, r=69547783 +pos=<65581803,39541131,69165904>, r=81158256 +pos=<50647754,28036152,48020535>, r=52243208 +pos=<41851266,57475229,7534104>, r=78716225 +pos=<94584788,30089642,45024090>, r=91130136 +pos=<16872530,86258385,48730156>, r=58730328 +pos=<25651622,11959003,64020486>, r=59324008 +pos=<-31006107,41240777,8498402>, r=82137604 +pos=<59345416,64504462,16149346>, r=94624372 +pos=<-7199320,11165096,47348931>, r=56459739 +pos=<64433908,32631081,32613193>, r=60855156 +pos=<-48247428,39853162,49317918>, r=75753079 +pos=<59472828,71798033,56428152>, r=94568314 +pos=<50199173,38575248,96031971>, r=91675810 +pos=<53410391,45628180,49470199>, r=55378206 +pos=<28253312,65224871,16287708>, r=64114371 +pos=<48024388,53001181,70365962>, r=78260780 +pos=<61862542,55171444,36140910>, r=67817077 +pos=<72192058,53097689,51400994>, r=83560106 +pos=<78809911,49107357,46720626>, r=81507134 +pos=<57655817,49040680,59830900>, r=73397244 +pos=<62766255,58367804,47475695>, r=75479368 +pos=<67207312,48690575,38738470>, r=64083516 +pos=<31029112,44302007,-19806226>, r=82061251 +pos=<84426497,25569875,49727148>, r=90194662 +pos=<10220944,84077441,47022619>, r=59213751 +pos=<-7972651,45617465,61905136>, r=53829907 +pos=<65896971,29384137,55236005>, r=73359778 +pos=<-26788008,12665215,69185094>, r=96384157 +pos=<56373926,61638547,71420958>, r=96302816 +pos=<-21405301,70321065,44140431>, r=74201362 +pos=<33083246,39881322,-17940787>, r=77829158 +pos=<39063928,51474235,61556796>, r=58964335 +pos=<49776248,-7830819,54510505>, r=93728494 +pos=<-50909791,52761648,49919428>, r=91925465 +pos=<-42219563,39267035,51882373>, r=71703522 +pos=<40627295,34672239,101525417>, r=89091398 +pos=<64442894,44879322,44542139>, r=60733604 +pos=<7842447,116011972,41239156>, r=87743270 +pos=<17986270,71220304,76649477>, r=72725433 +pos=<-2778648,93554527,33733404>, r=80988982 +pos=<74227354,38484934,61189461>, r=80771029 +pos=<67374791,29503089,12697253>, r=86839939 +pos=<36901553,45509798,42667739>, r=93969939 +pos=<67741453,41508029,38214645>, r=57958652 +pos=<39838932,44088106,72438432>, r=63234758 +pos=<-17699291,44623566,70400983>, r=71058431 +pos=<62619439,38900985,30509177>, r=57935189 +pos=<-71115746,36329383,46222154>, r=94084716 +pos=<71582977,56679423,51858231>, r=86990077 +pos=<34719570,54570413,68612631>, r=64771858 +pos=<39232226,98610883,35657109>, r=89109806 +pos=<22046071,74534659,71112688>, r=74562653 +pos=<2337724,78745004,48845087>, r=63586988 +pos=<81958141,48668954,44237309>, r=81733650 +pos=<-7983002,87000741,61648479>, r=94966922 +pos=<74972933,7454373,42600641>, r=91730106 +pos=<83410279,48054904,38105221>, r=80283836 +pos=<47344704,50076433,54833749>, r=59124178 +pos=<94368284,42246002,41687027>, r=85170742 +pos=<53658022,51321804,12380415>, r=79523301 +pos=<-16373428,76924070,59966726>, r=91598822 +pos=<59334769,52250025,56665559>, r=75119711 +pos=<61523087,53092788,42116978>, r=63602139 +pos=<23179374,39084795,43638284>, r=54021012 +pos=<76593609,43687739,61151025>, r=88301777 +pos=<46531572,87841047,53713289>, r=94955174 +pos=<54105876,58365500,51936633>, r=71277497 +pos=<38659030,55355817,50125835>, r=51009938 +pos=<47973182,58142028,54423515>, r=67407980 +pos=<36896452,61199431,93115389>, r=98080515 +pos=<32639395,48262743,47842085>, r=61615843 +pos=<53294473,96113478,42978828>, r=99256062 +pos=<66267076,54754163,27635266>, r=80309811 +pos=<51431803,-14198103,33165967>, r=94129469 +pos=<41607155,73868426,64915815>, r=87260825 +pos=<30762209,57486728,57759330>, r=52877818 +pos=<38041807,51199067,-1578960>, r=77743648 +pos=<-9839016,63868081,76308339>, r=88350000 +pos=<-16377070,44514916,65315581>, r=64542344 +pos=<40203924,23881404,81014224>, r=78948015 +pos=<111468030,38399740,41998204>, r=98735246 +pos=<-11358229,-3459043,48459621>, r=76353384 +pos=<1330458,67279977,72760905>, r=77045103 +pos=<34617827,24921756,83692617>, r=74999695 +pos=<-57983612,42268974,43298327>, r=81885459 +pos=<58273723,39683107,71947888>, r=76773962 +pos=<13049616,58500596,52330597>, r=97863811 +pos=<55896556,14239812,43556311>, r=66823950 +pos=<61795877,31499868,46925120>, r=58832116 +pos=<-34085513,38603513,11294554>, r=79783732 +pos=<52499965,56030605,61227059>, r=76627021 +pos=<36834041,-13659447,46673313>, r=78777701 +pos=<-50244957,39769620,70703567>, r=99052731 +pos=<42751637,48885115,87662958>, r=86169724 +pos=<20665855,12157814,71335013>, r=61454001 +pos=<46181257,40186354,15734083>, r=57557587 +pos=<35506002,46343792,98421697>, r=87140745 +pos=<21898615,82406398,73101692>, r=84276157 +pos=<67296976,39872201,43237139>, r=57275573 +pos=<25313239,43198989,74653991>, r=50035461 +pos=<71649332,40156035,36472829>, r=62256350 +pos=<13780708,44334822,45410131>, r=91680024 +pos=<24159723,65464095,71159039>, r=67652265 +pos=<85651290,39196794,12422890>, r=99349088 +pos=<48092133,53549169,58943626>, r=67454250 +pos=<52837652,60784257,53762180>, r=74253430 +pos=<24535676,-11407681,41700278>, r=59254526 +pos=<47781711,38747025,78561855>, r=71959941 +pos=<29900775,35554268,77435675>, r=53393205 +pos=<31597088,-9120496,58197117>, r=80525772 +pos=<30348982,82270183,47024748>, r=66513408 +pos=<21706390,80567729,62958613>, r=72102147 +pos=<51300111,47652779,86861446>, r=92683586 +pos=<-23728995,80541761,54302971>, r=96908348 +pos=<71314343,32901269,41794246>, r=61818529 +pos=<46961110,67758145,62316364>, r=83904860 +pos=<71215989,65937976,45480401>, r=89503795 +pos=<-32557343,48196217,55894289>, r=74982479 +pos=<59154606,39659469,26492530>, r=59245369 +pos=<19663064,13522004,43972643>, r=93154213 +pos=<2610333,59876451,64421058>, r=60021733 +pos=<19502259,23179892,120170711>, r=98103973 +pos=<5955883,-9916403,70224161>, r=87260891 +pos=<-44944651,51169662,46053228>, r=80502251 +pos=<62503246,40509674,41592662>, r=51474851 +pos=<96959296,28402927,44448357>, r=94615723 +pos=<17675201,68816826,57668848>, r=51030149 +pos=<65208480,46790192,51104431>, r=69972390 +pos=<-6575619,64359366,51878055>, r=61147799 +pos=<61200381,41362049,47450442>, r=56882697 +pos=<85839079,21289390,42883337>, r=89044119 +pos=<36727326,50660184,68135186>, r=62392172 +pos=<25671654,52234232,45958942>, r=54158036 +pos=<22740018,-13299961,61230857>, r=78881770 +pos=<-50779391,38547797,37100305>, r=70615994 +pos=<31039917,105956357,52909402>, r=96775288 +pos=<64827681,54902715,41637088>, r=68236719 +pos=<70454640,54156547,41111716>, r=72592370 +pos=<-45307076,49614872,34981119>, r=78329961 +pos=<34989979,98636940,45696258>, r=86192568 +pos=<-17781435,48151601,76593819>, r=80861472 +pos=<88942975,45837513,46063052>, r=87712890 +pos=<45828738,55915066,81687181>, r=90300427 +pos=<33273104,51500755,77113564>, r=68756766 +pos=<54348736,51509051,44091714>, r=56818819 +pos=<75671517,46036210,60777129>, r=89354168 +pos=<28232262,93440204,45267145>, r=73808990 +pos=<83673016,18521381,42091824>, r=88854645 +pos=<-12204532,54913366,277580>, r=85229460 +pos=<37994278,93340320,42577762>, r=80781702 +pos=<41498723,70072670,50468583>, r=68909235 +pos=<-45694458,31527482,55777865>, r=83021162 +pos=<68523992,64543135,44288505>, r=84225056 +pos=<35824574,39544357,55066544>, r=58383867 +pos=<59998261,57984959,55332013>, r=80184501 +pos=<24174731,63183109,62169333>, r=56396425 +pos=<36039617,63515613,53093111>, r=59517592 +pos=<199019655,72107599,44645346>, r=66220848 +pos=<54926624,58145218,19339427>, r=80656248 +pos=<45293379,47557733,86499853>, r=86220510 +pos=<19058100,79610316,-3706924>, r=89299143 +pos=<69813114,68956789,53251549>, r=98890984 +pos=<-19553040,57095307,53075537>, r=68058664 +pos=<47292189,75531854,47454471>, r=77148154 +pos=<77149361,33328432,41697736>, r=67129692 +pos=<54211450,43092009,47997909>, r=52170959 +pos=<68236906,41269898,68116063>, r=84492379 +pos=<16854327,96867129,47862700>, r=68453576 +pos=<22019266,72941977,85005218>, r=86835710 +pos=<40568390,42406733,101991772>, r=91836130 +pos=<22114068,106010666,64239035>, r=99233177 +pos=<45859486,45822079,62286017>, r=60836848 +pos=<28044550,58440921,57109265>, r=50464302 +pos=<3480407,86314793,59027546>, r=80196544 +pos=<31556099,38481559,76864155>, r=53771402 +pos=<22045478,32525317,62360514>, r=85513567 +pos=<-60538009,38570439,56446414>, r=93889774 +pos=<80897608,40912089,62551170>, r=91230217 +pos=<156997577,40496836,-32014684>, r=88229654 +pos=<46251042,52541631,52836982>, r=58498895 +pos=<66011381,146740281,104278480>, r=68847213 +pos=<94896365,35805756,43419157>, r=84120810 +pos=<42902045,68903231,52490284>, r=71164886 +pos=<17181700,63812521,78732157>, r=66595718 +pos=<79000048,24905973,52655647>, r=88360731 +pos=<31032336,77861179,59246279>, r=75009181 +pos=<16972353,41949376,60113922>, r=69982958 +pos=<65059012,50444197,43277825>, r=65650499 +pos=<89887659,58909424,43003043>, r=98669387 +pos=<-175689075,39549030,59257131>, r=96286655 +pos=<-38829060,33689553,45081446>, r=63297307 +pos=<25278051,71921550,68469788>, r=72539175 +pos=<65917987,39728542,33187441>, r=59383019 +pos=<47143917,84843768,45814335>, r=84671737 +pos=<28721978,-22530819,61649266>, r=94512978 +pos=<40622737,56248436,82375549>, r=86116028 +pos=<-21497563,48928308,57043461>, r=65803973 +pos=<34272203,64584447,54546443>, r=60272462 +pos=<30936992,51190169,106132649>, r=95129344 +pos=<-33082378,57759958,66828158>, r=96005138 +pos=<23524091,75849342,27368969>, r=58928376 +pos=<74923380,30197024,57070114>, r=83407645 +pos=<65875347,50049558,46742159>, r=69536445 +pos=<54750611,77081879,33239904>, r=85516507 +pos=<26706559,34314379,44009591>, r=88863097 +pos=<50358577,56421491,51592989>, r=65242404 +pos=<3733155,104018123,35572009>, r=83102071 +pos=<56821001,55543861,50203714>, r=69437812 +pos=<43371520,39885414,63760084>, r=53886285 +pos=<43063956,47301104,67979498>, r=65213884 +pos=<-988355,49692168,105180479>, r=94195729 +pos=<50994470,43394408,81731320>, r=82989726 +pos=<70807873,43325100,20004224>, r=81052574 +pos=<75601607,35236493,64230048>, r=86206457 +pos=<81700507,24459644,59107616>, r=97959917 +pos=<22275642,82721291,80243176>, r=92109658 +pos=<21673579,23876100,80946749>, r=60355179 +pos=<-39702796,42171081,49249417>, r=69458325 +pos=<80884817,42022174,41592438>, r=71369134 +pos=<67463990,50617828,45436165>, r=70387636 +pos=<43057946,77295435,47686042>, r=74908810 +pos=<42069902,84433970,42282586>, r=75656028 +pos=<32067933,70757055,64781007>, r=74475853 +pos=<77818000,42741809,41124734>, r=68554254 +pos=<23202341,50850398,6614116>, r=54362589 +pos=<76350799,39979764,49848974>, r=73048777 +pos=<38871595,85966329,42537780>, r=74244988 +pos=<48357998,51584849,68592374>, r=75404518 +pos=<79266466,40123155,71191634>, r=97450503 +pos=<47921176,39897617,65617378>, r=60305438 +pos=<17720523,88336126,49794145>, r=62720035 +pos=<38668002,46966386,72008773>, r=64512409 +pos=<55486996,65995056,49519597>, r=77870920 +pos=<26418370,61638623,42101152>, r=81323341 +pos=<141089527,73455460,-11028282>, r=51294696 +pos=<25737160,-2860001,29267131>, r=60995663 +pos=<51496492,77076332,47850296>, r=83292357 +pos=<87169708,31750516,41638591>, r=78668706 +pos=<46653914,76577320,24726543>, r=85428500 +pos=<17144624,13112513,90939628>, r=76582777 +pos=<51121593,73437159,50024943>, r=81452931 +pos=<52842029,-9680642,54191866>, r=98325459 +pos=<18759176,47216933,41416270>, r=63292968 +pos=<37688164,71339295,43606305>, r=59503000 +pos=<84496915,39219048,57676035>, r=88261242 +pos=<89240220,34579029,41078796>, r=77350880 +pos=<70664904,43528557,36274733>, r=64842618 +pos=<27737612,87425294,51157474>, r=73189986 +pos=<89935526,53082076,49536983>, r=99424028 +pos=<58393564,33326936,44569535>, r=51247076 +pos=<32721491,67532155,60688129>, r=67811274 +pos=<71262591,35117136,64614096>, r=82370565 +pos=<45303536,73497249,46548925>, r=72218962 +pos=<-37861891,63705166,44024113>, r=83926187 +pos=<21721113,42503480,-27462007>, r=78610438 +pos=<38994695,45089658,62055810>, r=53009402 +pos=<71047357,46334122,64342531>, r=88593316 +pos=<36331481,58841725,56467205>, r=58509739 +pos=<23709459,12747184,69501665>, r=62074889 +pos=<74258619,41933981,43767629>, r=66830235 +pos=<35494835,54492660,7059210>, r=69852095 +pos=<92331718,49950221,45095172>, r=94246352 +pos=<42690040,72306865,24619196>, r=77301657 +pos=<27107688,55202317,47820408>, r=66659932 +pos=<51589077,44762589,47900666>, r=51121620 +pos=<42432800,50083942,62978387>, r=62364365 +pos=<96406397,102137829,116278597>, r=58959937 +pos=<74130106,50127970,12262935>, r=98919259 +pos=<61634938,209693518,45117545>, r=53628760 +pos=<63543286,42390604,28566266>, r=64291434 +pos=<35523130,31574108,98816714>, r=84376694 +pos=<23698497,114534416,30025095>, r=95132097 +pos=<33815739,69439674,51187536>, r=61312185 +pos=<32309883,90345840,59731275>, r=89256256 +pos=<61834289,9294169,42219195>, r=76370427 diff --git a/src/main.rs b/src/main.rs index 9622a91..44c35ec 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,4 +1,4 @@ fn main() { - aoc_2018::tasks::day22::both(); + aoc_2018::tasks::day23::task1(); // aoc_2018::tasks::day15::task2(); } diff --git a/src/tasks/day23.rs b/src/tasks/day23.rs new file mode 100644 index 0000000..a57205c --- /dev/null +++ b/src/tasks/day23.rs @@ -0,0 +1,45 @@ +use crate::utils; +extern crate regex; +use regex::Regex; + +pub fn task1() { + let input = utils::read_file("input/day23.txt"); + let regex = + Regex::new(r"^pos=<(?P-?\d+),(?P-?\d+),(?P-?\d+)>, r=(?P\d+)$").unwrap(); + let bots: Vec = input + .lines() + .map(|line| { + let m = regex.captures(line).unwrap(); + let x = m["x"].parse::().unwrap(); + let y = m["y"].parse::().unwrap(); + let z = m["z"].parse::().unwrap(); + let range = m["range"].parse::().unwrap(); + + Bot { x, y, z, range } + }) + .collect(); + + let big_bot = bots.iter().max_by_key(|it| it.range).unwrap(); + println!("The bot with largest range is {:?}", big_bot); + + let bots_in_range = bots + .iter() + .filter(|other| big_bot.distance(other) <= big_bot.range) + .count(); + + println!("There are {} bots in range of the big bot.", bots_in_range); +} + +#[derive(Debug)] +struct Bot { + x: isize, + y: isize, + z: isize, + range: usize, +} + +impl Bot { + fn distance(&self, other: &Self) -> usize { + ((other.x - self.x).abs() + (other.y - self.y).abs() + (other.z - self.z).abs()) as usize + } +} diff --git a/src/tasks/mod.rs b/src/tasks/mod.rs index 713556c..01676ab 100644 --- a/src/tasks/mod.rs +++ b/src/tasks/mod.rs @@ -14,4 +14,5 @@ pub mod day13; pub mod day14; pub mod day15; pub mod day20; -pub mod day22; \ No newline at end of file +pub mod day22; +pub mod day23;