layers={"0": {"config": {"units": 24, "activation": "relu"}, "weights": [[0.11315331608057022, 0.02269585430622101, 0.15509875118732452, 0.2591054439544678, 0.2430412322282791, -0.23405025899410248, -0.19554221630096436, -0.17199061810970306, -0.1290733814239502, 0.13433776795864105, -0.07227880507707596, -0.15906555950641632, 0.15235012769699097, 0.03360715135931969, 0.1557990312576294, -0.08148185908794403, -0.31551629304885864, -0.1549758017063141, -0.4431096911430359, -0.21060742437839508, -0.15939785540103912, -0.14088858664035797, 0.3435383141040802, 0.7796244025230408], [-0.04500311240553856, -0.09255649149417877, 0.0216609388589859, -0.1099480465054512, 0.21794508397579193, 0.23588010668754578, 0.04821397364139557, -0.0048723965883255005, 0.3076613247394562, 0.19477519392967224, -0.15382884442806244, 0.04934835433959961, -0.08854826539754868, -0.1771966964006424, 0.08065290749073029, -0.24601496756076813, 0.17035561800003052, 0.3497825562953949, 0.005804786458611488, 0.00997249223291874, 0.1633985936641693, -0.22137804329395294, 0.06426337361335754, 0.7021899223327637], [0.12718810141086578, 0.07306478172540665, -0.2691192626953125, -0.12418266385793686, 0.09822407364845276, 0.32328835129737854, 0.3436398208141327, 0.19219587743282318, -0.3724000155925751, 0.14158374071121216, -0.06809861212968826, -0.14811205863952637, -0.42889603972435, -0.08085261285305023, -0.31355470418930054, -0.2527540326118469, 0.08346889913082123, 0.3984474539756775, 0.1571103185415268, 0.25884491205215454, 0.21873411536216736, -0.15948249399662018, 0.1922130286693573, -0.32554179430007935], [0.03650697320699692, 0.0035827651154249907, -0.02670898288488388, 0.0563717857003212, 0.09212232381105423, 0.19478417932987213, -0.09652863442897797, -0.1647074967622757, -0.25664517283439636, -0.10792919993400574, -0.004013910889625549, -0.09864778071641922, -0.13571053743362427, 0.15341919660568237, 0.045312099158763885, -0.03507689759135246, -0.38495928049087524, -0.0779319778084755, 0.14036640524864197, -0.31999853253364563, 0.23493808507919312, 0.13567648828029633, 0.3976931571960449, -1.0762207508087158], [0.031825315207242966, 0.32056447863578796, -0.00330591038800776, -0.24337095022201538, -0.19571860134601593, 0.17034433782100677, -0.0736018493771553, -0.22381286323070526, -0.12370448559522629, 0.04664618894457817, -0.08248938620090485, -0.0656566172838211, -0.2691393196582794, 0.021038910374045372, -0.04925540089607239, 0.1952681839466095, -0.02368735335767269, -0.19900107383728027, -0.10153640061616898, 0.35588380694389343, -0.017483996227383614, 0.080518439412117, 0.5022415518760681, 0.46380817890167236], [0.0073991138488054276, 0.242353618144989, 0.08762158453464508, -0.2654459476470947, -0.22986608743667603, 0.003155149519443512, -0.05800915136933327, 0.06687643378973007, 0.40441587567329407, 0.015400459989905357, -0.15720973908901215, -0.20341069996356964, -0.08661023527383804, 0.034479666501283646, 0.2955147922039032, -0.03525770828127861, 0.29292306303977966, -0.2141595035791397, -0.5045062899589539, 0.13458065688610077, 0.14407029747962952, 0.23871713876724243, -0.26368868350982666, -0.8651146292686462], [-0.1467786580324173, 0.01557085756212473, 0.008186310529708862, -0.039365801960229874, 0.23852549493312836, -0.08172962069511414, 0.16687364876270294, 0.09335879981517792, 0.30410486459732056, 0.15506833791732788, -0.12607435882091522, -0.3150344491004944, 0.1288648098707199, 0.02933550253510475, -0.14536608755588531, 0.21786551177501678, -0.10622047632932663, 0.15197548270225525, -0.22238463163375854, 0.21819815039634705, -0.2660207450389862, -0.1828826367855072, -0.13996735215187073, 0.1607457548379898], [0.14760684967041016, -0.16214875876903534, -0.027464313432574272, 0.07166887819766998, -0.37428078055381775, -0.09974206984043121, -0.3107643723487854, 0.2196425199508667, -0.23623159527778625, 0.1978621780872345, -0.160405233502388, 0.1712493598461151, -0.17374281585216522, -0.022518979385495186, -0.1203741654753685, -0.019434910267591476, 0.3349567651748657, 0.2598121464252472, 0.27040961384773254, -0.2075173407793045, 0.03412733972072601, -0.3850337564945221, -0.31353992223739624, 0.5217528343200684], [-0.29826873540878296, -0.08356692641973495, -0.09622353315353394, -0.22365806996822357, -0.041395001113414764, -0.22556796669960022, -0.06049919128417969, 0.07804355770349503, -0.06559398770332336, -0.09448090940713882, 0.25951939821243286, -0.0073892828077077866, -0.18213395774364471, -0.14172634482383728, 0.001568852225318551, 0.1802385449409485, 0.14148807525634766, 0.548179030418396, 0.2504223883152008, -0.03342800214886665, 0.39862823486328125, 0.11603105813264847, -0.0927731990814209, -0.660090982913971], [0.1567526012659073, 0.05839637294411659, 0.22046127915382385, 0.21241697669029236, -0.12405847758054733, -0.08904611319303513, -0.13375616073608398, -0.15821552276611328, 0.293957382440567, -0.24522636830806732, -0.15325257182121277, 0.24057888984680176, 0.3185370862483978, 0.14832840859889984, -0.27848535776138306, 0.18622036278247833, 0.220257967710495, 0.2541673183441162, -0.30541691184043884, -0.21668508648872375, -0.24976132810115814, -0.20070718228816986, -0.23198318481445312, -0.8038045763969421], [-0.14263874292373657, 0.0439148023724556, -0.0391247384250164, -0.0919182226061821, 0.04416537657380104, 0.015160541981458664, 0.18883390724658966, 0.19941401481628418, 0.1726727932691574, -0.044608671218156815, 0.14464330673217773, -0.07175023853778839, 0.2522011697292328, -0.17136888206005096, -0.011328531429171562, 0.16101011633872986, 0.17379525303840637, 0.27398303151130676, 0.1409960687160492, -0.1784859150648117, -0.1180868148803711, -0.1470925360918045, -0.1559649407863617, 0.8728727698326111], [-0.01005057618021965, 0.26922711730003357, -0.12636268138885498, -0.10438951104879379, 0.19616977870464325, -0.05804155021905899, -0.08490633219480515, -0.176934152841568, 0.1998816579580307, -0.09392562508583069, -0.1124173030257225, 0.03995947539806366, 0.06660409271717072, 0.49319198727607727, -0.13026057183742523, -0.08791135996580124, 0.03890448808670044, 0.04045568406581879, -0.30095866322517395, -0.006955234799534082, 0.22519329190254211, -0.16227823495864868, 0.3270567059516907, -0.6611639857292175], [-0.01171935349702835, -0.0651727169752121, 0.11388731002807617, 0.13316017389297485, 0.3023010194301605, -0.2774852216243744, 0.01180766336619854, -0.16340763866901398, -0.012582666240632534, 0.4096313416957855, -0.018919583410024643, -0.04119358956813812, -0.018689658492803574, -0.12352049350738525, 0.28612813353538513, 0.35594654083251953, 0.10573702305555344, 0.01288188062608242, -0.25873127579689026, 0.17904061079025269, 0.09851814061403275, -0.027347750961780548, 0.380120187997818, -0.4807016849517822], [0.045064251869916916, -0.08448507636785507, -0.017391294240951538, 0.010487881489098072, -0.04534727707505226, 0.06979496777057648, -0.20387278497219086, 0.14487099647521973, -0.009157046675682068, 0.022977463901042938, 0.014573208056390285, 0.037321727722883224, -0.11910577863454819, 0.1445741057395935, -0.1079295426607132, 0.05702662467956543, 0.08282840996980667, -0.20240019261837006, 0.06331092864274979, 0.040328409522771835, 0.037501439452171326, 0.12503857910633087, 0.16553808748722076, 0.3146464228630066], [0.1821107566356659, -0.18076887726783752, 0.20880833268165588, 0.19035714864730835, -0.477737158536911, -0.23875291645526886, -0.09082219749689102, -0.45613956451416016, 0.35106387734413147, 0.2094734013080597, 0.36306750774383545, -0.12980550527572632, -0.20584823191165924, 0.434683620929718, -0.18165048956871033, 0.2471112310886383, 0.20746126770973206, 0.3159281313419342, 0.157414972782135, 0.23527157306671143, 0.004794032778590918, -0.2811301052570343, -0.3029107451438904, -0.6135642528533936], [-0.110625259578228, -0.37081673741340637, 0.07419565320014954, 0.1873389035463333, 0.39747121930122375, 0.022648463025689125, 0.2606861889362335, 0.04435442015528679, 0.16211141645908356, -0.12630291283130646, -0.23008181154727936, 0.06983206421136856, 0.17283053696155548, -0.07933241873979568, 0.02384747751057148, 0.22046269476413727, -0.21945424377918243, 0.29913854598999023, 0.08055172115564346, -0.15955746173858643, -0.057187993079423904, -0.3987891972064972, -0.1861245334148407, 0.3245129883289337], [0.1448793262243271, 0.15368618071079254, 0.06311008334159851, -0.2150755226612091, 0.16012142598628998, -0.08678948134183884, -0.17015531659126282, 0.18229107558727264, -0.136117622256279, -0.16064806282520294, -0.05363580584526062, 0.03435004502534866, -0.1100991740822792, 0.2702368497848511, 0.07684455811977386, -0.1508927196264267, 0.09952011704444885, -0.2063043713569641, 0.0008991790818981826, -0.3724186420440674, 0.1697613149881363, 0.08665982633829117, -0.035624273121356964, -0.850777804851532], [-0.029558613896369934, 0.02002941071987152, 0.06580789387226105, -0.08167221397161484, 0.15119193494319916, -0.2526586651802063, 0.022946717217564583, -0.16117160022258759, 0.05669400468468666, 0.10002464801073074, -0.04924335330724716, 0.03648795187473297, -0.2647472321987152, -0.0007131894817575812, 0.1449735015630722, 0.24562127888202667, 0.016452424228191376, -0.2818170487880707, 0.15387141704559326, 0.1972593516111374, -0.008703954517841339, 0.07170352339744568, 0.2417275607585907, 0.26788485050201416], [0.1882602721452713, -0.13728518784046173, -0.20381906628608704, -0.02845936454832554, 0.15407469868659973, -0.0507814884185791, -0.010227304883301258, -0.17132501304149628, 0.5138909220695496, 0.122822105884552, -0.22726395726203918, -0.1819518506526947, -0.04996853321790695, -0.0312521867454052, 2.1357553123380058e-05, -0.13358043134212494, 0.5081365704536438, 0.37688201665878296, 0.04841476306319237, -0.10824168473482132, -0.2573833763599396, -0.0841446965932846, 0.517998456954956, -0.8579100966453552], [-0.09994696080684662, 0.10920681804418564, 0.1673927754163742, -0.17869506776332855, -0.11697042733430862, -0.23326009511947632, 0.14544573426246643, 0.009394614025950432, 0.09630607813596725, 0.09548543393611908, 0.2178887575864792, -0.003212788375094533, -0.14601647853851318, -0.010899313725531101, 0.06703150272369385, 0.19152793288230896, 0.0907604843378067, 0.12158427387475967, 0.1611739844083786, 0.093265600502491, -0.2820315957069397, -0.03154441714286804, -0.20476104319095612, 0.6066246628761292], [-0.1902022510766983, -0.04967522248625755, 0.04154695197939873, 0.08472418785095215, -0.15416201949119568, -0.23362301290035248, -0.014733519405126572, 0.20027422904968262, 0.1697813719511032, 0.18624308705329895, -0.22395196557044983, 0.17336392402648926, -0.1020403727889061, 0.388742595911026, 0.26415160298347473, 0.05362182855606079, 0.33863523602485657, 0.03727897256612778, 0.12956689298152924, 0.10536553710699081, -0.44725891947746277, -0.24674083292484283, -0.20000697672367096, 0.18549270927906036], [0.03084801696240902, -0.2454100102186203, -0.24865202605724335, 0.30934298038482666, 0.20397330820560455, 0.054350633174180984, 0.04778328910470009, 0.18736429512500763, -0.2640131115913391, -0.07049327343702316, -0.15108227729797363, 0.050235796719789505, -0.013048932887613773, -0.00020825915271416306, -0.14517445862293243, 0.07233820855617523, -0.10104251652956009, -0.002173009794205427, 0.26185962557792664, -0.04423390328884125, 0.12325345724821091, 0.16038964688777924, 0.1864771991968155, 0.7260159850120544], [0.09342093765735626, -0.07921546697616577, -0.02658970281481743, -0.07326308637857437, -0.21998129785060883, -0.12770208716392517, 0.28759533166885376, -0.024061311036348343, -0.042340490967035294, 0.14984335005283356, 0.04457030072808266, 0.19932463765144348, 0.08762016147375107, -0.1405901312828064, -0.1971103399991989, 0.08414048701524734, 0.01149195060133934, -0.09147016704082489, -0.10869776457548141, 0.1859452724456787, 0.022673970088362694, 0.25953713059425354, -0.19433096051216125, -1.002982497215271], [0.04485107958316803, -0.061639539897441864, -0.04653512313961983, 0.27461737394332886, 0.2708500921726227, -0.09110871702432632, -0.3771170675754547, -0.1191030964255333, -0.15544533729553223, 0.050164271146059036, -0.09264376759529114, 0.08718933910131454, -0.038831233978271484, 0.3203924298286438, -0.002989567583426833, -0.24063943326473236, -0.0012304289266467094, -0.21094800531864166, -0.10220761597156525, -0.16811005771160126, 0.13674479722976685, 0.19424723088741302, 0.009451397694647312, 0.10685817152261734]], "biases": [0.6693874001502991, -0.3041311204433441, -0.5554876923561096, 0.023934703320264816, 0.1732584685087204, 0.04303461313247681, 0.3514668047428131, 0.9823814034461975, -0.6044498085975647, 0.31257128715515137, 0.12706419825553894, 0.15111009776592255, 0.7801192998886108, 0.0027065370231866837, 1.0138062238693237, -0.14474469423294067, 0.27010399103164673, 0.1448352336883545, 1.035247564315796, 0.1136823296546936, 0.5859285593032837, -0.17915870249271393, -0.10397585481405258, -0.38983389735221863]}, "1": {"config": {"units": 12, "activation": "linear"}, "weights": [[0.21559622883796692, 0.12543921172618866, -0.04206157848238945, -0.3203987777233124, 0.14865046739578247, -0.06945258378982544, -0.05392833054065704, 0.0685369074344635, -0.032399147748947144, -0.15275676548480988, 0.30921828746795654, 0.013791083358228207, -0.11933241784572601, 0.0872255191206932, -0.030446026474237442, -0.060431744903326035, -0.16832342743873596, 0.1306212842464447, -0.17875944077968597, 0.06496106833219528, 0.01753242500126362, 0.20817765593528748, -0.21714411675930023, 0.032674308866262436], [0.19569233059883118, 0.1320510357618332, -0.036312103271484375, -0.38085705041885376, 0.15314854681491852, -0.13685263693332672, -0.003538538469001651, 0.08464955538511276, -0.03881443291902542, -0.1863090842962265, 0.09288931638002396, -0.08136693388223648, -0.05097173526883125, 0.24744147062301636, -0.024638928472995758, 0.013775952160358429, 0.005162359680980444, -0.09732157737016678, -0.2778177261352539, 0.2548872232437134, 0.029926124960184097, 0.29328808188438416, -0.2101699709892273, 0.02580372616648674], [0.1611049920320511, 0.20021893084049225, -0.03062581643462181, -0.22924953699111938, 0.053540125489234924, -0.03419894352555275, -0.0036426421720534563, 0.09986236691474915, -0.07533838599920273, -0.13050590455532074, 0.10686670243740082, -0.12251109629869461, -0.1046304851770401, 0.022119246423244476, -0.019346464425325394, 0.0317009799182415, -0.22681096196174622, 0.1825190782546997, -0.3302912712097168, 0.15299563109874725, 0.04384630173444748, 0.2949146330356598, -0.2852547764778137, 0.07227300852537155], [0.1006614938378334, 0.29999083280563354, -0.01490558497607708, -0.21890807151794434, 0.0743003636598587, -0.13605159521102905, -0.034277111291885376, 0.14440923929214478, -0.13756044209003448, -0.18717309832572937, 0.024354884400963783, -0.05525239557027817, -0.10017598420381546, -0.015419107861816883, -0.046301692724227905, 0.10355915129184723, -0.20259873569011688, 0.20619402825832367, -0.3569409251213074, 0.14904020726680756, 0.06883110105991364, 0.2341947704553604, -0.18554608523845673, 0.11078159511089325], [0.00581683125346899, 0.2597522735595703, -0.04446110874414444, -0.23733314871788025, 0.12084778398275375, -0.28720834851264954, 0.03868710249662399, 0.18791019916534424, -0.1665428876876831, -0.18480579555034637, 0.016764959320425987, -0.1481093317270279, -0.04505635052919388, -0.18074306845664978, -0.06513623893260956, 0.06138738989830017, -0.02678726799786091, 0.05416690185666084, -0.4374687969684601, 0.1515132188796997, 0.09675233066082001, 0.39029112458229065, -0.1593300700187683, 0.01502931583672762], [-0.06560929119586945, 0.12571777403354645, 0.004073606338351965, -0.18157260119915009, 0.19063888490200043, -0.2665054202079773, 0.04193368926644325, 0.2720981240272522, -0.229142427444458, -0.24458704888820648, 0.13889087736606598, 0.12521156668663025, 0.024480387568473816, 0.04483744129538536, -0.10505715012550354, 0.12747515738010406, -0.07461294531822205, -0.1458943635225296, -0.4849109947681427, 0.06122277304530144, 0.10301319509744644, 0.3487512171268463, -0.16127005219459534, -0.14085310697555542], [-0.13691258430480957, 0.1206638514995575, 0.030961116775870323, -0.20589913427829742, 0.22650519013404846, -0.2363760620355606, -0.031603675335645676, 0.29350435733795166, -0.2739904522895813, -0.20384666323661804, 0.40498390793800354, 0.043795280158519745, -0.04047052189707756, -0.004410809371620417, -0.16474327445030212, 0.16335436701774597, -0.10660100728273392, 0.15645596385002136, -0.5321311950683594, -0.1673964411020279, 0.092473603785038, 0.05134548619389534, -0.11300836503505707, -0.16416962444782257], [-0.17911332845687866, 0.14284566044807434, -0.13120393455028534, -0.12945546209812164, 0.166321262717247, -0.2676057517528534, 0.12111186236143112, 0.3861122727394104, -0.3048948347568512, -0.22029151022434235, 0.08621104061603546, -0.027709947898983955, 0.1021265834569931, -0.1516779512166977, -0.20303195714950562, 0.02011515200138092, -0.1151694804430008, -0.07100970298051834, -0.5662058591842651, 0.22529855370521545, 0.06489840894937515, 0.3114583194255829, -0.12574569880962372, -0.1876821368932724], [-0.2243395745754242, 0.13545943796634674, -0.15268607437610626, -0.0489845797419548, 0.16719262301921844, -0.22287696599960327, 0.07433823496103287, 0.3817735016345978, -0.2935597896575928, -0.15849429368972778, 0.24738243222236633, 0.05351780727505684, 0.09987672418355942, 0.16928516328334808, -0.2741202712059021, 0.054458338767290115, -0.317467600107193, 0.14349792897701263, -0.5896105170249939, -0.03473791852593422, 0.10349487513303757, -0.010852012783288956, -0.10838042199611664, -0.06577599048614502], [-0.2704397439956665, 0.13128815591335297, -0.19993217289447784, -0.11462623625993729, 0.25387874245643616, -0.25068265199661255, -0.03429847210645676, 0.31984442472457886, -0.2846875786781311, -0.1037178635597229, 0.06724659353494644, -0.22244194149971008, 0.1849733293056488, 0.265054315328598, -0.3682035505771637, 0.19033026695251465, -0.2604103684425354, -0.01052036602050066, -0.5749200582504272, 0.15619881451129913, 0.13447324931621552, -0.035652678459882736, 0.009149766527116299, -0.01996603235602379], [-0.30752018094062805, 0.0006657937774434686, -0.24764800071716309, -0.3126307725906372, 0.21391558647155762, -0.33819207549095154, 0.03684127703309059, 0.3338663578033447, -0.274617463350296, -0.14402341842651367, 0.32578274607658386, -0.3403341472148895, 0.18675746023654938, -0.09749598056077957, -0.38667672872543335, 0.02672375552356243, 0.04287513345479965, 0.24677598476409912, -0.5113103985786438, -0.0473603755235672, 0.10053213685750961, 0.03891029208898544, 0.04258150979876518, 0.11936206370592117], [-0.293336421251297, 0.11675280332565308, -0.28806066513061523, -0.14481304585933685, 0.16494350135326385, -0.24914588034152985, -0.04111792892217636, 0.37110188603401184, -0.2765418291091919, -0.042543355375528336, -0.0344771184027195, -0.24692881107330322, 0.23819704353809357, -0.006331528536975384, -0.43731361627578735, 0.11173103004693985, -0.29206907749176025, 0.06542574614286423, -0.5107741951942444, 0.32253116369247437, 0.10066983848810196, 0.09783695638179779, 0.03820251300930977, 0.04744694381952286]], "biases": [0.06533258408308029, 0.07959701120853424, 0.12140953540802002, 0.13427883386611938, 0.16434144973754883, 0.07588811963796616, 0.233074352145195, 0.18201421201229095, 0.17301800847053528, 0.2680155634880066, 0.18322987854480743, 0.1777544468641281]}}
# 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.5 and abs(TRAINING_VAR - var) < 50:
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()