layers={"0": {"config": {"units": 24, "activation": "relu"}, "weights": [[0.06666354835033417, -0.17384961247444153, -0.2535891532897949, 0.020494502037763596, -0.13579873740673065, -0.06735645234584808, 0.3456800878047943, -0.16631847620010376, 0.20494072139263153, -0.09298910200595856, 0.0053886231034994125, 0.03495540842413902, -0.23663799464702606, -0.15558387339115143, 0.056254010647535324, -0.06192776933312416, 0.3578070104122162, -0.03433437645435333, -0.28982487320899963, -0.30271559953689575, 0.21223321557044983, 0.36490219831466675, -0.18291829526424408, -0.5511901378631592], [-0.09328636527061462, 0.1982581466436386, -0.04431362450122833, -0.16545334458351135, 0.16076458990573883, -0.2374868094921112, 0.42141515016555786, 0.3124311864376068, 0.1645045131444931, -0.22079887986183167, -0.2195037603378296, 0.15784591436386108, -0.36244267225265503, -0.07407121360301971, -0.23284396529197693, -0.2929263114929199, -0.12158255279064178, 0.28882476687431335, 0.24503077566623688, 0.26193833351135254, 0.18520528078079224, -0.1668854057788849, 0.17171864211559296, -0.32399675250053406], [-0.1523720920085907, 0.17827080190181732, -0.006252205464988947, -0.024221545085310936, 0.20845341682434082, -0.13897119462490082, 0.19039450585842133, 0.26429635286331177, 0.11315294355154037, 0.0033499791752547026, -0.24093955755233765, 0.2368166148662567, -0.15183399617671967, -0.035555399954319, 0.043441422283649445, 0.08829136937856674, -0.08898133784532547, 0.18916329741477966, 0.40953534841537476, 0.11562677472829819, -0.03598805516958237, -0.18039864301681519, -0.02847711183130741, 0.36057260632514954], [0.25379160046577454, 0.022162847220897675, 0.2457798570394516, -0.056682288646698, 0.03630983456969261, -0.08530066907405853, 0.29448896646499634, -0.25125858187675476, 0.11968865990638733, 0.25334030389785767, -0.19742071628570557, -0.005985058378428221, 0.2001771181821823, 0.2998543381690979, 0.25687435269355774, -0.17554070055484772, -0.11281917244195938, -0.13133423030376434, 0.3182053864002228, 0.180169478058815, 0.02062143199145794, -0.052542831748723984, -0.09057533740997314, -0.45913031697273254], [-0.10194168984889984, 0.3161051869392395, 0.10963571071624756, 0.03040417842566967, 0.284589558839798, -0.0566914901137352, -0.10830196738243103, 0.06581401824951172, 0.22680528461933136, 0.20527958869934082, -0.20604807138442993, -0.22182974219322205, -0.1790986955165863, -0.07215619832277298, -0.2090660035610199, -0.27614733576774597, -0.38482382893562317, -0.16015149652957916, 0.08484245091676712, 0.27961525321006775, -0.07599958032369614, -0.026608934625983238, 0.19203343987464905, 0.33412808179855347], [-0.1575440764427185, 0.030115174129605293, 0.22994983196258545, -0.10728179663419724, -0.007518284022808075, -0.16906511783599854, -0.07359647750854492, 0.1196015477180481, -0.13706566393375397, -0.05552168935537338, 0.14552946388721466, -0.02653728798031807, 0.18837624788284302, -0.3215782940387726, -0.12797664105892181, 0.1805545687675476, 0.01331267412751913, -0.024418987333774567, 0.16228267550468445, 0.16816407442092896, 0.1964523047208786, -0.02259095385670662, 0.18483641743659973, 0.30726194381713867], [0.152969092130661, 0.18801970779895782, 0.1492932289838791, -0.14211106300354004, -0.10949625819921494, 0.2099030762910843, 0.11044375598430634, 0.10455983877182007, -0.02866026945412159, 0.06432288885116577, -0.053341157734394073, -0.18993906676769257, 0.0614381805062294, 0.26277104020118713, 0.06468934565782547, -0.18866871297359467, 0.029497794806957245, -0.19278883934020996, 0.13210296630859375, 0.3582789897918701, 0.02786734141409397, -0.0179247185587883, -0.07247377932071686, 0.23660865426063538], [0.02068871445953846, 0.1035001277923584, -0.07876051962375641, -0.16682253777980804, -0.33776530623435974, -0.19359424710273743, 0.22523167729377747, 0.03760484606027603, -0.13115087151527405, 0.24732740223407745, -0.002204732270911336, -0.26223236322402954, -0.025926247239112854, -0.052771471440792084, -0.4104986786842346, 0.018330557271838188, 0.1670123189687729, 0.03596647083759308, -0.2600420117378235, 0.13882823288440704, 0.08166997134685516, -0.025572922080755234, -0.04135097935795784, 0.507481575012207], [-0.040186237543821335, -0.23715998232364655, -0.06439008563756943, 0.048706185072660446, -0.009247321635484695, 0.12758810818195343, 0.005079437978565693, -0.19140052795410156, 0.06003114953637123, 0.14447729289531708, -0.11285477876663208, -0.15125229954719543, -0.022953148931264877, 0.33268898725509644, 0.05763326957821846, 0.12851187586784363, -0.1836736500263214, 0.10386240482330322, 0.26925531029701233, -0.1190347671508789, 0.04838702827692032, 0.15498381853103638, 0.12604199349880219, 0.4657028317451477], [0.19011402130126953, -0.14120273292064667, -0.28799083828926086, 0.06651641428470612, -0.0766700804233551, -0.0036834811326116323, 0.2419200986623764, -0.3247314691543579, 0.26617708802223206, 0.21666602790355682, -0.3144131302833557, -0.18062350153923035, -0.06278208643198013, 0.25057798624038696, 0.0025382889434695244, -0.339000403881073, 0.08076190203428268, 0.020110342651605606, -0.07561615854501724, -0.17663125693798065, 0.006134767550975084, 0.009039388038218021, 0.025870447978377342, -0.8373109102249146], [0.00016398224397562444, -0.010212044231593609, 0.12149250507354736, -0.022840067744255066, 0.2118668407201767, -0.04353555664420128, -0.28036147356033325, 0.11767894774675369, -0.12076866626739502, 0.1894935667514801, 0.03084016963839531, 0.055876199156045914, -0.09162082523107529, 0.11201684176921844, -0.2467789202928543, 0.1553030163049698, -0.17914876341819763, 0.14335739612579346, 0.23986168205738068, 0.14566756784915924, -0.12994851171970367, -0.001027763937599957, -0.11104787886142731, 0.5284637212753296], [0.04104483127593994, 0.02697310969233513, -0.23265628516674042, 0.26930901408195496, -0.17998014390468597, -0.16902296245098114, 0.07323408126831055, -0.2686106860637665, 0.11661437153816223, 0.13073983788490295, -0.01645873300731182, 0.17087422311306, 0.2092626541852951, -0.10409611463546753, 0.1653538942337036, -0.01527169719338417, 0.09520294517278671, 0.30748477578163147, -0.20668767392635345, 0.07982093095779419, 0.2781866490840912, -0.2750149071216583, -0.15419501066207886, 0.004877905827015638], [-0.0005345988902263343, -0.02329523302614689, 0.025826964527368546, 0.10388395190238953, 0.22591447830200195, -0.19660425186157227, 0.37943318486213684, -0.26342716813087463, -0.006212397012859583, 0.018519511446356773, 0.23042787611484528, -0.08858435600996017, 0.10074106603860855, -0.1767221838235855, -0.21878449618816376, 0.08636480569839478, 0.08373846113681793, 0.27230769395828247, 0.0790635272860527, 0.27528679370880127, 0.053420085459947586, -0.1976778656244278, 0.02392265573143959, 0.08298288285732269], [-0.0748903751373291, 0.07585486024618149, -0.009311790578067303, 0.348003625869751, 0.1555147022008896, -0.3606007397174835, 0.11079565435647964, -0.059565912932157516, -0.27675846219062805, -0.2390831559896469, 0.36216527223587036, 0.21081753075122833, -0.11702296137809753, -0.16969165205955505, -0.11162684112787247, -0.19456039369106293, -0.27035215497016907, 0.1591579020023346, 0.07639274001121521, 0.22295857965946198, -0.09920123219490051, 0.08247245848178864, 0.2139745056629181, -0.009851982817053795], [0.026699895039200783, 0.06757371127605438, -0.2326158881187439, 0.3736550509929657, -0.01724829338490963, 0.09404539316892624, -0.0037724305875599384, -0.1712062805891037, -0.18376275897026062, -0.007636925205588341, 0.1956217736005783, -0.0024904669262468815, 0.09102268517017365, -0.02287963405251503, -0.24851660430431366, 0.07113966345787048, -0.08244442939758301, 0.2058003842830658, 0.14443272352218628, 0.22650548815727234, -0.08866681158542633, -0.04716372489929199, -0.11655547469854355, 0.5458610653877258], [-0.07423757016658783, 0.14964185655117035, 0.13072198629379272, -0.20926332473754883, -0.05501213297247887, -0.25601717829704285, -0.02258213795721531, 0.03930702805519104, 0.06486862897872925, 0.04610157757997513, -0.3985740840435028, 0.24463392794132233, 0.266836941242218, 0.3196496069431305, -0.053275320678949356, -0.06540572643280029, 0.2659895718097687, -0.08929958939552307, 0.25934144854545593, -0.1633557826280594, 0.002704939106479287, 0.005345658864825964, 0.04996332898736, -0.5780514478683472], [0.04484470561146736, -0.1907881200313568, -0.022287361323833466, 0.24435541033744812, 0.08440724015235901, -0.33349311351776123, -0.22916282713413239, 0.09557045251131058, 0.16449226438999176, 0.12125163525342941, 0.1791762113571167, -0.22851553559303284, -0.12193042039871216, -0.06906292587518692, 0.08786281943321228, 0.22606892883777618, 0.2724352180957794, 0.3800418972969055, 0.19985295832157135, 0.23554526269435883, -0.2840028405189514, 0.17538028955459595, -0.3309033215045929, -0.7507622838020325], [0.12280581891536713, 0.20072509348392487, 0.15141382813453674, -0.2776513397693634, -0.011796247214078903, -0.06724587082862854, 0.09818004816770554, 0.0012718215584754944, -0.019122475758194923, 0.16552020609378815, -0.008034550584852695, -0.04680967330932617, 0.16810032725334167, 0.01878933049738407, 0.09801283478736877, -0.04243646189570427, 0.19638529419898987, -0.2805503010749817, 0.010632927529513836, 0.10461561381816864, 0.07191390544176102, 0.04087493196129799, -0.16889865696430206, 0.09445959329605103], [-0.27310413122177124, -0.37827980518341064, -0.33099669218063354, 0.16693705320358276, 0.07052984088659286, -0.2412864714860916, 0.09068296104669571, 0.2312738299369812, 0.25656500458717346, 0.20843496918678284, -0.010861065238714218, -0.3229556679725647, 0.0198227409273386, 0.1278102844953537, 0.3040177822113037, -0.00991086382418871, 0.37673884630203247, 0.28664082288742065, 0.26148369908332825, 0.12998993694782257, 0.1233220174908638, 0.12224625051021576, 0.21121831238269806, 0.28591975569725037], [-0.1890801191329956, 0.1932600736618042, -0.29411402344703674, -0.12840159237384796, -0.1621127873659134, -0.03353743255138397, 0.24000301957130432, 0.0458383746445179, 0.15521875023841858, -0.2961064279079437, 0.08029735088348389, 0.05769027769565582, 0.04101943224668503, -0.1352761834859848, -0.0968770906329155, -0.018481386825442314, -0.06120840460062027, 0.1022474467754364, 0.49217087030410767, 0.39564159512519836, -0.10508810728788376, 0.23741690814495087, -0.1987905204296112, -0.6199554800987244], [-0.07182861119508743, 0.006059103645384312, -0.03956631198525429, 0.1591745913028717, -0.021818306297063828, -0.1646716594696045, 0.1886938363313675, 0.18141339719295502, 0.02076190523803234, -0.32758453488349915, -0.09559231251478195, 0.3114723265171051, -0.15417204797267914, -0.23136411607265472, 0.2689487040042877, -0.08297563344240189, -0.07986530661582947, 0.04966035485267639, -0.18511728942394257, -0.35555994510650635, -0.17505082488059998, -0.20300143957138062, 0.32333558797836304, 0.725980818271637], [0.16444368660449982, -0.012897112406790257, -0.03855980932712555, 0.11981722712516785, 0.2634308338165283, -0.07737435400485992, -0.03277324140071869, 0.05281507223844528, -0.20283733308315277, -0.1389162242412567, 0.05574193224310875, 0.1211269423365593, 0.007359005510807037, -0.05447113513946533, 0.3543862998485565, -0.2819882333278656, -0.2771380543708801, 0.019017498940229416, -0.05407371371984482, 0.14678847789764404, -0.2426844984292984, -0.26474401354789734, 0.03480309993028641, -0.3216366767883301], [0.04112321510910988, 0.03761829808354378, -0.13598990440368652, 0.24042589962482452, -0.0071395994164049625, 0.21271969377994537, 0.018424931913614273, 0.13708451390266418, -0.16643980145454407, -0.1932574361562729, -0.02127513289451599, -0.20500342547893524, 0.1954672783613205, 0.1882694512605667, -0.19285236299037933, 0.1897633820772171, -0.33630314469337463, 0.02230304479598999, -0.06862220913171768, -0.08298538625240326, -0.2689817249774933, -0.19823899865150452, 0.03111821971833706, -0.7522066235542297], [0.13225196301937103, 0.2565467953681946, 0.3565264940261841, -0.032089412212371826, -0.13300639390945435, -0.2757400572299957, -0.07443817704916, 0.08595681190490723, 0.13657164573669434, -0.28706735372543335, 0.2290034294128418, -0.2108975350856781, 0.3413597047328949, -0.22893746197223663, 0.170953169465065, 0.15023279190063477, 0.027988294139504433, -0.3964093327522278, -0.3865036070346832, -0.4057590663433075, 0.1953532099723816, 0.11679680645465851, -0.08117920905351639, -0.48471808433532715]], "biases": [0.05536441504955292, 0.18610645830631256, -0.018117958679795265, 0.22327113151550293, -0.6585336923599243, 0.3637969493865967, -0.3063493072986603, 0.07742033898830414, -0.06969232857227325, 0.089966781437397, -0.16450749337673187, 0.09835357964038849, 0.024054579436779022, -0.5933906435966492, -0.15107329189777374, 0.7392663955688477, 0.9782978296279907, 0.07477396726608276, -0.01067374087870121, -0.12436222285032272, 0.8813809752464294, 0.3034168481826782, 0.2928054630756378, -0.005012658424675465]}, "1": {"config": {"units": 12, "activation": "linear"}, "weights": [[-0.3432771563529968, -0.060882557183504105, -0.15497267246246338, -0.17777200043201447, 0.07510345429182053, 0.08231600373983383, 0.24141430854797363, 0.09658636897802353, 0.25405991077423096, -0.12792231142520905, 0.235385924577713, -0.029703626409173012, 0.04859667643904686, -0.024305853992700577, 0.24998462200164795, -0.041494496166706085, -0.13189755380153656, 0.29212427139282227, 0.09097364544868469, -0.06407289952039719, 0.4510567784309387, -0.21882525086402893, -0.19054721295833588, -0.0674738883972168], [-0.05212031677365303, -0.18414917588233948, 0.2768092155456543, -0.26218801736831665, 0.12991134822368622, 0.11404520273208618, 0.21077121794223785, 0.13951240479946136, 0.19375571608543396, -0.4037652015686035, 0.03687404468655586, 0.033444080501794815, -0.2251274734735489, 0.0024386527948081493, 0.3575477600097656, -0.07406323403120041, -0.17757610976696014, 0.2343427538871765, 0.034036628901958466, -0.12709340453147888, 0.3135409653186798, 0.00953154917806387, -0.18833453953266144, -0.12389647215604782], [-0.295599102973938, -0.15712875127792358, -0.08897785097360611, -0.029469329863786697, 0.12430073320865631, 0.2800690829753876, 0.339440256357193, 0.06423748284578323, 0.13860133290290833, -0.03870004042983055, 0.28359925746917725, 0.06333576887845993, 0.19368520379066467, -0.08617953211069107, -0.025763047859072685, -0.08072803914546967, -0.22615796327590942, -0.22700846195220947, 0.08342083543539047, -0.14339518547058105, 0.4600999057292938, -0.033059634268283844, -0.3364694118499756, -0.1543465107679367], [-0.2105453759431839, -0.16440610587596893, 0.06856101006269455, -0.1592775583267212, 0.14186830818653107, -0.023008452728390694, 0.28307846188545227, 0.17417199909687042, 0.22714479267597198, -0.22590693831443787, 0.00368694169446826, 0.037427447736263275, 0.14987772703170776, -0.02607596106827259, 0.3275793492794037, -0.10067654401063919, -0.25372833013534546, -0.08170560002326965, 0.08717995136976242, -0.1854735165834427, 0.28410807251930237, -0.07710153609514236, -0.14541570842266083, -0.23464079201221466], [-0.24231058359146118, -0.17554865777492523, 0.3173833191394806, -0.2961876094341278, 0.08934621512889862, -0.059578098356723785, 0.31782326102256775, 0.2171528935432434, 0.3954552114009857, -0.20234891772270203, 0.03382473438978195, 0.09538067877292633, 0.3281085193157196, 0.05356651917099953, -0.07972121238708496, -0.06656984984874725, -0.3551974296569824, -0.13828714191913605, -0.030248142778873444, -0.19125530123710632, 0.14839690923690796, 0.1313508003950119, -0.20012931525707245, -0.3513009250164032], [-0.07360078394412994, 0.07768585532903671, 0.11515836417675018, -0.12143974751234055, 0.0013563644606620073, 0.014172038994729519, 0.11282350867986679, 0.22709061205387115, 0.18358446657657623, -0.3556669056415558, 0.12681469321250916, -0.026929695159196854, 0.27576109766960144, -0.12971074879169464, 0.14473392069339752, 0.06742081791162491, -0.3984542489051819, 0.05878810957074165, 0.08699338883161545, -0.2804816961288452, 0.21810293197631836, 0.10234855115413666, -0.09813950210809708, -0.40617647767066956], [0.05322727933526039, 0.09841879457235336, 0.10608915239572525, -0.008011939004063606, -0.022942785173654556, 0.13343901932239532, 0.20637868344783783, 0.13674195110797882, -0.032951511442661285, -0.25443893671035767, -0.1649598777294159, -0.09310851991176605, 0.08521571010351181, -0.25631478428840637, 0.3966660499572754, 0.05640246346592903, -0.4416548013687134, -0.09061785042285919, 0.21231600642204285, -0.4069957733154297, 0.20559029281139374, 0.12725543975830078, -0.22898264229297638, -0.45936745405197144], [-0.25827983021736145, -0.022055912762880325, 0.2844204902648926, -0.1661052107810974, -0.11160196363925934, 0.0013251417549327016, 0.09588411450386047, 0.2602121829986572, 0.036257073283195496, -0.20820282399654388, 0.14589674770832062, -0.09422624856233597, 0.1537623107433319, -0.010908504948019981, -0.1053491160273552, -0.035655610263347626, -0.5033353567123413, 0.2389031946659088, 0.17778292298316956, -0.23573102056980133, 0.11425010114908218, -0.2463403046131134, 0.07788697630167007, -0.3938523530960083], [-0.00718262605369091, -0.20027051866054535, 0.1709744930267334, -0.023305779322981834, -0.014779595658183098, 0.1359388530254364, 0.15751077234745026, 0.15195047855377197, -0.0007676655077375472, -0.23785768449306488, 0.12605279684066772, 0.01693872921168804, 0.24944838881492615, -0.17511820793151855, -0.17705531418323517, -0.1281452625989914, -0.5338804125785828, -0.10474094748497009, 0.19641606509685516, -0.2214849442243576, 0.07671844959259033, -0.1242513507604599, -0.1432899683713913, -0.3308454155921936], [-0.4222935736179352, -0.13916577398777008, 0.37477758526802063, 0.11922068148851395, -0.09044303745031357, 0.1165577620267868, -0.12735934555530548, 0.15074467658996582, 0.19432218372821808, 0.18201495707035065, 0.12220641225576401, 0.049546997994184494, -0.09811429679393768, 0.03416888043284416, -0.14337457716464996, -0.24243344366550446, -0.5773209929466248, 0.14419962465763092, 0.12804991006851196, -0.18109197914600372, 0.013113361783325672, -0.2580207586288452, -0.15843217074871063, -0.36054548621177673], [-0.3805186152458191, -0.18116912245750427, 0.1658284217119217, 0.13977155089378357, -0.08085984736680984, 0.1742793470621109, -0.15222381055355072, 0.27580687403678894, 0.12480971217155457, -0.14767688512802124, 0.17962761223316193, 0.014474289491772652, 0.14488646388053894, -0.19141355156898499, -0.04582570493221283, -0.26641374826431274, -0.516622006893158, 0.15220876038074493, 0.12231580168008804, -0.06707032024860382, 0.02959216758608818, -0.20960550010204315, 0.13192830979824066, -0.4370008111000061], [-0.005441605579108, -0.18406464159488678, 0.058067332953214645, 0.019115105271339417, -0.1526722013950348, 0.20004138350486755, 0.11948441714048386, 0.0963340699672699, 0.05703247711062431, -0.18710288405418396, -0.16056056320667267, 0.14096710085868835, 0.16344502568244934, -0.07991396635770798, 0.04407578706741333, -0.32383298873901367, -0.4908294081687927, 0.1965084820985794, 0.1787997931241989, -0.14074355363845825, 0.05728289484977722, -0.010982310399413109, -0.2394554167985916, -0.30248892307281494]], "biases": [-0.09022866189479828, 0.05010446906089783, -0.16738338768482208, 0.06474898010492325, 0.218587726354599, -0.14772550761699677, -0.10701882094144821, 0.06894638389348984, 0.14954248070716858, 0.22396142780780792, 0.06062149628996849, 0.07077396661043167]}}
# 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) < 16 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()