layers={"0": {"config": {"units": 24, "activation": "relu"}, "weights": [[0.10158246755599976, 0.02898048423230648, 0.18399330973625183, 0.259355753660202, 0.19193029403686523, -0.20967991650104523, -0.22374048829078674, -0.14954595267772675, -0.08043017983436584, 0.11382734775543213, -0.058760866522789, -0.14634102582931519, 0.12794072926044464, 0.021969882771372795, 0.17308840155601501, -0.09963792562484741, -0.31686073541641235, -0.15783970057964325, -0.4769866168498993, -0.22037163376808167, -0.16573339700698853, -0.18870870769023895, 0.348440557718277, 0.8656046986579895], [-0.05151074752211571, -0.0810050293803215, 0.04178304597735405, -0.0956050455570221, 0.2368766814470291, 0.2358931005001068, 0.04995081201195717, 0.006139111239463091, 0.30456337332725525, 0.2139264941215515, -0.1352997124195099, 0.030598139390349388, -0.10717444866895676, -0.16984440386295319, 0.0778842642903328, -0.2041550874710083, 0.17990969121456146, 0.36057808995246887, 0.03627439960837364, 0.0391446091234684, 0.16330796480178833, -0.20634998381137848, 0.08244146406650543, 0.7456029653549194], [0.125668466091156, 0.05422452464699745, -0.25050556659698486, -0.12388338148593903, 0.12731751799583435, 0.3830649256706238, 0.37628886103630066, 0.22592474520206451, -0.39509981870651245, 0.1448086053133011, -0.07978784292936325, -0.1511426419019699, -0.4713229835033417, -0.16999362409114838, -0.32477566599845886, -0.29949524998664856, 0.06682641059160233, 0.4687023162841797, 0.2102312445640564, 0.26625317335128784, 0.1966359168291092, -0.209483802318573, 0.17258375883102417, -0.30188268423080444], [0.077302485704422, 0.015678685158491135, -0.04784829542040825, 0.03401188179850578, 0.11106788367033005, 0.15254434943199158, -0.11348564922809601, -0.1777798980474472, -0.2705736458301544, -0.10728330910205841, -0.037806421518325806, -0.15374363958835602, -0.13160590827465057, 0.1591755598783493, 0.034981824457645416, -0.04381918907165527, -0.3802178204059601, -0.08546827733516693, 0.11397486925125122, -0.28521719574928284, 0.24947425723075867, 0.12496252357959747, 0.4489147961139679, -1.174941897392273], [0.04987180978059769, 0.34304967522621155, 0.016126299276947975, -0.21434393525123596, -0.18049350380897522, 0.12959222495555878, -0.0938466340303421, -0.2551921308040619, -0.14483797550201416, 0.0064088343642652035, -0.09377823024988174, -0.08393722772598267, -0.2915519177913666, 0.027768544852733612, -0.06491603702306747, 0.20748788118362427, -0.03501848876476288, -0.21776561439037323, -0.09328039735555649, 0.4030788540840149, 0.024457966908812523, 0.13864797353744507, 0.5476348996162415, 0.49948859214782715], [4.657962927012704e-05, 0.25989583134651184, 0.11332911998033524, -0.30142122507095337, -0.26554229855537415, -0.010961487889289856, -0.0256957970559597, 0.07989364862442017, 0.4526570439338684, -0.03559701517224312, -0.1636170744895935, -0.21827226877212524, -0.07834871113300323, 0.049293335527181625, 0.27896034717559814, -0.012257033959031105, 0.3280992805957794, -0.231059730052948, -0.568088173866272, 0.1412292718887329, 0.17534960806369781, 0.20916049182415009, -0.22855955362319946, -0.934690535068512], [-0.28493890166282654, -0.15453827381134033, -0.12829984724521637, -0.09995757788419724, 0.25825396180152893, -0.06010204553604126, 0.23225319385528564, 0.1391991525888443, 0.3426799178123474, 0.28017866611480713, -0.0013433067360892892, -0.25330471992492676, 0.22717882692813873, 0.05296224728226662, -0.14710845053195953, 0.15466013550758362, -0.1524696946144104, 0.11933533102273941, -0.19345755875110626, 0.1662251055240631, -0.4093955457210541, -0.307110071182251, -0.31867438554763794, -0.01249550748616457], [0.1925065517425537, -0.15805158019065857, -0.03473982214927673, 0.07137615233659744, -0.40399667620658875, -0.15659894049167633, -0.356789767742157, 0.20489153265953064, -0.22086091339588165, 0.24242770671844482, -0.13124707341194153, 0.19024421274662018, -0.20591023564338684, -0.04433656483888626, -0.11502406746149063, -0.02000689134001732, 0.37521955370903015, 0.29759159684181213, 0.290099561214447, -0.2394276261329651, 0.01961515285074711, -0.37448209524154663, -0.3273542821407318, 0.5519697666168213], [-0.32886260747909546, -0.07408703118562698, -0.13177716732025146, -0.18924522399902344, -0.06938310712575912, -0.26561498641967773, -0.0880270004272461, 0.06621574610471725, -0.06034601107239723, 0.0037550677079707384, 0.2978295683860779, -0.042500901967287064, -0.19059903919696808, -0.16487155854701996, -0.07201618701219559, 0.17419779300689697, 0.1487913578748703, 0.6421210765838623, 0.324462890625, -0.006200415547937155, 0.3784002959728241, 0.12763050198554993, -0.05709616839885712, -0.7667623162269592], [0.1572650671005249, 0.05385037139058113, 0.2044452279806137, 0.22607390582561493, -0.08391741663217545, -0.07901649177074432, -0.1429411917924881, -0.21098914742469788, 0.2993186414241791, -0.2742920219898224, -0.15358993411064148, 0.24761642515659332, 0.3208921551704407, 0.158628448843956, -0.26986294984817505, 0.22809456288814545, 0.23200708627700806, 0.24270322918891907, -0.3568015694618225, -0.21991471946239471, -0.29149553179740906, -0.23892714083194733, -0.19734154641628265, -0.85101318359375], [-0.14694495499134064, 0.029744939878582954, -0.04003794118762016, -0.10024676471948624, 0.046427495777606964, 0.0007496789330616593, 0.2335990071296692, 0.22707048058509827, 0.19658102095127106, -0.033228419721126556, 0.14155225455760956, -0.07534712553024292, 0.24288590252399445, -0.15274891257286072, -0.015712354332208633, 0.16674083471298218, 0.19155628979206085, 0.2811802327632904, 0.12987267971038818, -0.17296117544174194, -0.12377020716667175, -0.13628950715065002, -0.1330113261938095, 0.8936537504196167], [-0.1174030601978302, 0.2980806231498718, -0.07350042462348938, -0.07554348558187485, 0.19213205575942993, -0.023481763899326324, -0.06530247628688812, -0.23621760308742523, 0.1828625649213791, -0.11776664108037949, -0.14384706318378448, 0.07743532955646515, 0.18627847731113434, 0.627744197845459, -0.03550255671143532, -0.03571334108710289, 0.010658270679414272, -0.04314824566245079, -0.47564396262168884, -0.10470766574144363, 0.1957961469888687, -0.1139531210064888, 0.4547257721424103, -0.5994465351104736], [-0.02385726384818554, -0.07970141619443893, 0.09391355514526367, 0.12452428042888641, 0.3485076427459717, -0.29325470328330994, 0.043066516518592834, -0.14169353246688843, 0.026836037635803223, 0.4104152321815491, -0.04734911024570465, -0.07238107919692993, -0.040246132761240005, -0.17901776731014252, 0.22202305495738983, 0.3171423673629761, 0.08281207829713821, 0.003610338782891631, -0.2665864825248718, 0.13466142117977142, 0.10175102204084396, -0.0025421578902751207, 0.3899691104888916, -0.5854594707489014], [0.027393147349357605, -0.10080116987228394, -0.03807464987039566, 0.002557579195126891, -0.09483087807893753, 0.034142494201660156, -0.2004566490650177, 0.130051851272583, 0.009974981658160686, -0.005924704950302839, 0.059963054955005646, 0.11471547186374664, -0.07581533491611481, 0.1905723363161087, -0.09096280485391617, 0.019393261522054672, 0.06113910302519798, -0.26510757207870483, 0.009698579087853432, -0.012938976287841797, -0.04218313843011856, 0.03888867795467377, 0.09430918842554092, 0.2845877408981323], [0.18100422620773315, -0.15262778103351593, 0.1692960113286972, 0.20295019447803497, -0.5345703363418579, -0.2106361985206604, -0.06462965905666351, -0.49048349261283875, 0.3948999047279358, 0.2648394703865051, 0.36889201402664185, -0.17111052572727203, -0.22370010614395142, 0.3904099762439728, -0.24768812954425812, 0.26628392934799194, 0.2837764620780945, 0.36939576268196106, 0.19321756064891815, 0.2599948048591614, -0.0030006691813468933, -0.31209444999694824, -0.2689436078071594, -0.6592168807983398], [-0.13559772074222565, -0.4055655896663666, 0.06337675452232361, 0.18355996906757355, 0.47720304131507874, 0.07956798374652863, 0.33103859424591064, 0.05714397877454758, 0.14521664381027222, -0.13691650331020355, -0.2181803435087204, 0.035418976098299026, 0.1595269739627838, -0.06526032835245132, 0.03289314731955528, 0.23658958077430725, -0.21046042442321777, 0.33198806643486023, 0.11018946021795273, -0.17043077945709229, -0.1205180287361145, -0.40048545598983765, -0.17260313034057617, 0.28423425555229187], [0.14239156246185303, 0.17230823636054993, 0.07914958149194717, -0.23830436170101166, 0.13015030324459076, -0.1083238422870636, -0.15570564568042755, 0.17925061285495758, -0.09863213449716568, -0.16374187171459198, -0.0794067531824112, -0.005774750839918852, -0.11570046097040176, 0.28243356943130493, 0.09238309413194656, -0.14926709234714508, 0.09576234221458435, -0.21617631614208221, -0.01925497129559517, -0.357954204082489, 0.17601469159126282, 0.093360535800457, 0.050084277987480164, -0.8511457443237305], [-0.05396975204348564, 0.0017893512267619371, 0.05214608088135719, -0.06786290556192398, 0.137930229306221, -0.27425292134284973, 0.004806929733604193, -0.1803990751504898, 0.05707673355937004, 0.08757100254297256, 0.004667158238589764, 0.06901562958955765, -0.262468159198761, 0.02375834807753563, 0.1046450063586235, 0.22053177654743195, -0.026675593107938766, -0.29693472385406494, 0.10173968225717545, 0.1618327647447586, -0.031070562079548836, 0.020862143486738205, 0.14695094525814056, 0.20213910937309265], [0.1922105848789215, -0.13069464266300201, -0.24287398159503937, 0.01479590404778719, 0.11936764419078827, -0.04249721020460129, 0.02416263520717621, -0.1600344181060791, 0.5643894076347351, 0.10691845417022705, -0.2252768576145172, -0.17809316515922546, -0.06013591215014458, -0.05683693289756775, 0.0003261592937633395, -0.10493528097867966, 0.5540278553962708, 0.4229617118835449, 0.0434596948325634, -0.145911306142807, -0.2963484525680542, -0.09718538820743561, 0.5793755054473877, -0.8882712721824646], [-0.09433384984731674, 0.1208648830652237, 0.13997577130794525, -0.19080786406993866, -0.11555634438991547, -0.24459460377693176, 0.14297166466712952, 0.03658292070031166, 0.1430707573890686, 0.07366085797548294, 0.2156272530555725, -0.0024467683397233486, -0.1362304836511612, -0.0049531240947544575, 0.048795390874147415, 0.1919602006673813, 0.06211177632212639, 0.091206394135952, 0.16223090887069702, 0.10926726460456848, -0.28946298360824585, -0.05260371044278145, -0.22246600687503815, 0.6199570298194885], [-0.1975502222776413, -0.07123426347970963, 0.05434664711356163, 0.10406859219074249, -0.07496912032365799, -0.2576714754104614, -0.05015349015593529, 0.1264319270849228, 0.15648019313812256, 0.1441086232662201, -0.16121560335159302, 0.22023385763168335, -0.08192598819732666, 0.4165647327899933, 0.2783850133419037, 0.10523875057697296, 0.35331055521965027, 0.05506128817796707, 0.14099399745464325, 0.07400908321142197, -0.4943241477012634, -0.2567797899246216, -0.23207180202007294, 0.19133763015270233], [0.0031425526831299067, -0.25778305530548096, -0.2537090480327606, 0.293891578912735, 0.19984735548496246, 0.05538491904735565, 0.03691734001040459, 0.19152013957500458, -0.26173776388168335, -0.07524290680885315, -0.13332116603851318, 0.0376315712928772, -0.04434937238693237, -0.0066020614467561245, -0.15411561727523804, 0.09619176387786865, -0.10956932604312897, -0.006027639843523502, 0.26028552651405334, -0.013709541410207748, 0.10069742798805237, 0.1385984718799591, 0.18561692535877228, 0.777795672416687], [0.11769741028547287, -0.04192023351788521, -0.01973576471209526, -0.08400117605924606, -0.24438796937465668, -0.18163588643074036, 0.2473578006029129, -0.024449774995446205, -0.012242339551448822, 0.1922333985567093, 0.0858636125922203, 0.1823965460062027, 0.08473518490791321, -0.1506386399269104, -0.2417047917842865, 0.05693439766764641, 0.020504191517829895, -0.06620477139949799, -0.09511061757802963, 0.24380770325660706, -0.0015851425705477595, 0.252811461687088, -0.12153224647045135, -1.1297123432159424], [-0.06331443786621094, -0.10532426834106445, 0.028762342408299446, 0.3043169379234314, 0.2863236665725708, -0.05758882686495781, -0.5010699033737183, -0.1588147133588791, -0.10270277410745621, -0.04478905722498894, -0.04982372745871544, 0.17690055072307587, 0.03784188628196716, 0.5009621381759644, 0.06651628017425537, -0.29973310232162476, -0.08163643628358841, -0.2291913479566574, -0.09389972686767578, -0.19988788664340973, 0.09790588170289993, 0.1603277325630188, 0.02239464409649372, 0.21528220176696777]], "biases": [0.8966642022132874, -0.32330113649368286, -0.693055272102356, 0.007807218004018068, 0.18466414511203766, 0.03695915639400482, -0.24348793923854828, 1.139538288116455, -0.6139378547668457, 0.2392643690109253, 0.15729951858520508, 0.2941209673881531, 1.0769401788711548, -0.15075835585594177, 1.0725897550582886, -0.0817725881934166, 0.236812025308609, 0.05106009542942047, 1.142067313194275, 0.11088040471076965, 1.3388359546661377, -0.23281122744083405, 0.02506333217024803, -0.4779697358608246]}, "1": {"config": {"units": 12, "activation": "linear"}, "weights": [[0.19783011078834534, 0.10145580768585205, -0.019300542771816254, -0.3528023958206177, 0.16758637130260468, -0.018707118928432465, -0.12879128754138947, 0.05505449324846268, -0.028640981763601303, -0.1380186229944229, 0.29763439297676086, -0.04446008428931236, -0.10632393509149551, 0.04915632680058479, -0.05083536356687546, -0.06610707938671112, -0.12287633121013641, 0.05861399322748184, -0.138594850897789, 0.06284492462873459, 0.021980129182338715, 0.24223293364048004, -0.17694497108459473, 0.04549165070056915], [0.18852685391902924, 0.15531422197818756, -0.026743950322270393, -0.36206015944480896, 0.16316811740398407, -0.06955081224441528, -0.06802849471569061, 0.08442379534244537, -0.04245217889547348, -0.16234152019023895, 0.12206287682056427, -0.06864605844020844, -0.050523944199085236, 0.09220374375581741, -0.05671757459640503, -0.020328639075160027, -0.046682216227054596, -0.07606062293052673, -0.24054577946662903, 0.20432348549365997, 0.03599724546074867, 0.29784390330314636, -0.19291536509990692, 0.03375321626663208], [0.16321496665477753, 0.21260742843151093, -0.013364603742957115, -0.266802579164505, 0.09876661002635956, -0.02627922035753727, -0.03639424219727516, 0.07813198119401932, -0.0848664939403534, -0.13636256754398346, 0.112555131316185, -0.13729967176914215, -0.08832284808158875, 0.005088572856038809, -0.03680417686700821, 0.010517394170165062, -0.17249524593353271, 0.09332136809825897, -0.2955322563648224, 0.12476246803998947, 0.04347255080938339, 0.28010040521621704, -0.25927966833114624, 0.0876743495464325], [0.1053839847445488, 0.28748729825019836, -0.0029500145465135574, -0.21702666580677032, 0.09661887586116791, -0.12074131518602371, 0.02015523985028267, 0.11256688088178635, -0.14232806861400604, -0.1667017787694931, 0.012731698341667652, -0.15782488882541656, -0.09312842041254044, -0.024131782352924347, -0.03133668377995491, 0.06993001699447632, -0.16074319183826447, 0.11433442682027817, -0.3354411721229553, 0.12743628025054932, 0.07511893659830093, 0.26217323541641235, -0.2154606133699417, 0.08256160467863083], [0.02674064040184021, 0.2474638968706131, -0.03646246716380119, -0.2038932889699936, 0.11319384723901749, -0.29195573925971985, 0.07953587919473648, 0.1617625653743744, -0.17905020713806152, -0.18946203589439392, 0.016468143090605736, -0.12158935517072678, -0.054345421493053436, -0.06932976096868515, -0.05505891516804695, 0.07674311846494675, -0.05357877537608147, -0.016087008640170097, -0.38789260387420654, 0.09868910908699036, 0.09116939455270767, 0.33322781324386597, -0.16769462823867798, -0.030797718092799187], [-0.04644417390227318, 0.14924059808254242, -0.024774152785539627, -0.21100419759750366, 0.15746527910232544, -0.2878322899341583, 0.08512488007545471, 0.2386222630739212, -0.23112709820270538, -0.21440830826759338, 0.13296489417552948, -0.03765648603439331, 0.001178970094770193, 0.01682172901928425, -0.08230225741863251, 0.12020991742610931, -0.02073150873184204, -0.1339094489812851, -0.44634488224983215, 0.03520064800977707, 0.08989029377698898, 0.30624040961265564, -0.14821244776248932, -0.17564822733402252], [-0.12047623097896576, 0.12598438560962677, -0.021448582410812378, -0.20328515768051147, 0.21214979887008667, -0.25423702597618103, 0.11112727969884872, 0.2641475200653076, -0.2833070158958435, -0.20980936288833618, 0.38493606448173523, -0.05376392602920532, -0.06050250679254532, -0.008969414979219437, -0.14420829713344574, 0.1099403128027916, -0.07141557335853577, 0.10981780290603638, -0.5049321055412292, -0.204447403550148, 0.08266355097293854, 0.08218034356832504, -0.1343565732240677, -0.25840917229652405], [-0.1365094929933548, 0.12224053591489792, -0.14588171243667603, -0.1430470496416092, 0.1320897936820984, -0.30143091082572937, 0.1448480486869812, 0.3622437119483948, -0.31529754400253296, -0.20993906259536743, 0.11740659177303314, -0.08451037853956223, 0.09988519549369812, -0.0346810445189476, -0.19071851670742035, 0.08720555901527405, -0.0975479781627655, -0.09565846621990204, -0.5195947885513306, 0.17874225974082947, 0.06299219280481339, 0.23888196051120758, -0.153618723154068, -0.27952730655670166], [-0.19022366404533386, 0.15580306947231293, -0.17496810853481293, -0.0732397511601448, 0.20546995103359222, -0.2485629767179489, 0.1631803661584854, 0.31954026222229004, -0.325200617313385, -0.14912140369415283, 0.25333172082901, -0.17088662087917328, 0.10961265116930008, 0.06932338327169418, -0.2701992988586426, 0.07756224274635315, -0.25262585282325745, 0.10107965767383575, -0.5384760499000549, -0.046638958156108856, 0.11337950080633163, 0.008137056604027748, -0.11851496249437332, -0.1766081303358078], [-0.26041385531425476, 0.17756287753582, -0.22599680721759796, -0.10293475538492203, 0.2598331570625305, -0.29401180148124695, 0.14863155782222748, 0.29423344135284424, -0.32270655035972595, -0.10949178785085678, 0.09075822681188583, -0.2762306034564972, 0.186829075217247, 0.1518707573413849, -0.3393251299858093, 0.12258942425251007, -0.19793103635311127, -0.04315909743309021, -0.5775465369224548, 0.12512731552124023, 0.14132855832576752, -0.001182598527520895, -0.06698251515626907, -0.07351033389568329], [-0.2592586278915405, 0.04047393798828125, -0.25226765871047974, -0.24579793214797974, 0.23113201558589935, -0.38470983505249023, 0.15000367164611816, 0.2972346544265747, -0.3050762116909027, -0.14816664159297943, 0.32463759183883667, -0.37090009450912476, 0.19341686367988586, -0.07451631873846054, -0.37170299887657166, 0.05950147286057472, 0.04812299460172653, 0.15764056146144867, -0.4854603409767151, -0.04930100962519646, 0.13965556025505066, -0.00011593029194045812, 0.016400448977947235, 0.016980132088065147], [-0.28640905022621155, 0.14414717257022858, -0.30332067608833313, -0.11938135325908661, 0.19974631071090698, -0.2914143204689026, 0.14274916052818298, 0.3482370376586914, -0.31877484917640686, -0.057346317917108536, 0.008461590856313705, -0.3716873526573181, 0.2525428235530853, 0.007810561917722225, -0.3968866765499115, 0.1034017950296402, -0.2378971129655838, -0.013789568096399307, -0.5270647406578064, 0.2768254578113556, 0.12586893141269684, 0.07956596463918686, -0.04033513739705086, 0.015186364762485027]], "biases": [0.026380842551589012, 0.04842095077037811, 0.11628054082393646, 0.13093259930610657, 0.13757164776325226, 0.05468164011836052, 0.1958463042974472, 0.13597829639911652, 0.16145382821559906, 0.2557888925075531, 0.13032940030097961, 0.14008896052837372]}}
# 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()