layers={"0": {"config": {"units": 24, "activation": "relu"}, "weights": [[-0.2614404857158661, 0.15387731790542603, 0.1441042125225067, -0.04162198677659035, -0.25896304845809937, -0.057319995015859604, 0.03519190102815628, 0.21967247128486633, -0.0818123146891594, -0.08692721277475357, 0.13960403203964233, -0.0791163370013237, 0.1530395895242691, 0.17115801572799683, -0.24635352194309235, -0.03576820343732834, 0.07705922424793243, -0.24496059119701385, 0.200712651014328, -0.2725670039653778, 0.25596553087234497, 0.24349060654640198, -0.06031107157468796, -1.0775902271270752], [-0.06849793344736099, -0.020981045439839363, -0.054771456867456436, -0.1421309858560562, 0.1910979002714157, 0.1389487385749817, 0.14713603258132935, 0.07443632185459137, -0.04339418187737465, 0.007500534877181053, -0.1228199452161789, 0.12292780727148056, -0.22514653205871582, -0.13892681896686554, 0.16704784333705902, -0.052065376192331314, 0.041405223309993744, 0.09995389729738235, 0.10537533462047577, -0.05126390978693962, -0.019362881779670715, 0.03863419592380524, -0.026564044877886772, 0.2700331211090088], [0.1827949732542038, 0.34656479954719543, 0.20406050980091095, -0.225872203707695, 0.2521652579307556, 0.08588256686925888, 0.039795882999897, -0.1724456399679184, -0.06518059223890305, -0.2145196944475174, -0.12850485742092133, -0.23603713512420654, 0.07203242182731628, 0.026639383286237717, -0.026233430951833725, -0.18600738048553467, -0.15437382459640503, 0.1168699562549591, 0.18927332758903503, -0.2706438899040222, -0.14171119034290314, 0.08470030874013901, 0.2651483118534088, -0.11575690656900406], [0.2965953052043915, -0.09121732413768768, 0.3403816819190979, -0.14126764237880707, 0.146301731467247, -0.08579076826572418, 0.15133866667747498, -0.11125656217336655, -0.020943252369761467, -0.08917620778083801, -0.12427221983671188, -0.06699962168931961, 0.17622597515583038, -0.04240294545888901, 0.20169834792613983, 0.07472376525402069, -0.13449864089488983, -0.27429425716400146, -0.21218061447143555, -0.02166261337697506, -0.3139342665672302, -0.1357959657907486, -0.31570369005203247, -0.3614015281200409], [0.10784142464399338, -0.18433131277561188, 0.019541097804903984, 0.14975279569625854, -0.24171003699302673, 0.15989533066749573, -0.004456787370145321, 0.12352480739355087, -0.03968045860528946, -0.07176350802183151, 0.08039733022451401, 0.059686169028282166, -0.2613728940486908, 0.13917846977710724, 0.13961660861968994, 0.056180570274591446, 0.043631911277770996, 0.18903875350952148, -0.02932504564523697, 0.15974712371826172, 0.18034543097019196, 0.005505486857146025, -0.0737331360578537, 0.527655303478241], [-0.22263967990875244, -0.24509325623512268, -0.08630093187093735, 0.17370598018169403, 0.03002263978123665, -0.42988136410713196, -0.03620802238583565, -0.15447957813739777, 0.05839540436863899, 0.27223190665245056, -0.11601800471544266, 0.10725834965705872, -0.20847217738628387, 0.21021579205989838, -0.13447405397891998, 0.31060004234313965, -0.10596290230751038, 0.3141387104988098, -0.04322199523448944, 0.4131286144256592, 0.3536330759525299, 0.1519896537065506, -0.1073080524802208, -0.742841362953186], [-0.05600426346063614, -0.022556381300091743, 0.17216439545154572, -0.08313769847154617, -0.07956689596176147, -0.13270290195941925, 0.013661430217325687, 0.227191761136055, -3.120118344668299e-05, 0.08900381624698639, 0.1610831618309021, 0.0010832641273736954, -0.07355205714702606, 0.10045207291841507, -0.1685381382703781, -0.13212314248085022, 0.10606738924980164, -0.3096334934234619, -0.03452656418085098, 0.24437855184078217, 0.10332299768924713, 0.19831864535808563, 0.032087285071611404, 0.404731810092926], [-0.044487711042165756, 0.4573329985141754, 0.08509769290685654, -0.30130162835121155, -0.2042677253484726, 0.05499901995062828, 0.2150123119354248, -0.07915905863046646, 0.3959486484527588, -0.14460262656211853, 0.3180929720401764, -0.2982468903064728, 0.2749772369861603, -0.03010541945695877, 0.035708196461200714, 0.1567949801683426, 0.06370864808559418, 0.007629940751940012, -0.00387940532527864, -0.03408915922045708, -0.08678225427865982, 0.17088574171066284, 0.26065072417259216, -0.3111378848552704], [0.014480297453701496, 0.20202237367630005, -0.3194558918476105, -0.13640353083610535, 0.09178242832422256, 0.38629645109176636, 0.0027325404807925224, 0.08474665880203247, -0.044082846492528915, -0.15067264437675476, 0.11139249801635742, -0.3412187993526459, -0.014915615320205688, 0.14756308495998383, -0.10272608697414398, -0.2566283941268921, -0.16149625182151794, 0.013370668515563011, -0.1952478438615799, 0.010579298250377178, 0.317377507686615, 0.2939489185810089, 0.12587077915668488, -0.07642224431037903], [-0.295423299074173, -0.024419186636805534, 0.011317630298435688, -0.42641615867614746, -0.3561234772205353, 0.14932550489902496, 0.0158915426582098, -0.11818259209394455, -0.05189579725265503, 0.303329735994339, -0.32538267970085144, 0.20185932517051697, -0.38333356380462646, 0.0427696518599987, -0.39123138785362244, -0.023319723084568977, 0.1378014236688614, -0.10599693655967712, 0.005562486592680216, 0.1619407683610916, 0.18378455936908722, 0.20780842006206512, 0.2779647409915924, 0.38997599482536316], [0.2857133448123932, 0.018729235976934433, 0.0143733574077487, 0.012951546348631382, 0.11670314520597458, 0.13656620681285858, 0.2119615077972412, -0.2673722207546234, -0.1795518845319748, -0.3155660331249237, -0.16363388299942017, 0.013713675551116467, 0.06181018427014351, -0.01865904964506626, 0.11924608051776886, 0.08696096390485764, 0.2870956063270569, 0.002159609692171216, 0.24418003857135773, 0.05511123687028885, -0.32530146837234497, 0.18387281894683838, -0.25293686985969543, -0.5284976363182068], [-0.10640782117843628, 0.0613907091319561, -0.16056378185749054, 0.14430350065231323, 0.26186105608940125, -0.15538783371448517, 0.020393986254930496, -0.07633187621831894, -0.00022015876311343163, -0.05640451982617378, -0.1421229988336563, 0.04967799410223961, -0.06038059666752815, -0.08835252374410629, 0.19484227895736694, 0.2973974347114563, -0.018460437655448914, 0.3952683210372925, 0.07803178578615189, -0.12733194231987, 0.09502570331096649, 0.10094565898180008, 0.0016812196699902415, 0.8369782567024231], [-0.030219392850995064, 0.10242678225040436, -0.12008655816316605, 0.03681318461894989, 0.11873511970043182, -0.3350018858909607, 0.18240465223789215, 0.04709377884864807, 0.11895529925823212, 0.09552312642335892, -0.25597184896469116, 0.01880291849374771, 0.11438334733247757, -0.08647187054157257, -0.23785804212093353, -0.1613110452890396, -0.1776086539030075, 0.0869741439819336, -0.30232879519462585, 0.12371353805065155, -0.18491476774215698, -0.016922229900956154, -0.1907939314842224, -0.7620172500610352], [0.09294210374355316, -0.01100258156657219, 0.04050504043698311, 0.11038541048765182, 0.06852462142705917, 0.014305690303444862, -0.03328574821352959, -0.21336813271045685, -0.07560227066278458, 0.1741272360086441, 0.1726997196674347, -0.0576387494802475, -0.003681726288050413, -0.06645181775093079, -0.16141413152217865, 0.13960899412631989, -0.043372053653001785, -0.02433857135474682, 0.019630955532193184, 0.006510958541184664, 0.16728349030017853, -0.06220916286110878, 0.25684502720832825, 0.09932289272546768], [0.02147720567882061, 0.13946577906608582, 0.22703953087329865, -0.11024791747331619, 0.16150206327438354, 0.12684497237205505, -0.22835050523281097, -0.28192567825317383, 0.24943801760673523, -0.2973700761795044, 0.08952517807483673, -0.10783743113279343, 0.11495578289031982, 0.08731216937303543, 0.04808248206973076, -0.2598971128463745, 0.1618443876504898, -0.3111341893672943, -0.3183872699737549, -0.2079939842224121, -0.11686351150274277, -0.027543330565094948, 0.3394937515258789, 0.6260438561439514], [-0.21172502636909485, 0.07418361306190491, -0.11498115956783295, 0.24451152980327606, 0.054122697561979294, -0.24742157757282257, -0.17278875410556793, 0.37520265579223633, -0.0665639117360115, 0.2909477949142456, 0.02181623876094818, -0.15553781390190125, 0.15838901698589325, -0.03404542803764343, -0.15887299180030823, -0.10831902921199799, -0.15247127413749695, 0.013255747966468334, -0.07130088657140732, 0.09646488726139069, -0.4771097004413605, -0.07781827449798584, 0.010309337638318539, 0.7130510807037354], [0.4210790693759918, -0.00748977717012167, 0.07850657403469086, -0.2184937447309494, 0.2247585654258728, 0.2342676818370819, -0.22243419289588928, -0.20657497644424438, 0.018220722675323486, 0.0853065624833107, -0.024790817871689796, -0.1466311663389206, 0.020242959260940552, 0.017101887613534927, 0.29433274269104004, 0.234794020652771, 0.17034493386745453, -0.33214831352233887, -0.410858690738678, -0.3127763271331787, 0.13392235338687897, -0.08852335065603256, -0.16857244074344635, -0.47412410378456116], [0.06863099336624146, -0.1627165675163269, -0.1054789200425148, -0.41843920946121216, 0.30873557925224304, -0.26667559146881104, 0.21348513662815094, -0.29807528853416443, 0.1837451159954071, 0.11116725951433182, -0.05228345841169357, -0.040231090039014816, 0.3070521056652069, 0.016294240951538086, 0.20497126877307892, 0.17955586314201355, -0.13735122978687286, -0.0529610775411129, 0.3207460343837738, 0.21838387846946716, -0.19522827863693237, -0.21937213838100433, 0.29824283719062805, 0.18155136704444885], [-0.031107813119888306, 0.08466072380542755, -0.18358328938484192, 0.12413054704666138, 0.12052378058433533, 0.22913813591003418, 0.02104354090988636, -0.00761400954797864, 0.08813469111919403, -0.1574087291955948, 0.2134593278169632, -0.04795471578836441, -0.2566985487937927, 0.03624296933412552, 0.14734911918640137, 0.12428594380617142, 0.2860976755619049, 0.28233635425567627, 0.02032529003918171, -0.12561775743961334, 0.2149857133626938, -0.12353086471557617, 0.30049389600753784, 0.36684590578079224], [-0.18512441217899323, -0.18379569053649902, 0.26166844367980957, 0.25238487124443054, 0.2928764224052429, 0.1462632119655609, 0.16085240244865417, -0.1310768872499466, 0.1881893277168274, -0.06916362792253494, -0.08190945535898209, -0.2508522570133209, 0.17217981815338135, 0.1433514505624771, -0.0839654952287674, 0.07977725565433502, -0.11611407995223999, -0.03382808342576027, 0.05274812877178192, -0.053725872188806534, 0.26121044158935547, -0.25545522570610046, 0.11241465061903, -0.2013309895992279], [0.06944093108177185, 0.15660907328128815, -0.15052585303783417, -0.28898194432258606, -0.10996831208467484, 0.393015056848526, 0.27617740631103516, 0.2093956023454666, -0.14459049701690674, -0.04009717330336571, -0.17603464424610138, 0.13422948122024536, -0.14393550157546997, 0.011383824981749058, -0.1293768733739853, 0.1838381588459015, -0.2823552191257477, 0.09002204239368439, 0.2676037549972534, -0.03689028322696686, -0.16781309247016907, 0.08882886916399002, 0.05124269798398018, 0.5178139805793762], [0.23251622915267944, -0.09865476936101913, -0.20082984864711761, 0.1382235437631607, -0.08647570759057999, -0.03904513642191887, 0.0362401008605957, -0.22656379640102386, 0.2059830129146576, 0.07447982579469681, 0.16694362461566925, -0.30112332105636597, -0.1332198679447174, 0.17487719655036926, 0.08735507726669312, -0.03507094830274582, 0.13191500306129456, 0.4058467745780945, 0.3386070132255554, -0.22346928715705872, -0.20820942521095276, 0.21566130220890045, 0.16419625282287598, -0.9210354089736938], [0.12307258695363998, 0.04012686759233475, 0.12109415978193283, -0.09783681482076645, -0.1748076230287552, 0.143967866897583, -0.01049292366951704, 0.0018989763921126723, 0.11228186637163162, -0.181676983833313, -0.2680281102657318, 0.17523261904716492, -0.08708631247282028, 0.3525380492210388, 0.20636239647865295, 0.09729999303817749, -0.3433387577533722, -0.1277693659067154, -0.056927263736724854, 0.21776939928531647, 0.13707971572875977, 0.15771710872650146, -0.09340794384479523, -0.17332223057746887], [0.09838785231113434, 0.13937802612781525, 0.05427079647779465, -0.09690532088279724, -0.2588023245334625, 0.01490987092256546, 0.09732946753501892, -0.1488785594701767, 0.16623492538928986, -0.1780695915222168, -0.12546437978744507, -0.020600443705916405, 0.06969591975212097, -0.027184266597032547, 0.02555038034915924, -0.11768805235624313, -0.021396296098828316, -0.15354913473129272, 0.3737267851829529, -0.009900805540382862, -0.2064618319272995, -0.1478748917579651, -0.2942134141921997, 0.5692445635795593]], "biases": [0.007903083227574825, -0.21252654492855072, 0.08305559307336807, 0.11265067011117935, -0.060193903744220734, -0.550853431224823, -0.26344937086105347, -0.06306512653827667, -0.5081228017807007, 0.2237837314605713, -0.47758108377456665, 0.36978960037231445, -0.013167017139494419, -0.12264478206634521, -0.35853490233421326, 0.3510732352733612, 0.1325901299715042, 0.35064610838890076, -0.09655561298131943, -0.9742395877838135, -0.6160537004470825, 0.8962224721908569, -0.09938520938158035, 0.5493164658546448]}, "1": {"config": {"units": 12, "activation": "linear"}, "weights": [[-0.26150617003440857, -0.020859234035015106, -0.03438958898186684, -0.07409045100212097, 0.35890528559684753, -0.07307935506105423, 0.08164863288402557, -0.01334343384951353, 0.02615310251712799, 0.02720167115330696, -0.06012365594506264, 0.296845018863678, -0.3188369572162628, 0.16295450925827026, 0.26331421732902527, 0.2125953733921051, -0.06309489160776138, 0.048840999603271484, -0.13531959056854248, -0.03483473137021065, 0.21177075803279877, -0.29454511404037476, -0.09005244076251984, 0.11617208272218704], [-0.2877057194709778, -0.04466736316680908, 0.005479209590703249, -0.012938926927745342, -0.15175417065620422, -0.07167505472898483, 0.326213538646698, -0.14609718322753906, -0.01475386694073677, 0.03562306985259056, -0.13930083811283112, 0.32454240322113037, -0.33611899614334106, 0.010773888789117336, 0.18394510447978973, 0.24191339313983917, -0.09531977772712708, 0.044329650700092316, 0.256359338760376, -0.055987853556871414, 0.15555621683597565, -0.3238532245159149, 0.10813011229038239, 0.1850578635931015], [-0.266888827085495, 8.493142377119511e-05, 0.013076294213533401, -0.02793211117386818, 0.13656742870807648, -0.11945833265781403, 0.17411555349826813, -0.2060593217611313, -0.027071619406342506, 0.05989239364862442, -0.12559913098812103, 0.1672382801771164, -0.3300638496875763, 0.10071641951799393, 0.1781197190284729, 0.24964866042137146, -0.09524811804294586, 0.09231575578451157, 0.21254755556583405, 0.013939023949205875, 0.16156801581382751, -0.3799232840538025, 0.05883311107754707, 0.13396278023719788], [-0.28485217690467834, 0.22139619290828705, 0.001592823420651257, -0.011698560789227486, 0.38351860642433167, -0.1626414656639099, 0.030553098767995834, -0.01613166369497776, 0.022070135921239853, 0.057532086968421936, -0.07385893911123276, 0.31152909994125366, -0.2828845977783203, 0.18861684203147888, 0.11774741113185883, 0.21496523916721344, -0.20365425944328308, 0.06640342622995377, -0.20947983860969543, 0.14590796828269958, 0.11134249716997147, -0.4099198281764984, -0.07411136478185654, 0.09614018350839615], [-0.224793940782547, 0.1286010444164276, -7.742673915345222e-05, 0.06609613448381424, -0.05043661221861839, -0.205380380153656, 0.11578677594661713, -0.199229896068573, 0.025212492793798447, 0.09274556487798691, -0.06725501269102097, 0.13276240229606628, -0.3624560832977295, 0.18977217376232147, -0.03770458698272705, 0.22217126190662384, -0.25495806336402893, 0.10920833796262741, 0.34188663959503174, 0.06212544068694115, 0.14103417098522186, -0.45474132895469666, 0.06649969518184662, 0.16973474621772766], [-0.3194790780544281, -0.02708873152732849, 0.001498259836807847, -0.030700134113430977, 0.1972998082637787, -0.26640504598617554, 0.015540825203061104, 0.028847787529230118, -0.014555050991475582, 0.11913810670375824, 0.03907836973667145, 0.3168775141239166, -0.21938194334506989, 0.006509954575449228, -0.08296561241149902, 0.09325210005044937, -0.28935739398002625, 0.07508071511983871, -0.08842399716377258, 0.19987818598747253, 0.40906116366386414, -0.5092092156410217, -0.20315766334533691, -0.011958003975450993], [-0.22514040768146515, -0.08676670491695404, -0.024563010782003403, -0.23631620407104492, 0.3748355507850647, -0.319161057472229, 0.002345056738704443, -0.006535377819091082, 0.011425032280385494, 0.11929555237293243, 0.06339375674724579, 0.05034846067428589, -0.21981622278690338, -0.15726669132709503, -0.11296305060386658, 0.07173068821430206, -0.08899442106485367, 0.06612012535333633, 0.19522543251514435, 0.11144005507230759, 0.3083891272544861, -0.6328379511833191, -0.21439754962921143, 0.03639775142073631], [-0.2522944211959839, 0.17034418880939484, -0.047853823751211166, -0.25472521781921387, 0.26010772585868835, -0.2969919741153717, 0.07371032238006592, 0.0825880840420723, -0.12180501967668533, 0.12077385932207108, 0.1385595202445984, 0.05960921198129654, -0.16232381761074066, -0.13376642763614655, -0.1030789315700531, 0.11819005757570267, -0.120209239423275, 0.09273223578929901, 0.17994116246700287, 0.03332127630710602, 0.10373059660196304, -0.7104254961013794, -0.04150020331144333, -0.0003620570932980627], [-0.2209138572216034, -0.07892952114343643, -0.14913417398929596, -0.2627519965171814, 0.013918083161115646, -0.2973220944404602, 0.008562527596950531, 0.1786968857049942, -0.06754973530769348, 0.12506523728370667, 0.19970931112766266, 0.2383003681898117, -0.17945082485675812, 0.00791719276458025, -0.13639138638973236, 0.15292476117610931, -0.06411933898925781, 0.10382997244596481, 0.19540853798389435, 0.031591419130563736, 0.03166813403367996, -0.8402179479598999, 0.016768785193562508, 0.02948424220085144], [-0.16800713539123535, -0.12065554410219193, -0.10412831604480743, -0.263092041015625, 0.23719677329063416, -0.37608984112739563, 0.1094634085893631, 0.09229149669408798, -0.1970638483762741, 0.14492443203926086, 0.24632535874843597, 0.020524650812149048, -0.17124928534030914, -0.12781183421611786, -0.05140439793467522, 0.027142956852912903, -0.14817504584789276, 0.16291318833827972, 0.27726006507873535, 0.02565884031355381, -0.019882943481206894, -0.9034543037414551, 0.043219368904829025, -0.03666510060429573], [-0.20757576823234558, 0.27019795775413513, -0.25733113288879395, -0.08242972940206528, -0.17284414172172546, -0.36287254095077515, 0.028915848582983017, 0.24753780663013458, -0.15747271478176117, 0.11589255928993225, 0.25999438762664795, 0.26560208201408386, -0.20521579682826996, 0.2210593968629837, -0.051535528153181076, -0.023968582972884178, -0.2815919518470764, 0.19337309896945953, 0.1217208206653595, -0.008514590561389923, -0.17594432830810547, -0.8541277647018433, 0.15708687901496887, 0.1303023099899292], [-0.04678630456328392, -0.10963398218154907, -0.17178085446357727, -0.1658240556716919, 0.028859497979283333, -0.41344496607780457, 0.018620707094669342, 0.25721925497055054, -0.1633826494216919, 0.12766991555690765, 0.2560740113258362, 0.3226069211959839, -0.24188856780529022, 0.010574877262115479, -0.0678924098610878, 0.002640366554260254, -0.23422271013259888, 0.2238677442073822, 0.03487946838140488, 0.08419420570135117, -0.09846198558807373, -0.897817850112915, 0.05954112857580185, -0.0004503003729041666]], "biases": [0.11741652339696884, 0.002270254772156477, 0.04389741271734238, 0.040274009108543396, -0.01029124204069376, 0.17584514617919922, 0.2719894051551819, 0.1651746928691864, 0.10892096906900406, 0.25673189759254456, 0.08128669857978821, 0.03392329066991806]}}
# def normalize(arr, mx, mn):
# for i in range(len(arr)):
# for j in range(len(arr[i])):
# arr[i][j] = arr[i][j]*100 / (mx - mn)
# return arr
def relu(x):
return max(0.0, x)
def custom_predict(input):
for key, layer in layers.items():
# print(layer)
config = layer["config"]
weights = layer["weights"]
biases = layer["biases"]
# print(config)
neurons = config["units"]
output = [0]*neurons
for n in range(neurons):
activation = 0
assert len(input) == len(weights[n])
for (i, w) in zip(input, weights[n]):
activation += i * w
activation += biases[n]
# print(activation)
if(config["activation"] == 'relu'):
output[n] = relu(activation)
else:
output[n] = activation
input = output
return input
# import sys
# import numpy as np
# file = open("data.txt", "r")
# sys.stdin = file
# total_correct = 0
# total_incorrect = 0
from statistics import variance, mean
# training_vars = []
# correct_vars = []
# incorrect_vars = []
data = []
days = int(input())
for i in range(days):
temps = [float(x) for x in input().split()]
data.append(temps)
TRAINING_MEAN = 4.9959406249999985
TRAINING_VAR = 6.964563233695652
for d in data:
avg = sum(d[:24]) / 24
var = variance(d[:24])
if abs(TRAINING_MEAN - avg) < 17 and abs(TRAINING_VAR - var) < 50:
# if True:
ans = custom_predict(d[:24])
print(" ".join([format(x, ".1f") for x in ans]))
# truth = d[24:]
# diff = np.abs(np.array(ans) - np.array(truth))
# correct = np.count_nonzero(diff < 0.75)
# incorrect = np.count_nonzero(diff >= 2.05)
else:
print("? " * 12)
# incorrect = 0
# correct = 0
# var = variance(d[:24])
# training_vars.append(var)
# if (incorrect > 4):
# incorrect_vars.append(var)
# else:
# correct_vars.append(var)
# total_correct += correct
# total_incorrect += incorrect
# score = 25 * (total_correct - total_incorrect) / days
# print(mean(correct_vars))
# print(mean(incorrect_vars))
# print(mean(training_vars))
# print(total_correct, total_incorrect, score)
# file.close()