diff --git a/dev-0/out.tsv b/dev-0/out.tsv new file mode 100644 index 0000000..6ff2589 --- /dev/null +++ b/dev-0/out.tsv @@ -0,0 +1,1000 @@ +80410.97631404735 +14322.228104399517 +51118.37913290318 +16995.265404807404 +25183.50176266581 +79781.70195604116 +47955.64834578149 +11525.548448880203 +-5348.3755720909685 +17010.995174583048 +27481.509745324962 +83471.13246457465 +7797.594208772294 +4808.03147051204 +39068.93867867533 +24877.437992001884 +63737.49892832432 +95380.72372058779 +40459.29405984841 +8421.851932784542 +2497.872335157357 +10570.380358462222 +-9392.204356710427 +59446.690232901834 +-3562.31721752882 +71090.62111608498 +81244.45931234304 +15360.024652146734 +11942.10393065773 +40208.84071749356 +76614.73044070043 +65294.22863307316 +7776.4862053385 +51832.857907556 +40765.809888644144 +61195.267544681206 +35783.04219779838 +26024.23815237824 +43848.89483385626 +71980.86064156704 +77624.18711954635 +32496.212263765745 +40153.5194671331 +69066.51108140592 +15801.64977492299 +124148.10128559731 +93563.58251372725 +14085.035711675882 +40976.589749669656 +53155.056422940455 +75810.88811444677 +-6564.466542978771 +98077.53587656189 +41765.090602867305 +13460.037104999647 +-5587.173276754096 +-2960.874950557947 +27657.945661498234 +72048.23400161322 +24193.6365463268 +64726.474939438514 +-8925.46117053926 +3363.064764311537 +75068.53038901836 +84822.40881056245 +32852.45883638598 +-5337.160654437728 +89745.48893989436 +34209.749768547714 +4479.624319160357 +21400.25396527443 +35265.818610803224 +22611.82937781699 +20874.51756606344 +169567.77354569733 +46782.447678007185 +66234.15548609011 +43113.4671327658 +70461.8143426599 +18250.864079097286 +48572.10949370172 +24226.584413890727 +48755.69423434883 +19503.848856377415 +19431.6007439252 +23242.69901437033 +59861.16124927532 +42028.334761680104 +44693.82002437394 +25439.774239028804 +43694.15952195786 +36666.6617518384 +59022.94588736817 +46478.29685675725 +5458.704772979952 +6491.90819497779 +66025.27030289825 +64371.43870477192 +40569.20527395699 +31081.45891416259 +7607.223353856243 +6288.6132725887 +13559.5072606178 +22128.34017572645 +8439.442848105915 +28383.505974229425 +29626.93658850435 +45634.22521681897 +65412.6234470075 +21787.10008893907 +79593.28326197248 +-14498.545270978473 +55480.193942490965 +61808.30637103412 +12042.998830432072 +41735.478534461 +13844.133057326078 +37718.64322613552 +56878.70585027989 +28461.149879425764 +25692.563046504743 +33897.93463144824 +-20913.71864296589 +33176.514356497675 +67719.22114864364 +78607.2426595958 +-19082.17242700234 +45846.70482260175 +23663.564957860857 +48188.504356177524 +15442.480908692814 +-6466.40436548274 +46850.26526602637 +39803.93010214437 +-24799.37923662737 +65169.316913307644 +100049.63698871993 +57881.23925185762 +34365.256338835694 +64864.681154347025 +19021.104991596192 +53339.523203569464 +71521.2405050192 +19386.23125913646 +67976.53842842393 +54040.3152843155 +95037.77245829068 +15784.981030344032 +11930.161162517034 +58565.25621136185 +35678.998372559436 +20935.151304328814 +49646.016380547546 +-35218.86488814559 +75666.66970255971 +-13154.576925687492 +76540.54042166937 +22045.445067464374 +59292.709843830206 +61340.54162201937 +38301.05866976641 +70091.4336164426 +9280.97891641222 +-421.0148262344301 +4873.204784397036 +-8520.522851441987 +44035.8288476672 +39918.9382369034 +27468.298736112192 +83973.41210117657 +64399.164230428636 +73001.71723999549 +21598.56235502567 +23790.828542936593 +78001.61672175955 +39891.44713910762 +77601.57588055078 +97771.9280086197 +82765.56499215402 +77624.18711954635 +57324.99301993009 +35185.31994336471 +17808.94130889047 +-10907.34121805057 +22751.118617561646 +7463.610268638469 +82252.29367249552 +41402.49692617543 +12474.145044223405 +25441.746278218925 +-10949.563698916696 +43142.72740774229 +46348.40198398847 +64696.66588847246 +4545.191412274726 +55738.93072013743 +43309.77507277485 +60499.933793027885 +24551.1547352029 +38337.35207747668 +102588.14234103076 +98348.32280585635 +-2118.902246007696 +-13743.31410074234 +21274.278131338768 +24634.805530568585 +36541.892529723234 +66595.64899550844 +69682.34941591416 +36123.46664309129 +27463.5875680577 +9141.042523385957 +94112.07873215806 +45807.1159415273 +38539.701423121616 +79229.45417404268 +51194.73777690437 +63795.519297707826 +122222.0659495946 +57059.200475724414 +-13502.688807576895 +34886.04649101477 +28541.712306072004 +-7936.977825484239 +40795.740686394274 +28506.83007632196 +2023.9452849067748 +42372.53469531704 +42319.31711242627 +55297.89342894778 +8262.386034058407 +46122.22873022035 +28891.755487195216 +48774.266065006144 +-102.0217113206163 +6657.279275286011 +74130.31325569004 +51447.618842693046 +15970.920736795291 +63486.84641698189 +40606.759039878845 +26890.111399187706 +24890.825880162418 +50662.810350243 +38331.89134690352 +16862.163945808075 +15377.83814576175 +45264.53928369563 +32982.40122740995 +14488.484736460261 +56011.91327726003 +26566.32613377087 +50166.604048034176 +75396.77399793733 +15105.745319821872 +88256.02276743483 +34794.42693087272 +84563.68729518633 +36182.414280086756 +23137.78725170903 +68839.21273458004 +11294.138323791325 +22905.856602692977 +17544.40739057772 +75223.63047182187 +28147.926021336578 +12.696733963675797 +98265.71124106646 +3732.918525549583 +20634.283756031655 +-10490.808078587987 +25096.374797996134 +19875.38219532557 +20927.545426819474 +70814.95211952087 +19296.246465915814 +19249.720273770392 +149444.30053270143 +23283.93871744722 +26375.41974563431 +122204.72829856072 +63495.276355446316 +14787.738781017251 +17157.985088618472 +77788.10444861557 +32937.02575747203 +82248.7236643685 +11154.942152596079 +35952.433265144005 +59363.22639217414 +28749.762417025864 +73774.91045512166 +42269.1005332917 +2696.8091203533113 +30354.712557610124 +38458.08641644288 +46926.35681041982 +31848.274158203043 +31601.245490986854 +56576.06077037938 +25729.56010982301 +13615.169293004088 +4902.68108756002 +37858.960720653646 +15536.140747891739 +37136.465755298734 +9413.874805874191 +54018.094415694475 +40874.052218402736 +12366.15452623088 +6817.549658953212 +-21553.753558565862 +27806.795262930915 +-17378.01039466355 +71710.3918410074 +90435.59443210904 +4267.255095039494 +29824.857584523037 +49562.4226838015 +29217.49858507607 +47518.63361631241 +53054.50095107686 +28060.146299996413 +19025.20777926687 +59713.66255523171 +79927.97707917169 +21649.17405382637 +47733.017951059155 +64419.48607330676 +33803.23987675831 +30548.87023746129 +66436.28234573826 +7680.837856209837 +36104.62431055587 +-5147.327939463779 +44328.87599962577 +44973.89232226275 +33280.24613534007 +54027.54052454792 +67065.63657533564 +132570.9833891401 +88117.66197700705 +46440.14686757047 +69546.36986174248 +15081.730691481382 +65688.348068472 +16567.636201199144 +5943.4116134066135 +55711.72424889635 +43232.79423521925 +59470.52433145419 +16812.166914311238 +49663.42038968112 +34348.6609444404 +53332.711803333834 +67288.17435072642 +11415.06147007458 +7962.985350272618 +56206.954403000884 +23327.999593428336 +98506.43854433484 +44871.146778188646 +2484.892749508843 +52022.033415084705 +55957.964218369685 +81238.0598756047 +179270.4169575097 +70149.18726884294 +57143.90422379691 +12422.331971741281 +33106.79841478448 +35108.25533090532 +-20534.010544475168 +72847.35416044295 +84523.66270668618 +44394.00561033469 +26109.254276361316 +51094.25562382862 +79257.80192522984 +39524.14836387709 +-14438.850612982176 +42003.48236000724 +37555.51376615744 +53926.178502259776 +-32.17731018830091 +29253.873805427924 +21862.41476166621 +-13394.897932759486 +28171.557302635163 +2672.2527435859665 +51003.28018641099 +72873.23446241487 +49982.253920224495 +26045.237928194925 +10293.41172426287 +66290.5065846378 +25307.589588032104 +71946.07072801888 +43336.39157694206 +36044.165103567764 +52764.82363587525 +41238.38089008909 +89361.942424912 +62552.463326899335 +54602.930292705074 +27821.814213716425 +1612.8986675580963 +22972.258576215245 +81753.44657839648 +83102.33511690609 +46789.289449208416 +8493.33961859066 +22436.541569082998 +238622.98659605905 +101140.43258238304 +123755.90100146178 +114931.10328270495 +11719.960383713245 +46603.623816992156 +50958.143879991025 +46409.91649879236 +69552.46837330423 +69213.12146256864 +81237.47951982263 +62003.93083309196 +50624.504238496535 +53645.82345175091 +-24318.6964834705 +56315.7152335057 +44665.59465861786 +42636.6403256841 +76503.8181770593 +59921.18150847126 +30071.132988685742 +8114.926464661956 +75733.69699978642 +22129.173067536205 +43575.374833015725 +29719.755635403097 +68659.29319649283 +33170.40136047453 +60713.446894909255 +26725.355180633254 +69984.25431715511 +64399.7445862107 +115713.34564873949 +45056.4387599444 +99399.83203208074 +67277.8794553252 +67991.3353320919 +65185.62629715726 +31389.693832828663 +7921.987596780062 +21118.767550581135 +28048.154707719572 +50302.15175436996 +12870.39073295705 +65919.0763950469 +54141.887191246264 +34348.37829668075 +78663.02875896543 +17170.94916070439 +28591.45904961042 +26298.82040412072 +11788.721254921518 +40712.00162742846 +14642.188565440476 +85698.53400241025 +46264.3714021733 +40513.68626087997 +28665.636456110515 +19272.25219398178 +80029.14652559161 +73494.96003288962 +25307.048614135012 +55617.42468752153 +31379.311635325663 +23615.60526432097 +16500.074444842525 +62209.71554545965 +-25892.62445427198 +47405.74171467498 +24823.686764296144 +24354.421102667227 +18844.03635853529 +28898.71918290481 +55693.07231614273 +51212.68624102976 +36608.18294813298 +29213.26556858793 +47261.879106781445 +51349.10318147112 +81238.0598756047 +26208.17699859664 +20776.439954058267 +38692.611061521806 +64426.94857559353 +44767.33661440108 +80125.30019118357 +1418.6452489402145 +65533.15173010528 +30339.92046280764 +38348.07170968875 +29159.42077086307 +62853.21872015763 +62396.33066977002 +67651.91663754638 +9777.211144330911 +90185.1794512393 +33725.921425156295 +-28633.12707788963 +106887.68385958392 +76779.81438929029 +22186.083374262787 +196426.5788040124 +53668.485874710605 +20215.681355225854 +49520.61151607148 +37178.03788051568 +-27344.347247077152 +24311.94748883415 +54037.43143481389 +107725.88195839524 +18712.264155481942 +27476.256763670594 +95891.13248797879 +-10095.402670574374 +95183.02193162031 +74380.64182520658 +69729.0100582866 +61291.62616452854 +29958.994387377985 +98517.4757082574 +15345.67665677052 +82047.77843558509 +13459.283804669045 +71781.86949940119 +3895.510728508234 +68185.07850659173 +45746.109937132336 +76472.88152410462 +70358.58464681078 +31463.779435116798 +-522.2450961889699 +13655.342629695311 +6540.140040666796 +48452.47663105652 +21200.601224657148 +69121.45597999636 +72862.05669909623 +53251.78291203268 +57619.31655791029 +13720.454462939873 +30357.589900606312 +20070.434680682607 +6026.564726352692 +18511.09908992611 +-9642.379549495876 +5139.908695930615 +55271.90091335308 +138658.87484608777 +87248.91662806645 +4984.012310422026 +42858.99492612388 +42955.76447070297 +-25442.758968614973 +57774.87164598517 +20973.138293196447 +-1709.7208965308964 +2837.355438085273 +75662.62936337385 +38286.54349799361 +95919.2683195332 +66880.41137494985 +85506.46884370316 +57042.356323936954 +50228.498584065586 +91832.89683811739 +31367.592368908226 +66899.7025368996 +-3156.2411906104535 +59106.573833738454 +-18113.379680061713 +61856.068615119904 +73403.71741865762 +15847.220088480972 +9605.839057260193 +39437.74395921826 +67353.19472829252 +20024.456838063896 +1248.1196156721562 +25698.745711662807 +75565.8883991167 +16789.275970487855 +49241.74687548634 +65301.92857274879 +68921.70085334871 +129748.73953047208 +53420.41295995936 +5720.264478171244 +28892.60365916323 +72123.7740158476 +45560.391365300864 +64241.27728420962 +17410.872121089138 +35750.7359077977 +14783.40418153815 +-45085.74612785131 +26248.065339984372 +59500.16631332971 +48483.334873553365 +19907.735418798402 +80.8889871025458 +58338.89848638233 +46505.30818598252 +44274.77598995622 +27615.635385096073 +23818.888935829513 +55055.76290636137 +43443.55647275597 +201641.01407666877 +18485.751447015442 +-16156.51682063099 +58552.151310914196 +41653.40743792895 +17495.367500457913 +41891.673930719495 +51666.49416804593 +12237.40351834707 +73580.19923918229 +-628.547349087894 +134770.75069484767 +91510.48462769575 +127.71001796983182 +27778.934168556705 +1182.5686871521175 +31943.869887200184 +675.2742228610441 +69719.708772799 +27013.92264054343 +42141.101286510006 +-5269.886241068132 +23093.716240475886 +26278.802688157186 +36395.1042091595 +23286.500355174765 +51525.06325628329 +36019.025691036135 +61173.10393671505 +57702.514934462495 +57628.63477327768 +24984.8331889268 +28703.865716341883 +44814.40716794226 +63992.98676942196 +25751.14766599238 +59102.80903423391 +90941.84443226643 +91019.84877499007 +43865.07893445343 +54575.879395802505 +2787.708387400955 +47255.48661124427 +27165.63309828192 +37769.91511308495 +41292.75453564711 +19038.498129210435 +17499.841608772986 +12015.941934735514 +90985.38709776755 +51847.23765675258 +34356.90502989013 +9818.141726548783 +90416.98135473393 +28048.20322550647 +36281.317157958634 +33291.1549162101 +81097.62247399427 +32205.562100593 +47623.49247353338 +-34890.493592597544 +40158.396536516026 +19170.974231429398 +119529.81640180852 +76608.88618412055 +52509.17715535499 +67067.29509076662 +32530.06992602069 +39479.76299616322 +-5972.637828195468 +12381.89070927538 +13931.142802364193 +11493.373149446212 +55250.634068088606 +48871.00563454721 +3333.588461149484 +-15323.786659969948 +96171.60391053185 +-468.87689177691936 +72417.8916010093 +211.4653445649892 +34486.45974811539 +97899.02051875647 +43675.38195410557 +25304.914110879414 +52378.97079492733 +61404.54796032421 +99580.53200831637 +35457.30905956961 +-14177.693808197044 +16163.671350804158 +-27059.904063325375 +23126.50780562032 +54194.942075183615 +8252.690969340503 +37064.802616013214 +-9206.328672162257 +61546.1588977715 +129410.98783620168 +50148.079193615355 +62257.99939151108 +983.1021162867546 +43179.38464327343 +59715.69380046986 +-2148.4351013395935 +-1092.412600965239 +56671.850903107785 +15205.978087062016 +23850.61294241529 +-766.4864422949031 +30596.574847116135 +81036.80031112954 +106151.23936689459 +17925.02038027253 +2842.7263529254124 +84794.73981387168 +1098.9009540900588 +29001.413007454015 +21878.96484078467 +5639.143488034606 +27765.77072320413 +23041.0599488616 +94404.94189140946 +64512.61131222639 +720.9846180593595 +50187.38548726868 +53391.71280632075 +45518.59479695745 +57871.94319804665 +17855.36469121836 +61013.35067343153 +-28439.219685996883 +46730.54354104493 +76814.17817299534 +5511.400801290758 +71709.95657417085 +45335.71888818033 +-11533.201526128687 +-40403.27948828135 +33312.08323421609 +14093.53121202346 +16659.254880359396 +27512.941560546868 +110034.87872561999 +30124.54258063063 +47260.61645121779 +30592.859552721493 +34368.224743699655 +-32654.344269393943 +44842.5891895229 +-23410.17929270398 +38028.38357334677 +35564.08315815125 +39112.51280849613 +55143.172658214346 +10586.257871332578 +-23469.68831621483 +21379.925245995633 +43556.408470784314 +19513.282892018557 +23776.011781650595 +40001.42729707528 +-58294.16684230976 +63741.73044738732 +50496.46495352406 +8120.256854983978 +74076.94059285801 +60869.064311273396 +28961.644793367945 +14874.865745686926 +61446.99150388315 +8438.632867381908 +-5477.731702485122 +38317.18026154209 +174650.0611164132 +-14201.754236491397 +22005.388873658143 +81696.08685605321 +64399.164230428636 +20911.70806506183 +-10685.827435955405 +10042.483693844639 +63661.77961920481 +17100.757918481715 +25686.30313288886 +4737.575191321783 +30614.153100557625 +38752.08361009788 +59122.27509140223 +74645.00543723162 +-4639.060389993712 +61789.844538805075 +76892.72804903705 +7394.002196641639 +40876.48964179028 +28525.463216950186 +16776.359589093365 +8696.456508108415 +80303.42084200587 +59715.69380046986 +37858.360939515755 +30856.83591858577 +6658.696173200384 +39325.87257574778 +27287.875502670184 +69719.708772799 +48219.69299719855 +-4182.309222256765 +59713.66255523171 +93795.66836097557 +24446.948723488487 +50100.77611069847 +54485.79400852788 +76728.802496396 +6107.0109089827165 +46668.38816079218 +60593.49744424317 +17087.006489022635 +-7661.021344721317 +49759.789041421376 +24212.72770537529 +41361.640030906536 +66560.04484920297 +41808.50861588307 +6305.1779101695865 +40368.17126793321 +34129.86663609743 +67245.40277873352 +22086.38735173084 +24401.915299735032 +31996.863042736426 +34786.37925450783 +30608.610851461068 +58746.09120202903 +64334.447569352575 +60408.45224256348 +13117.881779099815 +51525.71067332104 +23556.568971268833 +-4981.753738196567 +22126.561542616226 +16591.972265043296 +-7523.370851671323 +45399.45028378256 +23377.32258269936 +-13211.281686507165 +23421.005544373766 +23634.82139672991 +32799.038470855914 +17677.886629197747 +72048.2081567822 +52073.47633188777 +37792.60108499788 +38817.936546101235 +11275.90000622347 +99581.11236409843 +45846.35391409788 +128465.5193345137 +64386.08046918269 +76435.92646458652 +37323.75057631545 +28341.00085479021 +63242.433369410224 +19627.419674073346 +41980.91685589682 +82435.02517919242 +47098.595546829514 +53037.62605897058 +98027.10607977118 +11989.130698720925 +4968.69167955406 +28018.661474678665 +1472.962158887647 +26655.635271896608 +41332.02691884618 +-52729.94645769056 +40133.11378106661 +-14910.722484736703 +61455.28127997182 +82387.07895990368 +53407.59148980491 +30966.220994387753 +81238.0598756047 +52.834144320338964 +28730.710397414863 +42977.086478125304 +-13967.678577812389 +19111.577178705484 +46297.52610401064 +91251.11618757434 +62018.50714983791 +118893.91440487187 +96772.13261020463 +63100.2184169963 +24200.897425288334 +-13270.045485515147 +29973.89478053432 +19163.368353920057 +27931.897998134606 +30727.615075103007 +91974.88024553377 +81320.23617355805 +2595.354744438082 +31789.803274318576 +74920.75935903192 +79736.28268335946 +99063.65145199932 +37220.21025215089 +16711.082362357527 +16850.742732789367 +61040.70704906434 +45796.938174749725 +30905.143828302622 +58921.31328232307 +17107.83483374864 +40176.60411376227 +68556.26533077378 +82918.25202875305 +62729.973313945346 +58316.8671504464 +-6056.797731170431 +-12741.115683325566 +31002.397136197425 +90231.90399340447 +43549.810913872905 +73982.2004722245 +65229.05356028397 +-11211.658687369898 +8557.37978872098 +89478.20954177529 +31576.890884393826 +38469.99844426289 +11570.175318445079 +-4165.393303238787 +36045.57948326785 +66443.53876024764 +71639.75666939653 +22160.17904639989 +22254.84027844947 +22366.090174341574 +6022.6350794341415 +62019.25081765652 +41278.66138849873 +85489.08940865379 +70189.63829159085 +21879.269146430306 +22904.754782994278 +73886.55254525878 +76768.31108188722 +7964.912340279669 +57887.951589656994 +75408.94177111704 +49944.632001710124 +43781.47452866007 +50167.17666941602 +38184.89373192564 +1121.3175054658204 +77624.18711954635 +26161.994448414072 +7938.737553847954 +47213.171784784645 +78635.10591338016 +77433.56674453337 +6209.835708147846 +8927.775640217587 +16241.34897737857 +69194.24500857946 +79801.91550491471 +70350.04380907025 +41169.6022414146 +36762.7288568886 +8160.666808720678 +47339.67174228188 +48839.687407833524 +-25660.791946715675 +19654.832640307955 +73326.34135109838 +75456.21937478334 +44299.368956142105 +120124.07605633978 \ No newline at end of file diff --git a/geval b/geval new file mode 100644 index 0000000..b68b316 Binary files /dev/null and b/geval differ diff --git a/rozwiązanie.py b/rozwiązanie.py new file mode 100644 index 0000000..68aa38d --- /dev/null +++ b/rozwiązanie.py @@ -0,0 +1,50 @@ +import pandas +from sklearn.linear_model import LinearRegression + +r_in = './train/train.tsv' +# r_expected= './sport-text-classification-ball-ISI-public/train/expected.tsv' +r_ind_ev = './dev-0/in.tsv' + +r_ind_test_A = './test-A/in.tsv' + +with open('./names') as f_names: + names = f_names.read().rstrip('\n').split('\t') + +tsv_read = pandas.read_table(r_in, error_bad_lines=False, sep='\t', names=names) +tsv_read_dev = pandas.read_table(r_ind_ev, error_bad_lines=False, sep='\t', + names=['mileage', 'year', 'brand', 'engineType', 'engineCapacity']) + +tsv_read_test_A = pandas.read_table(r_ind_test_A, error_bad_lines=False, sep='\t', + names=['mileage', 'year', 'brand', 'engineType', 'engineCapacity']) + + +train = pandas.get_dummies(tsv_read, columns=['engineType']) + +categorical_cols = train.select_dtypes(include=object).columns.values +for col in categorical_cols: + train[col] = train[col].astype('category').cat.codes + +train = train.loc[(train['price'] > 1000)] + +X = train.loc[:, train.columns != 'price'] +clf = LinearRegression().fit(X, train['price']) + +dev = pandas.get_dummies(tsv_read_dev, columns=['engineType']) + +categorical_cols1 = dev.select_dtypes(include=object).columns.values +for col in categorical_cols1: + dev[col] = dev[col].astype('category').cat.codes + +predictions = clf.predict(dev) + +predictions.tofile("./dev-0/out.tsv", sep='\n') + +test = pandas.get_dummies(tsv_read_test_A, columns=['engineType']) + +categorical_cols2 = test.select_dtypes(include=object).columns.values +for col in categorical_cols2: + test[col] = test[col].astype('category').cat.codes + +predictions = clf.predict(dev) + +predictions.tofile("./test-A/out.tsv", sep='\n') \ No newline at end of file diff --git a/test-A/out.tsv b/test-A/out.tsv new file mode 100644 index 0000000..6ff2589 --- /dev/null +++ b/test-A/out.tsv @@ -0,0 +1,1000 @@ +80410.97631404735 +14322.228104399517 +51118.37913290318 +16995.265404807404 +25183.50176266581 +79781.70195604116 +47955.64834578149 +11525.548448880203 +-5348.3755720909685 +17010.995174583048 +27481.509745324962 +83471.13246457465 +7797.594208772294 +4808.03147051204 +39068.93867867533 +24877.437992001884 +63737.49892832432 +95380.72372058779 +40459.29405984841 +8421.851932784542 +2497.872335157357 +10570.380358462222 +-9392.204356710427 +59446.690232901834 +-3562.31721752882 +71090.62111608498 +81244.45931234304 +15360.024652146734 +11942.10393065773 +40208.84071749356 +76614.73044070043 +65294.22863307316 +7776.4862053385 +51832.857907556 +40765.809888644144 +61195.267544681206 +35783.04219779838 +26024.23815237824 +43848.89483385626 +71980.86064156704 +77624.18711954635 +32496.212263765745 +40153.5194671331 +69066.51108140592 +15801.64977492299 +124148.10128559731 +93563.58251372725 +14085.035711675882 +40976.589749669656 +53155.056422940455 +75810.88811444677 +-6564.466542978771 +98077.53587656189 +41765.090602867305 +13460.037104999647 +-5587.173276754096 +-2960.874950557947 +27657.945661498234 +72048.23400161322 +24193.6365463268 +64726.474939438514 +-8925.46117053926 +3363.064764311537 +75068.53038901836 +84822.40881056245 +32852.45883638598 +-5337.160654437728 +89745.48893989436 +34209.749768547714 +4479.624319160357 +21400.25396527443 +35265.818610803224 +22611.82937781699 +20874.51756606344 +169567.77354569733 +46782.447678007185 +66234.15548609011 +43113.4671327658 +70461.8143426599 +18250.864079097286 +48572.10949370172 +24226.584413890727 +48755.69423434883 +19503.848856377415 +19431.6007439252 +23242.69901437033 +59861.16124927532 +42028.334761680104 +44693.82002437394 +25439.774239028804 +43694.15952195786 +36666.6617518384 +59022.94588736817 +46478.29685675725 +5458.704772979952 +6491.90819497779 +66025.27030289825 +64371.43870477192 +40569.20527395699 +31081.45891416259 +7607.223353856243 +6288.6132725887 +13559.5072606178 +22128.34017572645 +8439.442848105915 +28383.505974229425 +29626.93658850435 +45634.22521681897 +65412.6234470075 +21787.10008893907 +79593.28326197248 +-14498.545270978473 +55480.193942490965 +61808.30637103412 +12042.998830432072 +41735.478534461 +13844.133057326078 +37718.64322613552 +56878.70585027989 +28461.149879425764 +25692.563046504743 +33897.93463144824 +-20913.71864296589 +33176.514356497675 +67719.22114864364 +78607.2426595958 +-19082.17242700234 +45846.70482260175 +23663.564957860857 +48188.504356177524 +15442.480908692814 +-6466.40436548274 +46850.26526602637 +39803.93010214437 +-24799.37923662737 +65169.316913307644 +100049.63698871993 +57881.23925185762 +34365.256338835694 +64864.681154347025 +19021.104991596192 +53339.523203569464 +71521.2405050192 +19386.23125913646 +67976.53842842393 +54040.3152843155 +95037.77245829068 +15784.981030344032 +11930.161162517034 +58565.25621136185 +35678.998372559436 +20935.151304328814 +49646.016380547546 +-35218.86488814559 +75666.66970255971 +-13154.576925687492 +76540.54042166937 +22045.445067464374 +59292.709843830206 +61340.54162201937 +38301.05866976641 +70091.4336164426 +9280.97891641222 +-421.0148262344301 +4873.204784397036 +-8520.522851441987 +44035.8288476672 +39918.9382369034 +27468.298736112192 +83973.41210117657 +64399.164230428636 +73001.71723999549 +21598.56235502567 +23790.828542936593 +78001.61672175955 +39891.44713910762 +77601.57588055078 +97771.9280086197 +82765.56499215402 +77624.18711954635 +57324.99301993009 +35185.31994336471 +17808.94130889047 +-10907.34121805057 +22751.118617561646 +7463.610268638469 +82252.29367249552 +41402.49692617543 +12474.145044223405 +25441.746278218925 +-10949.563698916696 +43142.72740774229 +46348.40198398847 +64696.66588847246 +4545.191412274726 +55738.93072013743 +43309.77507277485 +60499.933793027885 +24551.1547352029 +38337.35207747668 +102588.14234103076 +98348.32280585635 +-2118.902246007696 +-13743.31410074234 +21274.278131338768 +24634.805530568585 +36541.892529723234 +66595.64899550844 +69682.34941591416 +36123.46664309129 +27463.5875680577 +9141.042523385957 +94112.07873215806 +45807.1159415273 +38539.701423121616 +79229.45417404268 +51194.73777690437 +63795.519297707826 +122222.0659495946 +57059.200475724414 +-13502.688807576895 +34886.04649101477 +28541.712306072004 +-7936.977825484239 +40795.740686394274 +28506.83007632196 +2023.9452849067748 +42372.53469531704 +42319.31711242627 +55297.89342894778 +8262.386034058407 +46122.22873022035 +28891.755487195216 +48774.266065006144 +-102.0217113206163 +6657.279275286011 +74130.31325569004 +51447.618842693046 +15970.920736795291 +63486.84641698189 +40606.759039878845 +26890.111399187706 +24890.825880162418 +50662.810350243 +38331.89134690352 +16862.163945808075 +15377.83814576175 +45264.53928369563 +32982.40122740995 +14488.484736460261 +56011.91327726003 +26566.32613377087 +50166.604048034176 +75396.77399793733 +15105.745319821872 +88256.02276743483 +34794.42693087272 +84563.68729518633 +36182.414280086756 +23137.78725170903 +68839.21273458004 +11294.138323791325 +22905.856602692977 +17544.40739057772 +75223.63047182187 +28147.926021336578 +12.696733963675797 +98265.71124106646 +3732.918525549583 +20634.283756031655 +-10490.808078587987 +25096.374797996134 +19875.38219532557 +20927.545426819474 +70814.95211952087 +19296.246465915814 +19249.720273770392 +149444.30053270143 +23283.93871744722 +26375.41974563431 +122204.72829856072 +63495.276355446316 +14787.738781017251 +17157.985088618472 +77788.10444861557 +32937.02575747203 +82248.7236643685 +11154.942152596079 +35952.433265144005 +59363.22639217414 +28749.762417025864 +73774.91045512166 +42269.1005332917 +2696.8091203533113 +30354.712557610124 +38458.08641644288 +46926.35681041982 +31848.274158203043 +31601.245490986854 +56576.06077037938 +25729.56010982301 +13615.169293004088 +4902.68108756002 +37858.960720653646 +15536.140747891739 +37136.465755298734 +9413.874805874191 +54018.094415694475 +40874.052218402736 +12366.15452623088 +6817.549658953212 +-21553.753558565862 +27806.795262930915 +-17378.01039466355 +71710.3918410074 +90435.59443210904 +4267.255095039494 +29824.857584523037 +49562.4226838015 +29217.49858507607 +47518.63361631241 +53054.50095107686 +28060.146299996413 +19025.20777926687 +59713.66255523171 +79927.97707917169 +21649.17405382637 +47733.017951059155 +64419.48607330676 +33803.23987675831 +30548.87023746129 +66436.28234573826 +7680.837856209837 +36104.62431055587 +-5147.327939463779 +44328.87599962577 +44973.89232226275 +33280.24613534007 +54027.54052454792 +67065.63657533564 +132570.9833891401 +88117.66197700705 +46440.14686757047 +69546.36986174248 +15081.730691481382 +65688.348068472 +16567.636201199144 +5943.4116134066135 +55711.72424889635 +43232.79423521925 +59470.52433145419 +16812.166914311238 +49663.42038968112 +34348.6609444404 +53332.711803333834 +67288.17435072642 +11415.06147007458 +7962.985350272618 +56206.954403000884 +23327.999593428336 +98506.43854433484 +44871.146778188646 +2484.892749508843 +52022.033415084705 +55957.964218369685 +81238.0598756047 +179270.4169575097 +70149.18726884294 +57143.90422379691 +12422.331971741281 +33106.79841478448 +35108.25533090532 +-20534.010544475168 +72847.35416044295 +84523.66270668618 +44394.00561033469 +26109.254276361316 +51094.25562382862 +79257.80192522984 +39524.14836387709 +-14438.850612982176 +42003.48236000724 +37555.51376615744 +53926.178502259776 +-32.17731018830091 +29253.873805427924 +21862.41476166621 +-13394.897932759486 +28171.557302635163 +2672.2527435859665 +51003.28018641099 +72873.23446241487 +49982.253920224495 +26045.237928194925 +10293.41172426287 +66290.5065846378 +25307.589588032104 +71946.07072801888 +43336.39157694206 +36044.165103567764 +52764.82363587525 +41238.38089008909 +89361.942424912 +62552.463326899335 +54602.930292705074 +27821.814213716425 +1612.8986675580963 +22972.258576215245 +81753.44657839648 +83102.33511690609 +46789.289449208416 +8493.33961859066 +22436.541569082998 +238622.98659605905 +101140.43258238304 +123755.90100146178 +114931.10328270495 +11719.960383713245 +46603.623816992156 +50958.143879991025 +46409.91649879236 +69552.46837330423 +69213.12146256864 +81237.47951982263 +62003.93083309196 +50624.504238496535 +53645.82345175091 +-24318.6964834705 +56315.7152335057 +44665.59465861786 +42636.6403256841 +76503.8181770593 +59921.18150847126 +30071.132988685742 +8114.926464661956 +75733.69699978642 +22129.173067536205 +43575.374833015725 +29719.755635403097 +68659.29319649283 +33170.40136047453 +60713.446894909255 +26725.355180633254 +69984.25431715511 +64399.7445862107 +115713.34564873949 +45056.4387599444 +99399.83203208074 +67277.8794553252 +67991.3353320919 +65185.62629715726 +31389.693832828663 +7921.987596780062 +21118.767550581135 +28048.154707719572 +50302.15175436996 +12870.39073295705 +65919.0763950469 +54141.887191246264 +34348.37829668075 +78663.02875896543 +17170.94916070439 +28591.45904961042 +26298.82040412072 +11788.721254921518 +40712.00162742846 +14642.188565440476 +85698.53400241025 +46264.3714021733 +40513.68626087997 +28665.636456110515 +19272.25219398178 +80029.14652559161 +73494.96003288962 +25307.048614135012 +55617.42468752153 +31379.311635325663 +23615.60526432097 +16500.074444842525 +62209.71554545965 +-25892.62445427198 +47405.74171467498 +24823.686764296144 +24354.421102667227 +18844.03635853529 +28898.71918290481 +55693.07231614273 +51212.68624102976 +36608.18294813298 +29213.26556858793 +47261.879106781445 +51349.10318147112 +81238.0598756047 +26208.17699859664 +20776.439954058267 +38692.611061521806 +64426.94857559353 +44767.33661440108 +80125.30019118357 +1418.6452489402145 +65533.15173010528 +30339.92046280764 +38348.07170968875 +29159.42077086307 +62853.21872015763 +62396.33066977002 +67651.91663754638 +9777.211144330911 +90185.1794512393 +33725.921425156295 +-28633.12707788963 +106887.68385958392 +76779.81438929029 +22186.083374262787 +196426.5788040124 +53668.485874710605 +20215.681355225854 +49520.61151607148 +37178.03788051568 +-27344.347247077152 +24311.94748883415 +54037.43143481389 +107725.88195839524 +18712.264155481942 +27476.256763670594 +95891.13248797879 +-10095.402670574374 +95183.02193162031 +74380.64182520658 +69729.0100582866 +61291.62616452854 +29958.994387377985 +98517.4757082574 +15345.67665677052 +82047.77843558509 +13459.283804669045 +71781.86949940119 +3895.510728508234 +68185.07850659173 +45746.109937132336 +76472.88152410462 +70358.58464681078 +31463.779435116798 +-522.2450961889699 +13655.342629695311 +6540.140040666796 +48452.47663105652 +21200.601224657148 +69121.45597999636 +72862.05669909623 +53251.78291203268 +57619.31655791029 +13720.454462939873 +30357.589900606312 +20070.434680682607 +6026.564726352692 +18511.09908992611 +-9642.379549495876 +5139.908695930615 +55271.90091335308 +138658.87484608777 +87248.91662806645 +4984.012310422026 +42858.99492612388 +42955.76447070297 +-25442.758968614973 +57774.87164598517 +20973.138293196447 +-1709.7208965308964 +2837.355438085273 +75662.62936337385 +38286.54349799361 +95919.2683195332 +66880.41137494985 +85506.46884370316 +57042.356323936954 +50228.498584065586 +91832.89683811739 +31367.592368908226 +66899.7025368996 +-3156.2411906104535 +59106.573833738454 +-18113.379680061713 +61856.068615119904 +73403.71741865762 +15847.220088480972 +9605.839057260193 +39437.74395921826 +67353.19472829252 +20024.456838063896 +1248.1196156721562 +25698.745711662807 +75565.8883991167 +16789.275970487855 +49241.74687548634 +65301.92857274879 +68921.70085334871 +129748.73953047208 +53420.41295995936 +5720.264478171244 +28892.60365916323 +72123.7740158476 +45560.391365300864 +64241.27728420962 +17410.872121089138 +35750.7359077977 +14783.40418153815 +-45085.74612785131 +26248.065339984372 +59500.16631332971 +48483.334873553365 +19907.735418798402 +80.8889871025458 +58338.89848638233 +46505.30818598252 +44274.77598995622 +27615.635385096073 +23818.888935829513 +55055.76290636137 +43443.55647275597 +201641.01407666877 +18485.751447015442 +-16156.51682063099 +58552.151310914196 +41653.40743792895 +17495.367500457913 +41891.673930719495 +51666.49416804593 +12237.40351834707 +73580.19923918229 +-628.547349087894 +134770.75069484767 +91510.48462769575 +127.71001796983182 +27778.934168556705 +1182.5686871521175 +31943.869887200184 +675.2742228610441 +69719.708772799 +27013.92264054343 +42141.101286510006 +-5269.886241068132 +23093.716240475886 +26278.802688157186 +36395.1042091595 +23286.500355174765 +51525.06325628329 +36019.025691036135 +61173.10393671505 +57702.514934462495 +57628.63477327768 +24984.8331889268 +28703.865716341883 +44814.40716794226 +63992.98676942196 +25751.14766599238 +59102.80903423391 +90941.84443226643 +91019.84877499007 +43865.07893445343 +54575.879395802505 +2787.708387400955 +47255.48661124427 +27165.63309828192 +37769.91511308495 +41292.75453564711 +19038.498129210435 +17499.841608772986 +12015.941934735514 +90985.38709776755 +51847.23765675258 +34356.90502989013 +9818.141726548783 +90416.98135473393 +28048.20322550647 +36281.317157958634 +33291.1549162101 +81097.62247399427 +32205.562100593 +47623.49247353338 +-34890.493592597544 +40158.396536516026 +19170.974231429398 +119529.81640180852 +76608.88618412055 +52509.17715535499 +67067.29509076662 +32530.06992602069 +39479.76299616322 +-5972.637828195468 +12381.89070927538 +13931.142802364193 +11493.373149446212 +55250.634068088606 +48871.00563454721 +3333.588461149484 +-15323.786659969948 +96171.60391053185 +-468.87689177691936 +72417.8916010093 +211.4653445649892 +34486.45974811539 +97899.02051875647 +43675.38195410557 +25304.914110879414 +52378.97079492733 +61404.54796032421 +99580.53200831637 +35457.30905956961 +-14177.693808197044 +16163.671350804158 +-27059.904063325375 +23126.50780562032 +54194.942075183615 +8252.690969340503 +37064.802616013214 +-9206.328672162257 +61546.1588977715 +129410.98783620168 +50148.079193615355 +62257.99939151108 +983.1021162867546 +43179.38464327343 +59715.69380046986 +-2148.4351013395935 +-1092.412600965239 +56671.850903107785 +15205.978087062016 +23850.61294241529 +-766.4864422949031 +30596.574847116135 +81036.80031112954 +106151.23936689459 +17925.02038027253 +2842.7263529254124 +84794.73981387168 +1098.9009540900588 +29001.413007454015 +21878.96484078467 +5639.143488034606 +27765.77072320413 +23041.0599488616 +94404.94189140946 +64512.61131222639 +720.9846180593595 +50187.38548726868 +53391.71280632075 +45518.59479695745 +57871.94319804665 +17855.36469121836 +61013.35067343153 +-28439.219685996883 +46730.54354104493 +76814.17817299534 +5511.400801290758 +71709.95657417085 +45335.71888818033 +-11533.201526128687 +-40403.27948828135 +33312.08323421609 +14093.53121202346 +16659.254880359396 +27512.941560546868 +110034.87872561999 +30124.54258063063 +47260.61645121779 +30592.859552721493 +34368.224743699655 +-32654.344269393943 +44842.5891895229 +-23410.17929270398 +38028.38357334677 +35564.08315815125 +39112.51280849613 +55143.172658214346 +10586.257871332578 +-23469.68831621483 +21379.925245995633 +43556.408470784314 +19513.282892018557 +23776.011781650595 +40001.42729707528 +-58294.16684230976 +63741.73044738732 +50496.46495352406 +8120.256854983978 +74076.94059285801 +60869.064311273396 +28961.644793367945 +14874.865745686926 +61446.99150388315 +8438.632867381908 +-5477.731702485122 +38317.18026154209 +174650.0611164132 +-14201.754236491397 +22005.388873658143 +81696.08685605321 +64399.164230428636 +20911.70806506183 +-10685.827435955405 +10042.483693844639 +63661.77961920481 +17100.757918481715 +25686.30313288886 +4737.575191321783 +30614.153100557625 +38752.08361009788 +59122.27509140223 +74645.00543723162 +-4639.060389993712 +61789.844538805075 +76892.72804903705 +7394.002196641639 +40876.48964179028 +28525.463216950186 +16776.359589093365 +8696.456508108415 +80303.42084200587 +59715.69380046986 +37858.360939515755 +30856.83591858577 +6658.696173200384 +39325.87257574778 +27287.875502670184 +69719.708772799 +48219.69299719855 +-4182.309222256765 +59713.66255523171 +93795.66836097557 +24446.948723488487 +50100.77611069847 +54485.79400852788 +76728.802496396 +6107.0109089827165 +46668.38816079218 +60593.49744424317 +17087.006489022635 +-7661.021344721317 +49759.789041421376 +24212.72770537529 +41361.640030906536 +66560.04484920297 +41808.50861588307 +6305.1779101695865 +40368.17126793321 +34129.86663609743 +67245.40277873352 +22086.38735173084 +24401.915299735032 +31996.863042736426 +34786.37925450783 +30608.610851461068 +58746.09120202903 +64334.447569352575 +60408.45224256348 +13117.881779099815 +51525.71067332104 +23556.568971268833 +-4981.753738196567 +22126.561542616226 +16591.972265043296 +-7523.370851671323 +45399.45028378256 +23377.32258269936 +-13211.281686507165 +23421.005544373766 +23634.82139672991 +32799.038470855914 +17677.886629197747 +72048.2081567822 +52073.47633188777 +37792.60108499788 +38817.936546101235 +11275.90000622347 +99581.11236409843 +45846.35391409788 +128465.5193345137 +64386.08046918269 +76435.92646458652 +37323.75057631545 +28341.00085479021 +63242.433369410224 +19627.419674073346 +41980.91685589682 +82435.02517919242 +47098.595546829514 +53037.62605897058 +98027.10607977118 +11989.130698720925 +4968.69167955406 +28018.661474678665 +1472.962158887647 +26655.635271896608 +41332.02691884618 +-52729.94645769056 +40133.11378106661 +-14910.722484736703 +61455.28127997182 +82387.07895990368 +53407.59148980491 +30966.220994387753 +81238.0598756047 +52.834144320338964 +28730.710397414863 +42977.086478125304 +-13967.678577812389 +19111.577178705484 +46297.52610401064 +91251.11618757434 +62018.50714983791 +118893.91440487187 +96772.13261020463 +63100.2184169963 +24200.897425288334 +-13270.045485515147 +29973.89478053432 +19163.368353920057 +27931.897998134606 +30727.615075103007 +91974.88024553377 +81320.23617355805 +2595.354744438082 +31789.803274318576 +74920.75935903192 +79736.28268335946 +99063.65145199932 +37220.21025215089 +16711.082362357527 +16850.742732789367 +61040.70704906434 +45796.938174749725 +30905.143828302622 +58921.31328232307 +17107.83483374864 +40176.60411376227 +68556.26533077378 +82918.25202875305 +62729.973313945346 +58316.8671504464 +-6056.797731170431 +-12741.115683325566 +31002.397136197425 +90231.90399340447 +43549.810913872905 +73982.2004722245 +65229.05356028397 +-11211.658687369898 +8557.37978872098 +89478.20954177529 +31576.890884393826 +38469.99844426289 +11570.175318445079 +-4165.393303238787 +36045.57948326785 +66443.53876024764 +71639.75666939653 +22160.17904639989 +22254.84027844947 +22366.090174341574 +6022.6350794341415 +62019.25081765652 +41278.66138849873 +85489.08940865379 +70189.63829159085 +21879.269146430306 +22904.754782994278 +73886.55254525878 +76768.31108188722 +7964.912340279669 +57887.951589656994 +75408.94177111704 +49944.632001710124 +43781.47452866007 +50167.17666941602 +38184.89373192564 +1121.3175054658204 +77624.18711954635 +26161.994448414072 +7938.737553847954 +47213.171784784645 +78635.10591338016 +77433.56674453337 +6209.835708147846 +8927.775640217587 +16241.34897737857 +69194.24500857946 +79801.91550491471 +70350.04380907025 +41169.6022414146 +36762.7288568886 +8160.666808720678 +47339.67174228188 +48839.687407833524 +-25660.791946715675 +19654.832640307955 +73326.34135109838 +75456.21937478334 +44299.368956142105 +120124.07605633978 \ No newline at end of file