Newer
Older
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"jupyter": {
"source_hidden": true
}
},
"outputs": [
{
"data": {
"image/svg+xml": [
"<svg viewBox=\"0 0 319.482 36.2319\" xmlns=\"http://www.w3.org/2000/svg\"><title>00-fidle-header-01</title><g data-name=\"Calque 2\" id=\"Calque_2\"><g data-name=\"Calque 4\" id=\"Calque_4\"><path d=\"M19.6212,13.4825a5.49,5.49,0,0,0,2.2409-.7517,2.75,2.75,0,0,1,1.0037-.3925A6.2169,6.2169,0,0,0,20.4184,5.353a7.2454,7.2454,0,0,0-5.0435-.8518,10.436,10.436,0,0,0-4.3281,2.2353c-.4328.3626-5.581,5.2428-7.7283,4.27C1.8658,10.3486,4.46,7.9537,3.27,5.7652a.0949.0949,0,0,0-.1584-.0105c-.6056.817-1.1976,1.7975-2.0041,1.3573A3.7988,3.7988,0,0,1,.1729,5.89.0941.0941,0,0,0,0,5.9434a9.9185,9.9185,0,0,0,2.4932,6.0532,15.0278,15.0278,0,0,0,10.339,5.3173c2.27.2261,7.6543-.49,9.8054-4.36a5.4574,5.4574,0,0,0-.5189.2577,6.04,6.04,0,0,1-2.448.8142c-.0748.0069-.1491.01-.2234.01a4.3218,4.3218,0,0,1-2.44-.9782.4573.4573,0,1,1,.3495-.4436l-.0023.0218A3.5637,3.5637,0,0,0,19.6212,13.4825ZM12.76,15.5084a8.3323,8.3323,0,0,1-1.9609.3562c-.4428,0-.627-.1255-.7147-.314-.2306-.4961.6005-1.2133,1.3378-1.7279a.2726.2726,0,0,1,.312.4472,4.4932,4.4932,0,0,0-1.1262,1.0351,5.352,5.352,0,0,0,2.0105-.3235.2728.2728,0,0,1,.1415.5269ZM19.0763,8.863a1.0412,1.0412,0,0,1,1.0109,1.0032.68.68,0,1,0-.6023.9942.7023.7023,0,0,0,.1263-.0126.9691.9691,0,0,1-.5349.1646,1.0763,1.0763,0,0,1,0-2.1494ZM15.5649,1.8843a.5453.5453,0,0,0,.2143.7407c.2638.1453.82-.1708,1.1567.3.1751.2449-.3665-1.11-.63-1.2554A.5449.5449,0,0,0,15.5649,1.8843Zm2.7777.0584c-.68.3984-.8055,2.0455-.63,1.8007a3.1,3.1,0,0,1,1.1567-.8456.5453.5453,0,0,0-.5264-.9551ZM17.6534.1266c-.3475.402-.11,1.4443-.0473,1.2532a2.216,2.216,0,0,1,.5595-.7875.3573.3573,0,0,0-.0087-.505A.3538.3538,0,0,0,17.6534.1266Z\" style=\"fill:#e12229\"/><path d=\"M1.2153,20.5941H4.63v.41H1.6973v2.748H4.3838v.41H1.6973v3.3427h-.482Z\" style=\"fill:#808285\"/><path d=\"M6.4356,20.5941v6.9111h-.482V20.5941Z\" style=\"fill:#808285\"/><path d=\"M8.1172,20.6864a11.3584,11.3584,0,0,1,1.7637-.1436,3.746,3.746,0,0,1,2.789.9434,3.2687,3.2687,0,0,1,.8614,2.3891,3.8064,3.8064,0,0,1-.9024,2.625A3.97,3.97,0,0,1,9.645,27.5565a14.7622,14.7622,0,0,1-1.5278-.0615Zm.4819,6.4087a8.71,8.71,0,0,0,1.1177.0512,2.96,2.96,0,0,0,3.312-3.24c.01-1.7534-.9638-2.9531-3.1787-2.9531a7.3436,7.3436,0,0,0-1.251.1025Z\" style=\"fill:#808285\"/><path d=\"M14.7525,20.5941h.4819v6.501h3.0864v.41H14.7525Z\" style=\"fill:#808285\"/><path d=\"M22.5977,24.07H19.8291v3.0249h3.0967v.41H19.3472V20.5941h3.4145v.41H19.8291V23.66h2.7686Z\" style=\"fill:#808285\"/><path d=\"M39.1846,4.6615h5.874v1.26H40.6753V9.9676h4.064V11.21h-4.064v5.4126H39.1846Z\"/><path d=\"M53.521,12.2748c0,3.2119-2.0054,4.5249-3.8506,4.5249-2.0942,0-3.727-1.6148-3.727-4.4185,0-2.9458,1.7568-4.5254,3.8511-4.5254C51.9771,7.8558,53.521,9.5418,53.521,12.2748Zm-6.0513.0708c0,1.7392.834,3.3183,2.2715,3.3183,1.4019,0,2.2539-1.5971,2.2539-3.354,0-1.4194-.5859-3.3-2.2539-3.3C48.1084,9.01,47.47,10.8016,47.47,12.3456Z\"/><path d=\"M55.3457,10.5711c0-.9228-.0356-1.7749-.0708-2.5376h1.3306l.0532,1.5791h.0537A2.453,2.453,0,0,1,58.93,7.8558a2.6754,2.6754,0,0,1,.3906.0357v1.455a1.8691,1.8691,0,0,0-.4614-.0356,2.0647,2.0647,0,0,0-1.9522,1.9346,3.2233,3.2233,0,0,0-.0708.7451v4.6318H55.3457Z\"/><path d=\"M60.7212,10.3226c0-.9228-.0356-1.58-.0708-2.2891h1.313l.0889,1.2955h.0351a2.6984,2.6984,0,0,1,2.4668-1.4732A2.3119,2.3119,0,0,1,66.7905,9.453h.0352a3.1059,3.1059,0,0,1,.94-1.065,2.5775,2.5775,0,0,1,1.6685-.5322c1.1533,0,2.6084.7808,2.6084,3.5137v5.2529H70.57V11.618c0-1.5083-.479-2.52-1.6684-2.52a1.8265,1.8265,0,0,0-1.668,1.3667,2.6842,2.6842,0,0,0-.1064.7808v5.3769H65.6548V11.3343c0-1.2422-.48-2.2363-1.6152-2.2363a1.9171,1.9171,0,0,0-1.7388,1.5083,2.6355,2.6355,0,0,0-.1064.7632v5.2529H60.7212Z\"/><path d=\"M78.7471,16.6224l-.1245-1.0293h-.0532A2.7825,2.7825,0,0,1,76.209,16.8,2.36,2.36,0,0,1,73.76,14.3334c0-2.0943,1.81-3.1768,4.72-3.1592v-.2129c0-.834-.2305-1.9873-1.792-1.97a3.6265,3.6265,0,0,0-1.9878.5859l-.3369-1.0293a5.0226,5.0226,0,0,1,2.5908-.6924c2.36,0,3.0166,1.5972,3.0166,3.39V14.6a14.2117,14.2117,0,0,0,.1245,2.0229Zm-.2485-4.4009c-1.3843-.018-3.23.23-3.23,1.9522a1.3139,1.3139,0,0,0,1.331,1.49A1.8733,1.8733,0,0,0,78.4453,14.28a1.5813,1.5813,0,0,0,.0533-.497Z\"/><path d=\"M84.0322,5.62V8.0335h2.0586V9.1869H84.0322v4.7558c0,1.0825.32,1.5972,1.0826,1.5972a3.0007,3.0007,0,0,0,.7988-.0889l.0708,1.1358a3.3086,3.3086,0,0,1-1.2778.1953,2.0439,2.0439,0,0,1-1.5791-.6211A3.1751,3.1751,0,0,1,82.542,13.96V9.1869H81.2993V8.0335H82.542V6.0282Z\"/><path d=\"M89.3369,5.6732a.8939.8939,0,0,1-.94.94.8716.8716,0,0,1-.8872-.94.9142.9142,0,1,1,1.8276,0ZM87.669,16.6224V8.0335h1.5083v8.5889Z\"/><path d=\"M98.5811,12.2748c0,3.2119-2.0054,4.5249-3.8506,4.5249-2.0943,0-3.7271-1.6148-3.7271-4.4185,0-2.9458,1.7569-4.5254,3.8511-4.5254C97.0371,7.8558,98.5811,9.5418,98.5811,12.2748Zm-6.0513.0708c0,1.7392.834,3.3183,2.2715,3.3183,1.4018,0,2.2539-1.5971,2.2539-3.354,0-1.4194-.5859-3.3-2.2539-3.3C93.1685,9.01,92.53,10.8016,92.53,12.3456Z\"/><path d=\"M100.4063,10.3226c0-.9228-.0357-1.58-.0708-2.2891h1.3305l.0713,1.2955h.0532a2.8837,2.8837,0,0,1,2.5733-1.4732c1.189,0,2.7329.7632,2.7329,3.46v5.3061H105.606V11.494c0-1.2778-.4258-2.396-1.7393-2.396a1.9934,1.9934,0,0,0-1.8633,1.5439,2.9606,2.9606,0,0,0-.0888.7457v5.2348h-1.5083Z\"/><path d=\"M114.4922,4.6615V16.6224h-1.4907V4.6615Z\"/><path d=\"M117.0816,10.3226c0-.9228-.0357-1.58-.0708-2.2891h1.3305l.0713,1.2955h.0532a2.8837,2.8837,0,0,1,2.5733-1.4732c1.1889,0,2.7329.7632,2.7329,3.46v5.3061h-1.4907V11.494c0-1.2778-.4263-2.396-1.7393-2.396a1.9934,1.9934,0,0,0-1.8633,1.5439,2.9606,2.9606,0,0,0-.0888.7457v5.2348h-1.5083Z\"/><path d=\"M127.8858,5.62V8.0335h2.0586V9.1869h-2.0586v4.7558c0,1.0825.32,1.5972,1.0825,1.5972a3,3,0,0,0,.7988-.0889l.0708,1.1358a3.3086,3.3086,0,0,1-1.2778.1953,2.044,2.044,0,0,1-1.5791-.6211,3.1751,3.1751,0,0,1-.5855-2.2007V9.1869h-1.2427V8.0335h1.2427V6.0282Z\"/><path d=\"M131.5225,10.5711c0-.9228-.0357-1.7749-.0708-2.5376h1.3305l.0533,1.5791h.0537a2.4529,2.4529,0,0,1,2.2178-1.7568,2.6767,2.6767,0,0,1,.3906.0357v1.455a1.87,1.87,0,0,0-.4615-.0356,2.0646,2.0646,0,0,0-1.9521,1.9346,3.2233,3.2233,0,0,0-.0708.7451v4.6318h-1.4907Z\"/><path d=\"M143.73,12.2748c0,3.2119-2.0054,4.5249-3.8506,4.5249-2.0942,0-3.727-1.6148-3.727-4.4185,0-2.9458,1.7568-4.5254,3.851-4.5254C142.1861,7.8558,143.73,9.5418,143.73,12.2748Zm-6.0513.0708c0,1.7392.834,3.3183,2.2715,3.3183,1.4019,0,2.2539-1.5971,2.2539-3.354,0-1.4194-.5859-3.3-2.2539-3.3C138.3174,9.01,137.6787,10.8016,137.6787,12.3456Z\"/><path d=\"M152.2988,4.1117V14.4574c0,.71.0352,1.5971.0708,2.165h-1.331l-.0708-1.3662h-.0532A2.7765,2.7765,0,0,1,148.3413,16.8c-1.8989,0-3.3364-1.7037-3.3364-4.3653,0-2.9282,1.6328-4.5786,3.4785-4.5786A2.4975,2.4975,0,0,1,150.7725,9.08h.0356V4.1117Zm-1.4907,7.3467a4.0759,4.0759,0,0,0-.0532-.6387,2.066,2.066,0,0,0-1.97-1.7569c-1.4732,0-2.2539,1.4727-2.2539,3.3008,0,1.7744.7451,3.2119,2.2182,3.2119a2.0693,2.0693,0,0,0,1.9873-1.7392,2.4285,2.4285,0,0,0,.0713-.6387Z\"/><path d=\"M161.24,14.28c0,.9048.0356,1.668.0713,2.3423h-1.3135l-.0889-1.26h-.0351A2.896,2.896,0,0,1,157.336,16.8c-1.4024,0-2.6978-.8692-2.6978-3.62V8.0335h1.4907V12.931c0,1.544.4258,2.6265,1.6861,2.6265a1.9727,1.9727,0,0,0,1.81-1.3487,2.6955,2.6955,0,0,0,.124-.7983V8.0335H161.24Z\"/><path d=\"M169.187,16.3382a5.0912,5.0912,0,0,1-2.165.4439c-2.36,0-3.94-1.6861-3.94-4.3653a4.2056,4.2056,0,0,1,4.2593-4.5429,4.4517,4.4517,0,0,1,1.8809.39l-.3369,1.1714a3.4208,3.4208,0,0,0-1.5616-.355c-1.7924,0-2.7153,1.5259-2.7153,3.2652,0,2.0053,1.1182,3.2119,2.6973,3.2119a3.8423,3.8423,0,0,0,1.6328-.355Z\"/><path d=\"M172.8755,5.62V8.0335h2.0586V9.1869h-2.0586v4.7558c0,1.0825.32,1.5972,1.0825,1.5972a3.0016,3.0016,0,0,0,.7989-.0889l.0708,1.1358a3.31,3.31,0,0,1-1.2774.1953,2.0446,2.0446,0,0,1-1.58-.6211,3.1751,3.1751,0,0,1-.5854-2.2007V9.1869h-1.2422V8.0335h1.2422V6.0282Z\"/><path d=\"M178.18,5.6732a.894.894,0,0,1-.94.94.8716.8716,0,0,1-.8872-.94.9142.9142,0,1,1,1.8276,0Zm-1.668,10.9492V8.0335H178.02v8.5889Z\"/><path d=\"M187.4238,12.2748c0,3.2119-2.0053,4.5249-3.8505,4.5249-2.0943,0-3.7271-1.6148-3.7271-4.4185,0-2.9458,1.7568-4.5254,3.8511-4.5254C185.88,7.8558,187.4238,9.5418,187.4238,12.2748Zm-6.0512.0708c0,1.7392.834,3.3183,2.2715,3.3183,1.4018,0,2.2539-1.5971,2.2539-3.354,0-1.4194-.586-3.3-2.2539-3.3C182.0112,9.01,181.3726,10.8016,181.3726,12.3456Z\"/><path d=\"M189.249,10.3226c0-.9228-.0356-1.58-.0708-2.2891h1.3306L190.58,9.329h.0532a2.8837,2.8837,0,0,1,2.5733-1.4732c1.1889,0,2.7329.7632,2.7329,3.46v5.3061h-1.4908V11.494c0-1.2778-.4257-2.396-1.7392-2.396a1.9933,1.9933,0,0,0-1.8633,1.5439,2.96,2.96,0,0,0-.0889.7457v5.2348H189.249Z\"/><path d=\"M206.14,16.6224l-.1245-1.0293h-.0533a2.7822,2.7822,0,0,1-2.36,1.2066,2.36,2.36,0,0,1-2.4488-2.4663c0-2.0943,1.81-3.1768,4.72-3.1592v-.2129c0-.834-.2305-1.9873-1.792-1.97a3.6265,3.6265,0,0,0-1.9878.5859l-.3369-1.0293a5.0226,5.0226,0,0,1,2.5908-.6924c2.36,0,3.0166,1.5972,3.0166,3.39V14.6a14.197,14.197,0,0,0,.1245,2.0229Zm-.2486-4.4009c-1.3842-.018-3.23.23-3.23,1.9522a1.314,1.314,0,0,0,1.3311,1.49,1.8733,1.8733,0,0,0,1.8457-1.3838,1.5842,1.5842,0,0,0,.0532-.497Z\"/><path d=\"M216.27,14.28c0,.9048.0357,1.668.0713,2.3423h-1.3134l-.0889-1.26h-.0352A2.8958,2.8958,0,0,1,212.3657,16.8c-1.4023,0-2.6977-.8692-2.6977-3.62V8.0335h1.4907V12.931c0,1.544.4258,2.6265,1.686,2.6265a1.9728,1.9728,0,0,0,1.81-1.3487,2.6955,2.6955,0,0,0,.124-.7983V8.0335H216.27Z\"/><path d=\"M222.2105,4.8211a16.8343,16.8343,0,0,1,2.8574-.248,5.9353,5.9353,0,0,1,4.2236,1.3306,5.6506,5.6506,0,0,1,1.668,4.4546,6.55,6.55,0,0,1-1.6328,4.7734,6.4641,6.4641,0,0,1-4.6846,1.58,19.2072,19.2072,0,0,1-2.4316-.1245Zm1.4907,10.6123a8.6866,8.6866,0,0,0,1.2422.0709c2.7685,0,4.4546-1.6148,4.4546-5.0928.0175-2.8926-1.3843-4.6319-4.2417-4.6319a7.5143,7.5143,0,0,0-1.4551.1241Z\"/><path d=\"M233.76,12.5584c.0351,2.2715,1.2773,3.0523,2.6616,3.0523a5.0475,5.0475,0,0,0,2.0942-.4082l.2662,1.0825a6.2363,6.2363,0,0,1-2.5733.4971c-2.4668,0-3.9043-1.7393-3.9043-4.33,0-2.644,1.4375-4.5962,3.709-4.5962,2.4844,0,3.1943,2.2715,3.1943,3.9575a7.0383,7.0383,0,0,1-.0356.7451Zm4.01-1.0825c.0181-1.2065-.479-2.5195-1.8989-2.5195-1.3838,0-1.9873,1.4019-2.0937,2.5195Z\"/><path d=\"M241.92,12.5584c.0352,2.2715,1.2774,3.0523,2.6616,3.0523a5.0484,5.0484,0,0,0,2.0943-.4082l.2661,1.0825a6.2354,6.2354,0,0,1-2.5732.4971c-2.4668,0-3.9043-1.7393-3.9043-4.33,0-2.644,1.4375-4.5962,3.7089-4.5962,2.4844,0,3.1944,2.2715,3.1944,3.9575a7.0326,7.0326,0,0,1-.0357.7451Zm4.01-1.0825c.018-1.2065-.479-2.5195-1.8989-2.5195-1.3838,0-1.9873,1.4019-2.0938,2.5195Z\"/><path d=\"M249.1753,10.8016c0-1.1709-.0356-2.0229-.0708-2.7681h1.3486l.0708,1.3487h.0357a2.9637,2.9637,0,0,1,2.68-1.5264c1.8989,0,3.3008,1.7036,3.3008,4.3833,0,3.1235-1.7217,4.5606-3.5318,4.5606a2.5778,2.5778,0,0,1-2.3066-1.2422h-.0357V20.1h-1.4907Zm1.4907,2.4312a2.5721,2.5721,0,0,0,.0708.6567,2.0817,2.0817,0,0,0,2.0054,1.7212c1.5083,0,2.2715-1.4194,2.2715-3.3184,0-1.7392-.7451-3.2119-2.2359-3.2119a2.2068,2.2068,0,0,0-2.0229,1.81,2.64,2.64,0,0,0-.0889.6387Z\"/><path d=\"M261.9126,4.6615h1.4907V15.3626H268v1.26h-6.0869Z\"/><path d=\"M270.1807,12.5584c.0351,2.2715,1.2773,3.0523,2.6616,3.0523a5.0475,5.0475,0,0,0,2.0942-.4082l.2662,1.0825a6.2363,6.2363,0,0,1-2.5733.4971c-2.4668,0-3.9043-1.7393-3.9043-4.33,0-2.644,1.4375-4.5962,3.709-4.5962,2.4844,0,3.1943,2.2715,3.1943,3.9575a7.0383,7.0383,0,0,1-.0356.7451Zm4.01-1.0825c.0181-1.2065-.479-2.5195-1.8989-2.5195-1.3838,0-1.9873,1.4019-2.0937,2.5195Z\"/><path d=\"M281.8013,16.6224l-.1245-1.0293h-.0532a2.7825,2.7825,0,0,1-2.36,1.2066,2.36,2.36,0,0,1-2.4487-2.4663c0-2.0943,1.81-3.1768,4.72-3.1592v-.2129c0-.834-.2305-1.9873-1.792-1.97a3.6265,3.6265,0,0,0-1.9878.5859l-.3369-1.0293a5.0226,5.0226,0,0,1,2.5908-.6924c2.36,0,3.0166,1.5972,3.0166,3.39V14.6a14.2117,14.2117,0,0,0,.1245,2.0229Zm-.2485-4.4009c-1.3843-.018-3.23.23-3.23,1.9522a1.3139,1.3139,0,0,0,1.331,1.49A1.8733,1.8733,0,0,0,281.5,14.28a1.5813,1.5813,0,0,0,.0533-.497Z\"/><path d=\"M285.3653,10.5711c0-.9228-.0357-1.7749-.0708-2.5376h1.33l.0532,1.5791h.0538A2.4528,2.4528,0,0,1,288.95,7.8558a2.6754,2.6754,0,0,1,.3906.0357v1.455a1.8683,1.8683,0,0,0-.4614-.0356,2.0645,2.0645,0,0,0-1.9521,1.9346,3.2233,3.2233,0,0,0-.0708.7451v4.6318h-1.4907Z\"/><path d=\"M290.7407,10.3226c0-.9228-.0356-1.58-.0708-2.2891h1.3306l.0713,1.2955h.0532a2.8837,2.8837,0,0,1,2.5733-1.4732c1.1889,0,2.7329.7632,2.7329,3.46v5.3061H295.94V11.494c0-1.2778-.4262-2.396-1.7392-2.396a1.9933,1.9933,0,0,0-1.8633,1.5439,2.96,2.96,0,0,0-.0889.7457v5.2348h-1.5083Z\"/><path d=\"M301.4561,5.6732a.894.894,0,0,1-.94.94.8717.8717,0,0,1-.8872-.94.9142.9142,0,1,1,1.8277,0Zm-1.668,10.9492V8.0335h1.5083v8.5889Z\"/><path d=\"M303.6734,10.3226c0-.9228-.0357-1.58-.0708-2.2891h1.3305l.0713,1.2955h.0532a2.8837,2.8837,0,0,1,2.5733-1.4732c1.1889,0,2.7329.7632,2.7329,3.46v5.3061h-1.4907V11.494c0-1.2778-.4263-2.396-1.7393-2.396a1.9934,1.9934,0,0,0-1.8633,1.5439,2.9606,2.9606,0,0,0-.0888.7457v5.2348h-1.5083Z\"/><path d=\"M319.482,8.0335c-.0357.6031-.0709,1.3306-.0709,2.4488v4.9336c0,2.0761-.373,3.1587-1.1,3.8686a4.0969,4.0969,0,0,1-2.8745.9937,4.9764,4.9764,0,0,1-2.5733-.6211l.355-1.1538a4.4973,4.4973,0,0,0,2.2534.5859c1.4375,0,2.4668-.7808,2.4668-2.8926v-.9228h-.0356a2.65,2.65,0,0,1-2.4131,1.313c-1.9522,0-3.3189-1.7744-3.3189-4.2056,0-2.9814,1.7569-4.5254,3.5318-4.5254a2.5526,2.5526,0,0,1,2.36,1.3667h.0357l.0532-1.189ZM317.92,11.2811a2.8078,2.8078,0,0,0-.0713-.6748,2.0058,2.0058,0,0,0-1.9165-1.5435c-1.331,0-2.2358,1.2774-2.2358,3.2471,0,1.8281.7983,3.1235,2.2183,3.1235a1.9791,1.9791,0,0,0,1.8989-1.5083,3.0968,3.0968,0,0,0,.1064-.7988Z\"/><line style=\"fill:#58595b\" x1=\"30.9665\" x2=\"30.9665\" y1=\"4.4557\" y2=\"27.3725\"/><path d=\"M39.5318,26.3089a1.7029,1.7029,0,0,0,.9038.273A.9567.9567,0,0,0,41.5,25.6087c0-.5253-.28-.8408-.8613-1.1069-.5884-.2451-1.1138-.6372-1.1138-1.3027a1.1968,1.1968,0,0,1,1.2886-1.1836,1.5069,1.5069,0,0,1,.84.21l-.126.273a1.3156,1.3156,0,0,0-.7421-.21.846.846,0,0,0-.9385.84c0,.539.3008.7915.8965,1.0712.707.3506,1.0786.7217,1.0786,1.3731a1.2716,1.2716,0,0,1-1.4009,1.2886,1.85,1.85,0,0,1-1.0088-.2871Z\"/><path d=\"M45.2383,25.097c0,1.2471-.75,1.772-1.4287,1.772-.75,0-1.3731-.6231-1.3731-1.7295,0-1.1768.68-1.772,1.4219-1.772C44.65,23.3675,45.2383,24.0047,45.2383,25.097Zm-2.4722.0283c0,.75.4063,1.4707,1.0645,1.4707s1.0786-.7211,1.0786-1.4917c0-.5883-.2734-1.4638-1.0649-1.4638C43.0742,23.6405,42.7661,24.453,42.7661,25.1253Z\"/><path d=\"M46.0274,24.3758c0-.3081-.0137-.6445-.0279-.9384h.3013l.0142.6445h.0136a.9865.9865,0,0,1,.89-.7144.57.57,0,0,1,.1118.0069v.3222a.65.65,0,0,0-.126-.0073c-.4551,0-.7632.4136-.8335.9107a2.2667,2.2667,0,0,0-.021.3081v1.8911h-.3222Z\"/><path d=\"M49.5567,26.7992l-.0425-.4483h-.021a1.08,1.08,0,0,1-.9385.5181.88.88,0,0,1-.9175-.9243c0-.7842.6656-1.2256,1.8491-1.2188v-.0981c0-.4063-.07-.9873-.7773-.9873a1.3175,1.3175,0,0,0-.7354.2241l-.0981-.2383a1.6033,1.6033,0,0,1,.8823-.2588c.8125,0,1.0508.5879,1.0508,1.2534v1.3936a5.7383,5.7383,0,0,0,.042.7847Zm-.07-1.8c-.5883-.0142-1.5058.07-1.5058.9033a.6064.6064,0,0,0,.6094.6933.8715.8715,0,0,0,.8686-.6655.74.74,0,0,0,.0278-.2031Z\"/><path d=\"M50.69,23.4374l.77,2.15c.0913.2588.1679.5249.2241.7422h.0142c.0629-.21.1469-.476.2309-.7563l.7217-2.1362h.3428l-.8472,2.3183a5.9218,5.9218,0,0,1-1.0576,2.1782,2.1326,2.1326,0,0,1-.5606.3921l-.1259-.2729a1.7442,1.7442,0,0,0,.56-.4136,2.8488,2.8488,0,0,0,.49-.7915.5393.5393,0,0,0,.042-.1606.5.5,0,0,0-.0351-.14l-1.1138-3.11Z\"/><path d=\"M55.22,26.7992l-.0424-.4483h-.021a1.08,1.08,0,0,1-.9385.5181.88.88,0,0,1-.9175-.9243c0-.7842.6655-1.2256,1.8491-1.2188v-.0981c0-.4063-.07-.9873-.7773-.9873a1.3175,1.3175,0,0,0-.7354.2241l-.0981-.2383a1.6031,1.6031,0,0,1,.8823-.2588c.8125,0,1.0508.5879,1.0508,1.2534v1.3936a5.7383,5.7383,0,0,0,.042.7847Zm-.07-1.8c-.5883-.0142-1.5058.07-1.5058.9033a.6064.6064,0,0,0,.6093.6933.8716.8716,0,0,0,.8687-.6655.74.74,0,0,0,.0278-.2031Z\"/><path d=\"M58.418,25.1532l-.5186,1.646H57.57l1.5269-4.7207h.3154L60.94,26.7992h-.33l-.5322-1.646Zm1.5688-.273-.49-1.499a7.9831,7.9831,0,0,1-.2383-.91h-.021c-.063.3082-.14.5879-.2309.9034L58.5088,24.88Z\"/><path d=\"M61.63,24.3758c0-.3081-.0137-.6445-.0278-.9384h.3012l.0142.6445h.0137a.9865.9865,0,0,1,.89-.7144.57.57,0,0,1,.1118.0069v.3222a.6488.6488,0,0,0-.126-.0073c-.455,0-.7631.4136-.8335.9107a2.2669,2.2669,0,0,0-.0209.3081v1.8911H61.63Z\"/><path d=\"M63.9824,22.5057a.2576.2576,0,0,1-.2661.28.2536.2536,0,0,1-.2451-.28.2624.2624,0,0,1,.252-.28A.26.26,0,0,1,63.9824,22.5057Zm-.42,4.2935V23.4374h.3223v3.3618Z\"/><path d=\"M66.5806,26.7992l-.042-.4483h-.0215a1.08,1.08,0,0,1-.9385.5181.88.88,0,0,1-.9175-.9243c0-.7842.6656-1.2256,1.8492-1.2188v-.0981c0-.4063-.07-.9873-.7774-.9873a1.3172,1.3172,0,0,0-.7353.2241l-.0982-.2383a1.6034,1.6034,0,0,1,.8824-.2588c.8125,0,1.0507.5879,1.0507,1.2534v1.3936a5.7542,5.7542,0,0,0,.042.7847Zm-.07-1.8c-.5884-.0142-1.5059.07-1.5059.9033a.6064.6064,0,0,0,.6094.6933.8711.8711,0,0,0,.8686-.6655.7406.7406,0,0,0,.0279-.2031Z\"/><path d=\"M67.7061,26.3719a1.32,1.32,0,0,0,.6792.2173.6363.6363,0,0,0,.7217-.6377c0-.3428-.1822-.5532-.63-.7632-.4976-.2309-.8057-.5112-.8057-.9316a.9043.9043,0,0,1,.9736-.8892,1.1917,1.1917,0,0,1,.6866.2032l-.1333.2661a.9605.9605,0,0,0-.5952-.1963.5631.5631,0,0,0-.6094.5674c0,.3291.1963.476.6162.6865.4766.2168.8193.49.8193,1.0083a.9567.9567,0,0,1-1.0644.96,1.3757,1.3757,0,0,1-.7774-.2242Z\"/><path d=\"M69.7993,27.6815a9.6118,9.6118,0,0,0,.3638-1.4849l.4272-.07a8.7922,8.7922,0,0,1-.539,1.52Z\"/><path d=\"M74.7842,24.453H73.0894v2.0659h1.9048v.28H72.7671V22.0785h2.1221v.28h-1.8v1.814h1.6948Z\"/><path d=\"M75.707,24.3758c0-.3081-.0136-.6445-.0278-.9384h.3013l.0141.6445h.0137a.9865.9865,0,0,1,.89-.7144.57.57,0,0,1,.1118.0069v.3222a.65.65,0,0,0-.126-.0073c-.4551,0-.7632.4136-.8335.9107a2.2507,2.2507,0,0,0-.021.3081v1.8911H75.707Z\"/><path d=\"M78.0591,22.5057a.2576.2576,0,0,1-.2661.28.2535.2535,0,0,1-.2451-.28.2623.2623,0,0,1,.2519-.28A.26.26,0,0,1,78.0591,22.5057Zm-.42,4.2935V23.4374h.3223v3.3618Z\"/><path d=\"M81.0772,26.6659a1.8118,1.8118,0,0,1-.8472.1963,1.5146,1.5146,0,0,1-1.4712-1.7159,1.6209,1.6209,0,0,1,1.5762-1.7788,1.514,1.514,0,0,1,.7563.1822l-.1123.2729a1.38,1.38,0,0,0-.686-.1753c-.8125,0-1.2046.7217-1.2046,1.4849,0,.89.49,1.45,1.19,1.45a1.592,1.592,0,0,0,.7144-.168Z\"/><path d=\"M86.8462,24.5511c-.0425-.7143-.0981-1.541-.0845-2.0732h-.0278c-.147.5254-.3223,1.0718-.5674,1.7651l-.9033,2.5562H85.06L84.2124,24.32c-.2519-.7354-.4341-1.3028-.56-1.8418h-.021c-.0074.5674-.042,1.3515-.0913,2.1362l-.126,2.1851h-.3223l.3154-4.7207h.3711l.9107,2.6338c.2031.6162.3569,1.0712.4829,1.5546h.021c.1123-.4692.2661-.9106.4834-1.5478l.9248-2.6406H87l.2945,4.7207h-.3223Z\"/><path d=\"M89.9038,26.7992l-.042-.4483H89.84a1.08,1.08,0,0,1-.9384.5181.88.88,0,0,1-.9175-.9243c0-.7842.6655-1.2256,1.8491-1.2188v-.0981c0-.4063-.07-.9873-.7773-.9873a1.3175,1.3175,0,0,0-.7354.2241l-.0981-.2383a1.6031,1.6031,0,0,1,.8823-.2588c.8125,0,1.0508.5879,1.0508,1.2534v1.3936a5.7383,5.7383,0,0,0,.042.7847Zm-.07-1.8c-.5884-.0142-1.5058.07-1.5058.9033a.6064.6064,0,0,0,.6093.6933.8712.8712,0,0,0,.8687-.6655.74.74,0,0,0,.0278-.2031Z\"/><path d=\"M91.1621,21.8617h.3223v4.9375h-.3223Z\"/><path d=\"M94.9649,21.8617V26.05c0,.2172.0136.5463.0278.7495h-.294l-.0209-.5816h-.021a1.1045,1.1045,0,0,1-1.0508.6514c-.7212,0-1.2959-.6372-1.2959-1.7017,0-1.1484.63-1.8,1.352-1.8a1.0329,1.0329,0,0,1,.96.5459h.0142V21.8617Zm-.3291,2.8852a2.1212,2.1212,0,0,0-.021-.2871.9719.9719,0,0,0-.9248-.8193c-.6724,0-1.05.6655-1.05,1.499,0,.7564.3217,1.4565,1.0224,1.4565a.9822.9822,0,0,0,.9453-.84,1.07,1.07,0,0,0,.0284-.2661Z\"/><path d=\"M98.5488,25.097c0,1.2471-.7495,1.772-1.4287,1.772-.7495,0-1.373-.6231-1.373-1.7295,0-1.1768.68-1.772,1.4219-1.772C97.9605,23.3675,98.5488,24.0047,98.5488,25.097Zm-2.4721.0283c0,.75.4062,1.4707,1.0644,1.4707s1.0786-.7211,1.0786-1.4917c0-.5883-.2734-1.4638-1.0649-1.4638C96.3848,23.6405,96.0767,24.453,96.0767,25.1253Z\"/><path d=\"M99.3384,24.2357c0-.3433-.0137-.5391-.0278-.7983h.3012l.021.5463h.0142a1.1257,1.1257,0,0,1,1.0293-.6162c.3364,0,1.0508.189,1.0508,1.3238v2.1079h-.3223V24.7469c0-.5742-.189-1.1-.8193-1.1a.9326.9326,0,0,0-.8828.7495.9662.9662,0,0,0-.042.2945v2.1079h-.3223Z\"/><path d=\"M104.4,26.7992l-.0425-.4483h-.021a1.08,1.08,0,0,1-.9384.5181.88.88,0,0,1-.9175-.9243c0-.7842.6655-1.2256,1.8491-1.2188v-.0981c0-.4063-.07-.9873-.7773-.9873a1.3175,1.3175,0,0,0-.7354.2241l-.0981-.2383a1.6028,1.6028,0,0,1,.8823-.2588c.8125,0,1.0508.5879,1.0508,1.2534v1.3936a5.7383,5.7383,0,0,0,.042.7847Zm-.07-1.8c-.5884-.0142-1.5059.07-1.5059.9033a.6064.6064,0,0,0,.6094.6933.8717.8717,0,0,0,.8687-.6655.74.74,0,0,0,.0278-.2031Z\"/><path d=\"M108.0689,21.8617V26.05c0,.2172.0136.5463.0278.7495h-.2939l-.021-.5816h-.021a1.1045,1.1045,0,0,1-1.0508.6514c-.7212,0-1.2959-.6372-1.2959-1.7017,0-1.1484.63-1.8,1.352-1.8a1.0329,1.0329,0,0,1,.96.5459h.0142V21.8617Zm-.3291,2.8852a2.0459,2.0459,0,0,0-.0215-.2871.9714.9714,0,0,0-.9243-.8193c-.6724,0-1.05.6655-1.05,1.499,0,.7564.3217,1.4565,1.0224,1.4565a.9822.9822,0,0,0,.9453-.84,1.07,1.07,0,0,0,.0284-.2661Z\"/><path d=\"M111.6528,25.097c0,1.2471-.7495,1.772-1.4287,1.772-.75,0-1.373-.6231-1.373-1.7295,0-1.1768.68-1.772,1.4219-1.772C111.0645,23.3675,111.6528,24.0047,111.6528,25.097Zm-2.4721.0283c0,.75.4057,1.4707,1.0644,1.4707s1.0786-.7211,1.0786-1.4917c0-.5883-.2734-1.4638-1.0644-1.4638C109.4888,23.6405,109.1807,24.453,109.1807,25.1253Z\"/><path d=\"M111.9317,27.6815a9.6124,9.6124,0,0,0,.3637-1.4849l.4273-.07a8.7994,8.7994,0,0,1-.5391,1.52Z\"/><path d=\"M115.7681,22.0785h.3222v3.334c0,1.1-.5043,1.4565-1.1767,1.4565a1.5443,1.5443,0,0,1-.49-.084l.0629-.2729a1.0861,1.0861,0,0,0,.4131.0771c.5606,0,.8687-.2524.8687-1.2329Z\"/><path d=\"M117.188,25.055c0,1.1626.5532,1.5269,1.1489,1.5269a1.5525,1.5525,0,0,0,.8052-.1748l.084.2519a1.885,1.885,0,0,1-.9312.2032c-.8964,0-1.4292-.7-1.4292-1.6949,0-1.1064.5674-1.8,1.3589-1.8.9737,0,1.1695.9663,1.1695,1.4844a1.7348,1.7348,0,0,1-.0069.2031Zm1.87-.2588c.0069-.5747-.2309-1.1557-.8755-1.1557-.6372,0-.9243.63-.98,1.1557Z\"/><path d=\"M121.83,26.7992l-.0425-.4483h-.021a1.08,1.08,0,0,1-.9385.5181.8794.8794,0,0,1-.9174-.9243c0-.7842.6655-1.2256,1.8491-1.2188v-.0981c0-.4063-.07-.9873-.7774-.9873a1.3172,1.3172,0,0,0-.7353.2241l-.0982-.2383a1.6034,1.6034,0,0,1,.8824-.2588c.8125,0,1.0507.5879,1.0507,1.2534v1.3936a5.7542,5.7542,0,0,0,.042.7847Zm-.07-1.8c-.5884-.0142-1.5059.07-1.5059.9033a.6064.6064,0,0,0,.6094.6933.8717.8717,0,0,0,.8687-.6655.744.744,0,0,0,.0278-.2031Z\"/><path d=\"M123.0889,24.2357c0-.3433-.0137-.5391-.0278-.7983h.3012l.021.5463h.0142a1.1255,1.1255,0,0,1,1.0293-.6162c.3364,0,1.0508.189,1.0508,1.3238v2.1079h-.3223V24.7469c0-.5742-.189-1.1-.8193-1.1a.9327.9327,0,0,0-.8829.7495.9692.9692,0,0,0-.042.2945v2.1079h-.3222Z\"/><path d=\"M127.8423,24.7821v.28H126.19v-.28Z\"/><path d=\"M128.584,22.0785h.3223v4.4477h1.8911v.273H128.584Z\"/><path d=\"M133.6392,25.9725c0,.3223.0141.5816.0278.8267h-.2939l-.0284-.5254h-.0136a1.1575,1.1575,0,0,1-1.0157.5952c-.4624,0-1.03-.28-1.03-1.4077V23.4374h.3222v1.9541c0,.6933.1822,1.1977.7847,1.1977a.9653.9653,0,0,0,.8755-.6514,1.4307,1.4307,0,0,0,.0488-.3574v-2.143h.3223Z\"/><path d=\"M136.7466,26.6659a1.8111,1.8111,0,0,1-.8472.1963,1.5146,1.5146,0,0,1-1.4712-1.7159,1.6209,1.6209,0,0,1,1.5762-1.7788,1.5144,1.5144,0,0,1,.7564.1822l-.1123.2729a1.38,1.38,0,0,0-.6861-.1753c-.8125,0-1.2046.7217-1.2046,1.4849,0,.89.49,1.45,1.19,1.45a1.5915,1.5915,0,0,0,.7143-.168Z\"/><path d=\"M138.88,22.1346a4.5182,4.5182,0,0,1,.9033-.0908,1.5666,1.5666,0,0,1,1.1416.3848,1.2394,1.2394,0,0,1,.3506.9316,1.3833,1.3833,0,0,1-.2944.9175,1.6368,1.6368,0,0,1-1.2954.54,2.0535,2.0535,0,0,1-.4834-.042v2.024H138.88Zm.3223,2.3535a1.6865,1.6865,0,0,0,.49.0557,1.1055,1.1055,0,0,0,1.2539-1.1626c0-.6792-.4414-1.0576-1.1768-1.0576a2.5519,2.5519,0,0,0-.5673.0493Z\"/><path d=\"M143.523,26.7992l-.042-.4483H143.46a1.08,1.08,0,0,1-.9385.5181.88.88,0,0,1-.9175-.9243c0-.7842.6656-1.2256,1.8492-1.2188v-.0981c0-.4063-.07-.9873-.7774-.9873a1.3172,1.3172,0,0,0-.7353.2241l-.0982-.2383a1.6033,1.6033,0,0,1,.8823-.2588c.8125,0,1.0508.5879,1.0508,1.2534v1.3936a5.7542,5.7542,0,0,0,.042.7847Zm-.07-1.8c-.5884-.0142-1.5059.07-1.5059.9033a.6064.6064,0,0,0,.6094.6933.8711.8711,0,0,0,.8686-.6655.7406.7406,0,0,0,.0279-.2031Z\"/><path d=\"M144.7813,24.3758c0-.3081-.0137-.6445-.0279-.9384h.3013l.0142.6445h.0136a.9865.9865,0,0,1,.89-.7144.57.57,0,0,1,.1118.0069v.3222a.65.65,0,0,0-.126-.0073c-.4551,0-.7632.4136-.8335.9107a2.2667,2.2667,0,0,0-.021.3081v1.8911h-.3222Z\"/><path d=\"M149.1441,25.097c0,1.2471-.75,1.772-1.4288,1.772-.75,0-1.373-.6231-1.373-1.7295,0-1.1768.68-1.772,1.4219-1.772C148.5557,23.3675,149.1441,24.0047,149.1441,25.097Zm-2.4722.0283c0,.75.4058,1.4707,1.0644,1.4707s1.0787-.7211,1.0787-1.4917c0-.5883-.2735-1.4638-1.0645-1.4638C146.98,23.6405,146.6719,24.453,146.6719,25.1253Z\"/><path d=\"M152.2656,25.9725c0,.3223.0142.5816.0279.8267H152l-.0283-.5254h-.0137a1.1573,1.1573,0,0,1-1.0156.5952c-.4624,0-1.03-.28-1.03-1.4077V23.4374h.3223v1.9541c0,.6933.1821,1.1977.7847,1.1977a.9651.9651,0,0,0,.8754-.6514,1.4259,1.4259,0,0,0,.0489-.3574v-2.143h.3222Z\"/><path d=\"M153.7486,22.492v.9454h.8618v.2661h-.8618v2.22c0,.4341.1333.6655.4482.6655a.9511.9511,0,0,0,.33-.0493l.042.2524a1.0881,1.0881,0,0,1-.42.07.6635.6635,0,0,1-.5391-.2242,1.2231,1.2231,0,0,1-.1894-.7915v-2.143h-.5181v-.2661h.5181v-.8335Z\"/><path d=\"M155.2739,23.4374l.7706,2.15c.0913.2588.1679.5249.2241.7422h.0141c.063-.21.147-.476.231-.7563l.7217-2.1362h.3427l-.8471,2.3183a5.9234,5.9234,0,0,1-1.0576,2.1782,2.1342,2.1342,0,0,1-.5606.3921l-.126-.2729a1.7435,1.7435,0,0,0,.5606-.4136,2.8488,2.8488,0,0,0,.49-.7915.5425.5425,0,0,0,.042-.1606.5033.5033,0,0,0-.0351-.14l-1.1138-3.11Z\"/><path d=\"M160.9238,24.7821v.28H159.271v-.28Z\"/><path d=\"M165.88,26.659a2.5778,2.5778,0,0,1-1.0855.2032c-1.0224,0-2.0029-.6866-2.0029-2.3882a2.1666,2.1666,0,0,1,2.1362-2.4585,2.059,2.059,0,0,1,.9312.1753l-.105.28a1.9024,1.9024,0,0,0-.84-.1752c-1.0366,0-1.7862.7353-1.7862,2.164,0,1.3941.6934,2.1221,1.7583,2.1221a2.1044,2.1044,0,0,0,.9034-.189Z\"/><path d=\"M166.6143,26.7992V22.0785h.3081l1.5762,2.6826c.3359.5952.602,1.0928.8193,1.583l.0137-.0073c-.0489-.7144-.0557-1.2325-.0557-1.9888v-2.27h.3149v4.7207h-.3081l-1.562-2.6895a14.8192,14.8192,0,0,1-.8262-1.583l-.0141.0073c.042.6231.042,1.1343.042,1.9961v2.2691Z\"/><path d=\"M170.6528,22.1415a4.1574,4.1574,0,0,1,.9034-.0977,1.5722,1.5722,0,0,1,1.17.3779,1.2161,1.2161,0,0,1,.3223.8545,1.2421,1.2421,0,0,1-.8829,1.2329v.0137c.3785.1123.6026.4692.7144,1.0435a6.03,6.03,0,0,0,.3223,1.2329h-.336a6.8787,6.8787,0,0,1-.2871-1.1626c-.1333-.6792-.4136-.9805-1.0088-1.0015h-.5952v2.1641h-.3223Zm.3223,2.2343h.6026a1.0322,1.0322,0,0,0,1.1416-1.0434c0-.6934-.4483-1.0156-1.1768-1.0156a2.4105,2.4105,0,0,0-.5674.0561Z\"/><path d=\"M173.7608,26.3089a1.7029,1.7029,0,0,0,.9038.273.9567.9567,0,0,0,1.0644-.9732c0-.5253-.28-.8408-.8613-1.1069-.5884-.2451-1.1138-.6372-1.1138-1.3027a1.1968,1.1968,0,0,1,1.2886-1.1836,1.5069,1.5069,0,0,1,.84.21l-.1259.273a1.3162,1.3162,0,0,0-.7422-.21.846.846,0,0,0-.9385.84c0,.539.3013.7915.8965,1.0712.707.3506,1.0786.7217,1.0786,1.3731a1.2716,1.2716,0,0,1-1.4009,1.2886,1.85,1.85,0,0,1-1.0088-.2871Z\"/><path d=\"M176.3574,27.0794l1.9893-5.0708h.3218l-2.003,5.0708Z\"/><path d=\"M179.06,26.3089a1.7032,1.7032,0,0,0,.9038.273.9567.9567,0,0,0,1.0644-.9732c0-.5253-.28-.8408-.8613-1.1069-.5884-.2451-1.1137-.6372-1.1137-1.3027a1.1967,1.1967,0,0,1,1.2885-1.1836,1.5076,1.5076,0,0,1,.84.21l-.126.273a1.3162,1.3162,0,0,0-.7422-.21.8461.8461,0,0,0-.9385.84c0,.539.3013.7915.8965,1.0712.707.3506,1.0786.7217,1.0786,1.3731a1.2716,1.2716,0,0,1-1.4009,1.2886,1.8506,1.8506,0,0,1-1.0088-.2871Z\"/><path d=\"M182.7139,25.1532l-.5186,1.646h-.3291l1.5269-4.7207h.3154l1.5269,4.7207h-.33l-.5322-1.646Zm1.5688-.273-.49-1.499a7.9831,7.9831,0,0,1-.2383-.91h-.021c-.063.3082-.14.5879-.2309.9034l-.4976,1.5058Z\"/><path d=\"M185.94,22.1415a4.1574,4.1574,0,0,1,.9034-.0977,1.573,1.573,0,0,1,1.17.3779,1.2161,1.2161,0,0,1,.3223.8545,1.2421,1.2421,0,0,1-.8829,1.2329v.0137c.3785.1123.6026.4692.7144,1.0435a6.03,6.03,0,0,0,.3223,1.2329h-.336a6.9309,6.9309,0,0,1-.2871-1.1626c-.1333-.6792-.4136-.9805-1.0088-1.0015h-.5952v2.1641H185.94Zm.3223,2.2343h.6021a1.0324,1.0324,0,0,0,1.1421-1.0434c0-.6934-.4483-1.0156-1.1768-1.0156a2.4105,2.4105,0,0,0-.5674.0561Z\"/><path d=\"M189.5108,22.0785v4.7207h-.3223V22.0785Z\"/><path d=\"M190.0425,27.0794l1.9893-5.0708h.3217l-2.0029,5.0708Z\"/><path d=\"M192.8843,22.1415a5.6628,5.6628,0,0,1,1.0225-.0977,2.2048,2.2048,0,0,1,1.625.5459,2.3043,2.3043,0,0,1,.6093,1.7231,2.6826,2.6826,0,0,1-.5883,1.8492,2.3067,2.3067,0,0,1-1.7862.6723,7.2309,7.2309,0,0,1-.8823-.042Zm.3223,4.3847a5.0445,5.0445,0,0,0,.6025.0279c1.2676,0,1.9956-.7212,1.9956-2.2134a1.7565,1.7565,0,0,0-1.9116-2.0171,4.1658,4.1658,0,0,0-.6865.0561Z\"/><path d=\"M198.9473,24.453h-1.6948v2.0659h1.9047v.28H196.93V22.0785h2.1221v.28h-1.8v1.814h1.6948Z\"/><path d=\"M200.9282,26.7992l-1.4218-4.7207h.3359l.7427,2.4653c.1958.6445.3852,1.2891.5039,1.8423h.021a18.4512,18.4512,0,0,1,.5327-1.8423l.8052-2.4653h.3364l-1.5552,4.7207Z\"/><path d=\"M203.3213,22.0785h.3223v4.4477h1.8911v.273h-2.2134Z\"/><path d=\"M209.28,24.4037c0,1.6953-.8892,2.4653-1.8628,2.4653-.9946,0-1.8-.833-1.8-2.395,0-1.604.8335-2.4654,1.87-2.4654C208.4956,22.0086,209.28,22.849,209.28,24.4037Zm-3.3267.0634c0,1.0152.49,2.1289,1.4917,2.1289,1.0088,0,1.4991-1.0854,1.4991-2.1782,0-.9663-.4414-2.1362-1.4917-2.1362C206.3945,22.2816,205.9531,23.4164,205.9531,24.4671Z\"/><path d=\"M213.0806,26.617a3.1243,3.1243,0,0,1-1.19.231,1.9628,1.9628,0,0,1-1.4781-.5742,2.5346,2.5346,0,0,1-.6162-1.8,2.1931,2.1931,0,0,1,2.2129-2.4444,2.35,2.35,0,0,1,.9595.189l-.105.2734a1.968,1.968,0,0,0-.8682-.1752c-1.0859,0-1.8632.7353-1.8632,2.1152,0,1.4287.7353,2.1289,1.8071,2.1289a1.89,1.89,0,0,0,.8125-.1328V24.7259h-.9805V24.46h1.31Z\"/><line style=\"fill:none;stroke:#e6e7e8;stroke-miterlimit:10;stroke-width:0.25px\" x1=\"0.9591\" x2=\"318.4111\" y1=\"36.1069\" y2=\"36.1069\"/><circle cx=\"316.0167\" cy=\"24.4233\" r=\"2.4525\" style=\"fill:#fff\"/><path d=\"M316.0588,21.7158a2.68,2.68,0,0,1,2.7012,2.6964,2.5676,2.5676,0,0,1-.7706,1.8971,2.6614,2.6614,0,0,1-1.9306.7993,2.7128,2.7128,0,0,1-2.6916-2.6963,2.6375,2.6375,0,0,1,.7945-1.9115A2.5844,2.5844,0,0,1,316.0588,21.7158Zm.01.4864a2.0913,2.0913,0,0,0-1.5552.65,2.1532,2.1532,0,0,0-.66,1.56,2.236,2.236,0,0,0,2.2147,2.2053,2.1652,2.1652,0,0,0,1.57-.66,2.0638,2.0638,0,0,0,.6356-1.5457,2.2112,2.2112,0,0,0-2.2052-2.21Zm-1.2038,1.83a1.2035,1.2035,0,0,1,.4-.768,1.1766,1.1766,0,0,1,.7848-.272,1.3061,1.3061,0,0,1,1.0112.4092,1.4923,1.4923,0,0,1,.3755,1.05,1.4426,1.4426,0,0,1-.39,1.0327,1.3308,1.3308,0,0,1-1.0113.4117,1.2,1.2,0,0,1-.79-.2745,1.1664,1.1664,0,0,1-.4-.78h.6791q.024.4913.5923.4912a.535.535,0,0,0,.4574-.2456,1.3686,1.3686,0,0,0,.0146-1.3072.6073.6073,0,0,0-1.0642.2527h.1974l-.5344.5345-.5344-.5345Z\"/><path d=\"M299.4332,24.4109a2.3488,2.3488,0,0,1-.3325,1.1994,2.3808,2.3808,0,0,1-.8936.8844,2.5227,2.5227,0,0,1-1.2365.3252,2.486,2.486,0,0,1-2.14-1.21,2.4133,2.4133,0,0,1,0-2.4091,2.4865,2.4865,0,0,1,2.14-1.21,2.5217,2.5217,0,0,1,1.2365.3253,2.4316,2.4316,0,0,1,1.2261,2.094Z\" style=\"fill:#fff;fill-rule:evenodd\"/><path d=\"M296.9394,21.7338a2.7132,2.7132,0,0,1,1.9535.7827,2.5825,2.5825,0,0,1,.5923.864,2.88,2.88,0,0,1,.1974,1.0368,2.519,2.519,0,0,1-.7793,1.87,2.7958,2.7958,0,0,1-1.9639.8031,2.78,2.78,0,0,1-1.039-.2033,2.8325,2.8325,0,0,1-.8937-.59,2.69,2.69,0,0,1-.5922-.864,2.6172,2.6172,0,0,1-.2078-1.0165,2.6295,2.6295,0,0,1,.81-1.9008,2.625,2.625,0,0,1,1.9223-.7827Zm.01.4879a2.1488,2.1488,0,0,0-1.5794.64,2.2237,2.2237,0,0,0-.4987.7115,2.1455,2.1455,0,0,0-.1663.8437,2.0485,2.0485,0,0,0,.1663.8234,2.1178,2.1178,0,0,0,.4987.7115,2.2461,2.2461,0,0,0,.7274.4778,2.19,2.19,0,0,0,.852.1626,2.2271,2.2271,0,0,0,.8521-.1626,2.5219,2.5219,0,0,0,.7481-.4778,2.054,2.054,0,0,0,.6338-1.5349,2.0762,2.0762,0,0,0-.1662-.8437,2.1586,2.1586,0,0,0-.478-.7115,2.2061,2.2061,0,0,0-1.59-.64Zm-.0312,1.7484-.374.1829a.3141.3141,0,0,0-.1351-.1626.3877.3877,0,0,0-.1663-.0508c-.2389,0-.3636.1524-.3636.4777a.5391.5391,0,0,0,.0935.3355.3067.3067,0,0,0,.27.1321.3459.3459,0,0,0,.3429-.2236l.3325.1626a.7185.7185,0,0,1-.3013.305.7291.7291,0,0,1-.4156.1118.8106.8106,0,0,1-.5923-.2135.8529.8529,0,0,1-.2286-.61.8359.8359,0,0,1,.2286-.61.7842.7842,0,0,1,.5819-.2236.7632.7632,0,0,1,.7273.3863Zm1.5794,0-.3636.1829a.3648.3648,0,0,0-.3118-.2134c-.2389,0-.3636.1524-.3636.4777a.5391.5391,0,0,0,.0935.3355.3067.3067,0,0,0,.27.1321.355.355,0,0,0,.3429-.2236l.3429.1626a.8077.8077,0,0,1-.3117.305.7291.7291,0,0,1-.4156.1118.7487.7487,0,0,1-.81-.8234.7959.7959,0,0,1,.2286-.61.8627.8627,0,0,1,1.2988.1627Z\" style=\"fill-rule:evenodd\"/><path d=\"M305.749,24.4515a2.24,2.24,0,0,1-.3221,1.1791,2.4008,2.4008,0,0,1-.8832.8742,2.5447,2.5447,0,0,1-1.2157.3151,2.4749,2.4749,0,0,1-1.2053-.3151,2.4293,2.4293,0,0,1-.8936-.8742,2.3192,2.3192,0,0,1,0-2.3582,2.4308,2.4308,0,0,1,.8936-.8742,2.4749,2.4749,0,0,1,1.2053-.3151,2.5447,2.5447,0,0,1,1.2157.3151,2.4023,2.4023,0,0,1,.8832.8742,2.2408,2.2408,0,0,1,.3221,1.1791Z\" style=\"fill:#fff;fill-rule:evenodd\"/><path d=\"M303.3176,21.7338a2.7048,2.7048,0,0,1,1.9431.7725,2.5792,2.5792,0,0,1,.8,1.911,2.45,2.45,0,0,1-.79,1.87,2.7008,2.7008,0,0,1-1.9535.8031,2.668,2.668,0,0,1-1.9327-.7929,2.5157,2.5157,0,0,1-.81-1.88,2.5982,2.5982,0,0,1,.81-1.911,2.6981,2.6981,0,0,1,1.9327-.7725Zm0,.4879a2.1655,2.1655,0,0,0-1.5794.64,2.13,2.13,0,0,0-.665,1.5552,2.07,2.07,0,0,0,.665,1.5349,2.1682,2.1682,0,0,0,1.5794.6506,2.2422,2.2422,0,0,0,1.6-.6608,1.98,1.98,0,0,0,.6442-1.5349,2.088,2.088,0,0,0-.6546-1.545,2.1891,2.1891,0,0,0-1.59-.64Zm.7378,1.5247v1.0978h-.3118v1.3011h-.852V24.8442H302.58V23.7464a.1665.1665,0,0,1,.0519-.1219.1742.1742,0,0,1,.1247-.0509h1.1222a.174.174,0,0,1,.1247.0509.1662.1662,0,0,1,.052.1219Zm-1.1222-.6912a.3845.3845,0,1,1,.3844.3761.3375.3375,0,0,1-.3844-.3761Z\" style=\"fill-rule:evenodd\"/><path d=\"M312.122,24.4007a2.4128,2.4128,0,0,1-.3325,1.21,2.4383,2.4383,0,0,1-.9143.8844,2.4959,2.4959,0,0,1-3.377-.8844,2.4128,2.4128,0,0,1-.3325-1.21,2.3578,2.3578,0,0,1,.3325-1.21,2.5034,2.5034,0,0,1,3.377-.8844,2.4375,2.4375,0,0,1,.9143.8844,2.3578,2.3578,0,0,1,.3325,1.21Z\" style=\"fill:#fff;fill-rule:evenodd\"/><path d=\"M311.6337,22.5063a2.817,2.817,0,0,0-3.8758,0,2.5983,2.5983,0,0,0-.81,1.911,2.548,2.548,0,0,0,.81,1.88,2.6679,2.6679,0,0,0,1.9327.7929,2.774,2.774,0,0,0,1.9639-.7929,2.5323,2.5323,0,0,0,.7793-1.88,2.5792,2.5792,0,0,0-.8-1.911Zm-.3429,3.4357a2.2248,2.2248,0,0,1-1.6.6608,2.1919,2.1919,0,0,1-1.5794-.6506,2.0756,2.0756,0,0,1-.665-1.5451,2.3219,2.3219,0,0,1,.1143-.7115l.7274.3151h-.052v.3253h.26c0,.0407-.01.0813-.01.1321v.0712h-.2494v.3253h.3013a1.25,1.25,0,0,0,.26.5794,1.3587,1.3587,0,0,0,1.1118.5082,1.6125,1.6125,0,0,0,.717-.1626l-.1039-.4981a1.523,1.523,0,0,1-.53.1118A.8246.8246,0,0,1,309.4,25.18a.8144.8144,0,0,1-.1455-.3151h.9975l1.4131.61a1.7768,1.7768,0,0,1-.374.4675Zm-1.7768-1.4027h0Zm.852-.2033h.0416v-.3253h-.7793l-.3118-.1321a.3816.3816,0,0,1,.0936-.1525.7007.7007,0,0,1,.5611-.244,1.5316,1.5316,0,0,1,.5091.1017l.1351-.5082a1.8313,1.8313,0,0,0-.6962-.1322,1.4183,1.4183,0,0,0-1.06.4574c-.0519.061-.1039.1423-.1558.2135l-.8936-.3863a2.0314,2.0314,0,0,1,.3013-.3659,2.1747,2.1747,0,0,1,1.5794-.6506,2.1982,2.1982,0,0,1,1.59.6506,2.0628,2.0628,0,0,1,.6546,1.5552,2.5876,2.5876,0,0,1-.0623.5692l-1.5067-.6505Z\" style=\"fill-rule:evenodd\"/></g></g></svg>"
],
"text/plain": [
"<IPython.core.display.SVG object>"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from IPython.display import SVG\n",
"SVG(\"../fidle/img/00-Fidle-header-01.svg\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<img width=\"800px\" src=\"../fidle/img/00-Fidle-header-01.svg\"></img>\n",
"\n",
"# <!-- TITLE --> [BHP1] - Regression with a Dense Network (DNN)\n",
"<!-- DESC --> A Simple regression with a Dense Neural Network (DNN) - BHPD dataset\n",
"<!-- AUTHOR : Jean-Luc Parouty (CNRS/SIMaP) -->\n",
" - Predicts **housing prices** from a set of house features. \n",
" - Understanding the **principle** and the **architecture** of a regression with a **dense neural network** \n",
"\n",
"The **[Boston Housing Dataset](https://www.cs.toronto.edu/~delve/data/boston/bostonDetail.html)** consists of price of houses in various places in Boston. \n",
"Alongside with price, the dataset also provide information such as Crime, areas of non-retail business in the town, \n",
"age of people who own the house and many other attributes...\n",
"\n",
"\n",
" - Retrieve data\n",
" - Preparing the data\n",
" - Build a model\n",
" - Train the model\n",
" - Evaluate the result\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
]
},
{
"cell_type": "code",
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
{
"data": {
"text/html": [
"<style>\n",
"\n",
"div.warn { \n",
" background-color: #fcf2f2;\n",
" border-color: #dFb5b4;\n",
" border-left: 5px solid #dfb5b4;\n",
" padding: 0.5em;\n",
" font-weight: bold;\n",
" font-size: 1.1em;;\n",
" }\n",
"\n",
"\n",
"\n",
"div.nota { \n",
" background-color: #DAFFDE;\n",
" border-left: 5px solid #92CC99;\n",
" padding: 0.5em;\n",
" }\n",
"\n",
"\n",
"\n",
"</style>\n",
"\n"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"FIDLE 2020 - Practical Work Module\n",
"Run time : Wednesday 19 February 2020, 09:49:10\n",
"TensorFlow version : 2.0.0\n",
"Keras version : 2.2.4-tf\n"
"source": [
"import tensorflow as tf\n",
"from tensorflow import keras\n",
"\n",
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"import pandas as pd\n",
"\n",
"from importlib import reload\n",
"\n",
"sys.path.append('..')\n",
"import fidle.pwk as ooo\n",
"\n",
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Boston housing is a famous historic dataset, so we can get it directly from [Keras datasets](https://www.tensorflow.org/api_docs/python/tf/keras/datasets) "
]
},
{
"metadata": {},
"source": [
"(x_train, y_train), (x_test, y_test) = keras.datasets.boston_housing.load_data(test_split=0.2, seed=113)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 2.2 - Option 2 : From a csv file\n",
"More fun !"
]
},
{
"cell_type": "code",
"outputs": [
{
"data": {
"text/html": [
"<style type=\"text/css\" >\n",
"</style><table id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0\" ><thead> <tr> <th class=\"blank level0\" ></th> <th class=\"col_heading level0 col0\" >crim</th> <th class=\"col_heading level0 col1\" >zn</th> <th class=\"col_heading level0 col2\" >indus</th> <th class=\"col_heading level0 col3\" >chas</th> <th class=\"col_heading level0 col4\" >nox</th> <th class=\"col_heading level0 col5\" >rm</th> <th class=\"col_heading level0 col6\" >age</th> <th class=\"col_heading level0 col7\" >dis</th> <th class=\"col_heading level0 col8\" >rad</th> <th class=\"col_heading level0 col9\" >tax</th> <th class=\"col_heading level0 col10\" >ptratio</th> <th class=\"col_heading level0 col11\" >b</th> <th class=\"col_heading level0 col12\" >lstat</th> <th class=\"col_heading level0 col13\" >medv</th> </tr></thead><tbody>\n",
" <th id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0level0_row0\" class=\"row_heading level0 row0\" >0</th>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row0_col0\" class=\"data row0 col0\" >0.01</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row0_col1\" class=\"data row0 col1\" >18.00</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row0_col2\" class=\"data row0 col2\" >2.31</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row0_col3\" class=\"data row0 col3\" >0.00</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row0_col4\" class=\"data row0 col4\" >0.54</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row0_col5\" class=\"data row0 col5\" >6.58</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row0_col6\" class=\"data row0 col6\" >65.20</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row0_col7\" class=\"data row0 col7\" >4.09</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row0_col8\" class=\"data row0 col8\" >1.00</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row0_col9\" class=\"data row0 col9\" >296.00</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row0_col10\" class=\"data row0 col10\" >15.30</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row0_col11\" class=\"data row0 col11\" >396.90</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row0_col12\" class=\"data row0 col12\" >4.98</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row0_col13\" class=\"data row0 col13\" >24.00</td>\n",
" <th id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0level0_row1\" class=\"row_heading level0 row1\" >1</th>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row1_col0\" class=\"data row1 col0\" >0.03</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row1_col1\" class=\"data row1 col1\" >0.00</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row1_col2\" class=\"data row1 col2\" >7.07</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row1_col3\" class=\"data row1 col3\" >0.00</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row1_col4\" class=\"data row1 col4\" >0.47</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row1_col5\" class=\"data row1 col5\" >6.42</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row1_col6\" class=\"data row1 col6\" >78.90</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row1_col7\" class=\"data row1 col7\" >4.97</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row1_col8\" class=\"data row1 col8\" >2.00</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row1_col9\" class=\"data row1 col9\" >242.00</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row1_col10\" class=\"data row1 col10\" >17.80</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row1_col11\" class=\"data row1 col11\" >396.90</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row1_col12\" class=\"data row1 col12\" >9.14</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row1_col13\" class=\"data row1 col13\" >21.60</td>\n",
" <th id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0level0_row2\" class=\"row_heading level0 row2\" >2</th>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row2_col0\" class=\"data row2 col0\" >0.03</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row2_col1\" class=\"data row2 col1\" >0.00</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row2_col2\" class=\"data row2 col2\" >7.07</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row2_col3\" class=\"data row2 col3\" >0.00</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row2_col4\" class=\"data row2 col4\" >0.47</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row2_col5\" class=\"data row2 col5\" >7.18</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row2_col6\" class=\"data row2 col6\" >61.10</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row2_col7\" class=\"data row2 col7\" >4.97</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row2_col8\" class=\"data row2 col8\" >2.00</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row2_col9\" class=\"data row2 col9\" >242.00</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row2_col10\" class=\"data row2 col10\" >17.80</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row2_col11\" class=\"data row2 col11\" >392.83</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row2_col12\" class=\"data row2 col12\" >4.03</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row2_col13\" class=\"data row2 col13\" >34.70</td>\n",
" <th id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0level0_row3\" class=\"row_heading level0 row3\" >3</th>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row3_col0\" class=\"data row3 col0\" >0.03</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row3_col1\" class=\"data row3 col1\" >0.00</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row3_col2\" class=\"data row3 col2\" >2.18</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row3_col3\" class=\"data row3 col3\" >0.00</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row3_col4\" class=\"data row3 col4\" >0.46</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row3_col5\" class=\"data row3 col5\" >7.00</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row3_col6\" class=\"data row3 col6\" >45.80</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row3_col7\" class=\"data row3 col7\" >6.06</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row3_col8\" class=\"data row3 col8\" >3.00</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row3_col9\" class=\"data row3 col9\" >222.00</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row3_col10\" class=\"data row3 col10\" >18.70</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row3_col11\" class=\"data row3 col11\" >394.63</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row3_col12\" class=\"data row3 col12\" >2.94</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row3_col13\" class=\"data row3 col13\" >33.40</td>\n",
" <th id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0level0_row4\" class=\"row_heading level0 row4\" >4</th>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row4_col0\" class=\"data row4 col0\" >0.07</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row4_col1\" class=\"data row4 col1\" >0.00</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row4_col2\" class=\"data row4 col2\" >2.18</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row4_col3\" class=\"data row4 col3\" >0.00</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row4_col4\" class=\"data row4 col4\" >0.46</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row4_col5\" class=\"data row4 col5\" >7.15</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row4_col6\" class=\"data row4 col6\" >54.20</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row4_col7\" class=\"data row4 col7\" >6.06</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row4_col8\" class=\"data row4 col8\" >3.00</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row4_col9\" class=\"data row4 col9\" >222.00</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row4_col10\" class=\"data row4 col10\" >18.70</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row4_col11\" class=\"data row4 col11\" >396.90</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row4_col12\" class=\"data row4 col12\" >5.33</td>\n",
" <td id=\"T_b21e4e08_52f4_11ea_be4c_af031994fcb0row4_col13\" class=\"data row4 col13\" >36.20</td>\n",
" </tr>\n",
" </tbody></table>"
],
"text/plain": [
"<pandas.io.formats.style.Styler at 0x7f1b92065150>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Données manquantes : 0 Shape is : (506, 14)\n"
]
}
],
"source": [
"data = pd.read_csv('./data/BostonHousing.csv', header=0)\n",
"\n",
"display(data.head(5).style.format(\"{0:.2f}\"))\n",
"print('Données manquantes : ',data.isna().sum().sum(), ' Shape is : ', data.shape)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Step 3 - Preparing the data\n",
"### 3.1 - Split data\n",
"We will use 70% of the data for training and 30% for validation. \n",
"x will be input data and y the expected output"
]
},
{
"cell_type": "code",
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Original data shape was : (506, 14)\n",
"x_train : (354, 13) y_train : (354,)\n",
"x_test : (152, 13) y_test : (152,)\n"
]
}
],
"source": [
"# ---- Split => train, test\n",
"#\n",
"data_train = data.sample(frac=0.7, axis=0)\n",
"data_test = data.drop(data_train.index)\n",
"\n",
"# ---- Split => x,y (medv is price)\n",
"#\n",
"x_train = data_train.drop('medv', axis=1)\n",
"y_train = data_train['medv']\n",
"x_test = data_test.drop('medv', axis=1)\n",
"y_test = data_test['medv']\n",
"\n",
"print('Original data shape was : ',data.shape)\n",
"print('x_train : ',x_train.shape, 'y_train : ',y_train.shape)\n",
"print('x_test : ',x_test.shape, 'y_test : ',y_test.shape)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Note :** \n",
" - All input data must be normalized, train and test. \n",
" - To do this we will **subtract the mean** and **divide by the standard deviation**. \n",
" - But test data should not be used in any way, even for normalization. \n",
" - The mean and the standard deviation will therefore only be calculated with the train data."
]
},
{
"cell_type": "code",
"outputs": [
{
"data": {
"text/html": [
"<style type=\"text/css\" >\n",
"</style><table id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0\" ><caption>Before normalization :</caption><thead> <tr> <th class=\"blank level0\" ></th> <th class=\"col_heading level0 col0\" >crim</th> <th class=\"col_heading level0 col1\" >zn</th> <th class=\"col_heading level0 col2\" >indus</th> <th class=\"col_heading level0 col3\" >chas</th> <th class=\"col_heading level0 col4\" >nox</th> <th class=\"col_heading level0 col5\" >rm</th> <th class=\"col_heading level0 col6\" >age</th> <th class=\"col_heading level0 col7\" >dis</th> <th class=\"col_heading level0 col8\" >rad</th> <th class=\"col_heading level0 col9\" >tax</th> <th class=\"col_heading level0 col10\" >ptratio</th> <th class=\"col_heading level0 col11\" >b</th> <th class=\"col_heading level0 col12\" >lstat</th> </tr></thead><tbody>\n",
" <th id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0level0_row0\" class=\"row_heading level0 row0\" >count</th>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row0_col0\" class=\"data row0 col0\" >354.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row0_col1\" class=\"data row0 col1\" >354.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row0_col2\" class=\"data row0 col2\" >354.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row0_col3\" class=\"data row0 col3\" >354.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row0_col4\" class=\"data row0 col4\" >354.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row0_col5\" class=\"data row0 col5\" >354.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row0_col6\" class=\"data row0 col6\" >354.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row0_col7\" class=\"data row0 col7\" >354.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row0_col8\" class=\"data row0 col8\" >354.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row0_col9\" class=\"data row0 col9\" >354.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row0_col10\" class=\"data row0 col10\" >354.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row0_col11\" class=\"data row0 col11\" >354.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row0_col12\" class=\"data row0 col12\" >354.00</td>\n",
" <th id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0level0_row1\" class=\"row_heading level0 row1\" >mean</th>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row1_col0\" class=\"data row1 col0\" >3.45</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row1_col1\" class=\"data row1 col1\" >11.62</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row1_col2\" class=\"data row1 col2\" >11.13</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row1_col3\" class=\"data row1 col3\" >0.06</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row1_col4\" class=\"data row1 col4\" >0.56</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row1_col5\" class=\"data row1 col5\" >6.30</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row1_col6\" class=\"data row1 col6\" >69.31</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row1_col7\" class=\"data row1 col7\" >3.87</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row1_col8\" class=\"data row1 col8\" >9.27</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row1_col9\" class=\"data row1 col9\" >403.18</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row1_col10\" class=\"data row1 col10\" >18.44</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row1_col11\" class=\"data row1 col11\" >360.95</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row1_col12\" class=\"data row1 col12\" >12.53</td>\n",
" <th id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0level0_row2\" class=\"row_heading level0 row2\" >std</th>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row2_col0\" class=\"data row2 col0\" >8.66</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row2_col1\" class=\"data row2 col1\" >23.54</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row2_col2\" class=\"data row2 col2\" >6.86</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row2_col3\" class=\"data row2 col3\" >0.25</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row2_col4\" class=\"data row2 col4\" >0.11</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row2_col5\" class=\"data row2 col5\" >0.71</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row2_col6\" class=\"data row2 col6\" >27.60</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row2_col7\" class=\"data row2 col7\" >2.19</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row2_col8\" class=\"data row2 col8\" >8.53</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row2_col9\" class=\"data row2 col9\" >165.86</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row2_col10\" class=\"data row2 col10\" >2.18</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row2_col11\" class=\"data row2 col11\" >84.83</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row2_col12\" class=\"data row2 col12\" >7.04</td>\n",
" <th id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0level0_row3\" class=\"row_heading level0 row3\" >min</th>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row3_col0\" class=\"data row3 col0\" >0.01</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row3_col1\" class=\"data row3 col1\" >0.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row3_col2\" class=\"data row3 col2\" >0.46</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row3_col3\" class=\"data row3 col3\" >0.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row3_col4\" class=\"data row3 col4\" >0.39</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row3_col5\" class=\"data row3 col5\" >3.56</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row3_col6\" class=\"data row3 col6\" >2.90</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row3_col7\" class=\"data row3 col7\" >1.13</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row3_col8\" class=\"data row3 col8\" >1.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row3_col9\" class=\"data row3 col9\" >187.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row3_col10\" class=\"data row3 col10\" >12.60</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row3_col11\" class=\"data row3 col11\" >2.52</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row3_col12\" class=\"data row3 col12\" >1.73</td>\n",
" <th id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0level0_row4\" class=\"row_heading level0 row4\" >25%</th>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row4_col0\" class=\"data row4 col0\" >0.08</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row4_col1\" class=\"data row4 col1\" >0.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row4_col2\" class=\"data row4 col2\" >5.19</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row4_col3\" class=\"data row4 col3\" >0.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row4_col4\" class=\"data row4 col4\" >0.45</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row4_col5\" class=\"data row4 col5\" >5.88</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row4_col6\" class=\"data row4 col6\" >45.73</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row4_col7\" class=\"data row4 col7\" >2.09</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row4_col8\" class=\"data row4 col8\" >4.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row4_col9\" class=\"data row4 col9\" >277.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row4_col10\" class=\"data row4 col10\" >17.10</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row4_col11\" class=\"data row4 col11\" >375.91</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row4_col12\" class=\"data row4 col12\" >6.78</td>\n",
" <th id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0level0_row5\" class=\"row_heading level0 row5\" >50%</th>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row5_col0\" class=\"data row5 col0\" >0.23</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row5_col1\" class=\"data row5 col1\" >0.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row5_col2\" class=\"data row5 col2\" >9.69</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row5_col3\" class=\"data row5 col3\" >0.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row5_col4\" class=\"data row5 col4\" >0.54</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row5_col5\" class=\"data row5 col5\" >6.22</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row5_col6\" class=\"data row5 col6\" >78.50</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row5_col7\" class=\"data row5 col7\" >3.22</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row5_col8\" class=\"data row5 col8\" >5.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row5_col9\" class=\"data row5 col9\" >330.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row5_col10\" class=\"data row5 col10\" >19.10</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row5_col11\" class=\"data row5 col11\" >391.38</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row5_col12\" class=\"data row5 col12\" >11.35</td>\n",
" <th id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0level0_row6\" class=\"row_heading level0 row6\" >75%</th>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row6_col0\" class=\"data row6 col0\" >2.77</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row6_col1\" class=\"data row6 col1\" >12.50</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row6_col2\" class=\"data row6 col2\" >18.10</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row6_col3\" class=\"data row6 col3\" >0.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row6_col4\" class=\"data row6 col4\" >0.62</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row6_col5\" class=\"data row6 col5\" >6.62</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row6_col6\" class=\"data row6 col6\" >94.10</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row6_col7\" class=\"data row6 col7\" >5.23</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row6_col8\" class=\"data row6 col8\" >8.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row6_col9\" class=\"data row6 col9\" >666.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row6_col10\" class=\"data row6 col10\" >20.20</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row6_col11\" class=\"data row6 col11\" >396.27</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row6_col12\" class=\"data row6 col12\" >16.93</td>\n",
" <th id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0level0_row7\" class=\"row_heading level0 row7\" >max</th>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row7_col0\" class=\"data row7 col0\" >88.98</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row7_col1\" class=\"data row7 col1\" >100.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row7_col2\" class=\"data row7 col2\" >27.74</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row7_col3\" class=\"data row7 col3\" >1.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row7_col4\" class=\"data row7 col4\" >0.87</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row7_col5\" class=\"data row7 col5\" >8.78</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row7_col6\" class=\"data row7 col6\" >100.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row7_col7\" class=\"data row7 col7\" >12.13</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row7_col8\" class=\"data row7 col8\" >24.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row7_col9\" class=\"data row7 col9\" >711.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row7_col10\" class=\"data row7 col10\" >22.00</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row7_col11\" class=\"data row7 col11\" >396.90</td>\n",
" <td id=\"T_b227e0e4_52f4_11ea_be4c_af031994fcb0row7_col12\" class=\"data row7 col12\" >36.98</td>\n",
" </tr>\n",
" </tbody></table>"
],
"text/plain": [
"<pandas.io.formats.style.Styler at 0x7f1b8fb9bfd0>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"<style type=\"text/css\" >\n",
"</style><table id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0\" ><caption>After normalization :</caption><thead> <tr> <th class=\"blank level0\" ></th> <th class=\"col_heading level0 col0\" >crim</th> <th class=\"col_heading level0 col1\" >zn</th> <th class=\"col_heading level0 col2\" >indus</th> <th class=\"col_heading level0 col3\" >chas</th> <th class=\"col_heading level0 col4\" >nox</th> <th class=\"col_heading level0 col5\" >rm</th> <th class=\"col_heading level0 col6\" >age</th> <th class=\"col_heading level0 col7\" >dis</th> <th class=\"col_heading level0 col8\" >rad</th> <th class=\"col_heading level0 col9\" >tax</th> <th class=\"col_heading level0 col10\" >ptratio</th> <th class=\"col_heading level0 col11\" >b</th> <th class=\"col_heading level0 col12\" >lstat</th> </tr></thead><tbody>\n",
" <th id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0level0_row0\" class=\"row_heading level0 row0\" >count</th>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row0_col0\" class=\"data row0 col0\" >354.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row0_col1\" class=\"data row0 col1\" >354.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row0_col2\" class=\"data row0 col2\" >354.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row0_col3\" class=\"data row0 col3\" >354.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row0_col4\" class=\"data row0 col4\" >354.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row0_col5\" class=\"data row0 col5\" >354.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row0_col6\" class=\"data row0 col6\" >354.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row0_col7\" class=\"data row0 col7\" >354.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row0_col8\" class=\"data row0 col8\" >354.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row0_col9\" class=\"data row0 col9\" >354.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row0_col10\" class=\"data row0 col10\" >354.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row0_col11\" class=\"data row0 col11\" >354.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row0_col12\" class=\"data row0 col12\" >354.00</td>\n",
" <th id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0level0_row1\" class=\"row_heading level0 row1\" >mean</th>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row1_col0\" class=\"data row1 col0\" >0.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row1_col1\" class=\"data row1 col1\" >-0.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row1_col2\" class=\"data row1 col2\" >0.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row1_col3\" class=\"data row1 col3\" >0.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row1_col4\" class=\"data row1 col4\" >0.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row1_col5\" class=\"data row1 col5\" >0.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row1_col6\" class=\"data row1 col6\" >0.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row1_col7\" class=\"data row1 col7\" >0.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row1_col8\" class=\"data row1 col8\" >0.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row1_col9\" class=\"data row1 col9\" >0.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row1_col10\" class=\"data row1 col10\" >0.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row1_col11\" class=\"data row1 col11\" >0.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row1_col12\" class=\"data row1 col12\" >0.00</td>\n",
" <th id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0level0_row2\" class=\"row_heading level0 row2\" >std</th>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row2_col0\" class=\"data row2 col0\" >1.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row2_col1\" class=\"data row2 col1\" >1.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row2_col2\" class=\"data row2 col2\" >1.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row2_col3\" class=\"data row2 col3\" >1.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row2_col4\" class=\"data row2 col4\" >1.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row2_col5\" class=\"data row2 col5\" >1.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row2_col6\" class=\"data row2 col6\" >1.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row2_col7\" class=\"data row2 col7\" >1.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row2_col8\" class=\"data row2 col8\" >1.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row2_col9\" class=\"data row2 col9\" >1.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row2_col10\" class=\"data row2 col10\" >1.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row2_col11\" class=\"data row2 col11\" >1.00</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row2_col12\" class=\"data row2 col12\" >1.00</td>\n",
" <th id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0level0_row3\" class=\"row_heading level0 row3\" >min</th>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row3_col0\" class=\"data row3 col0\" >-0.40</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row3_col1\" class=\"data row3 col1\" >-0.49</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row3_col2\" class=\"data row3 col2\" >-1.56</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row3_col3\" class=\"data row3 col3\" >-0.26</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row3_col4\" class=\"data row3 col4\" >-1.49</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row3_col5\" class=\"data row3 col5\" >-3.84</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row3_col6\" class=\"data row3 col6\" >-2.41</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row3_col7\" class=\"data row3 col7\" >-1.25</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row3_col8\" class=\"data row3 col8\" >-0.97</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row3_col9\" class=\"data row3 col9\" >-1.30</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row3_col10\" class=\"data row3 col10\" >-2.68</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row3_col11\" class=\"data row3 col11\" >-4.23</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row3_col12\" class=\"data row3 col12\" >-1.53</td>\n",
" <th id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0level0_row4\" class=\"row_heading level0 row4\" >25%</th>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row4_col0\" class=\"data row4 col0\" >-0.39</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row4_col1\" class=\"data row4 col1\" >-0.49</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row4_col2\" class=\"data row4 col2\" >-0.87</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row4_col3\" class=\"data row4 col3\" >-0.26</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row4_col4\" class=\"data row4 col4\" >-0.90</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row4_col5\" class=\"data row4 col5\" >-0.58</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row4_col6\" class=\"data row4 col6\" >-0.85</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row4_col7\" class=\"data row4 col7\" >-0.81</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row4_col8\" class=\"data row4 col8\" >-0.62</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row4_col9\" class=\"data row4 col9\" >-0.76</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row4_col10\" class=\"data row4 col10\" >-0.62</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row4_col11\" class=\"data row4 col11\" >0.18</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row4_col12\" class=\"data row4 col12\" >-0.82</td>\n",
" <th id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0level0_row5\" class=\"row_heading level0 row5\" >50%</th>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row5_col0\" class=\"data row5 col0\" >-0.37</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row5_col1\" class=\"data row5 col1\" >-0.49</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row5_col2\" class=\"data row5 col2\" >-0.21</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row5_col3\" class=\"data row5 col3\" >-0.26</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row5_col4\" class=\"data row5 col4\" >-0.15</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row5_col5\" class=\"data row5 col5\" >-0.11</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row5_col6\" class=\"data row5 col6\" >0.33</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row5_col7\" class=\"data row5 col7\" >-0.30</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row5_col8\" class=\"data row5 col8\" >-0.50</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row5_col9\" class=\"data row5 col9\" >-0.44</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row5_col10\" class=\"data row5 col10\" >0.30</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row5_col11\" class=\"data row5 col11\" >0.36</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row5_col12\" class=\"data row5 col12\" >-0.17</td>\n",
" <th id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0level0_row6\" class=\"row_heading level0 row6\" >75%</th>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row6_col0\" class=\"data row6 col0\" >-0.08</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row6_col1\" class=\"data row6 col1\" >0.04</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row6_col2\" class=\"data row6 col2\" >1.02</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row6_col3\" class=\"data row6 col3\" >-0.26</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row6_col4\" class=\"data row6 col4\" >0.60</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row6_col5\" class=\"data row6 col5\" >0.46</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row6_col6\" class=\"data row6 col6\" >0.90</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row6_col7\" class=\"data row6 col7\" >0.62</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row6_col8\" class=\"data row6 col8\" >-0.15</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row6_col9\" class=\"data row6 col9\" >1.58</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row6_col10\" class=\"data row6 col10\" >0.81</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row6_col11\" class=\"data row6 col11\" >0.42</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row6_col12\" class=\"data row6 col12\" >0.63</td>\n",
" <th id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0level0_row7\" class=\"row_heading level0 row7\" >max</th>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row7_col0\" class=\"data row7 col0\" >9.87</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row7_col1\" class=\"data row7 col1\" >3.75</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row7_col2\" class=\"data row7 col2\" >2.42</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row7_col3\" class=\"data row7 col3\" >3.79</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row7_col4\" class=\"data row7 col4\" >2.75</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row7_col5\" class=\"data row7 col5\" >3.49</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row7_col6\" class=\"data row7 col6\" >1.11</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row7_col7\" class=\"data row7 col7\" >3.76</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row7_col8\" class=\"data row7 col8\" >1.73</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row7_col9\" class=\"data row7 col9\" >1.86</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row7_col10\" class=\"data row7 col10\" >1.63</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row7_col11\" class=\"data row7 col11\" >0.42</td>\n",
" <td id=\"T_b236ee40_52f4_11ea_be4c_af031994fcb0row7_col12\" class=\"data row7 col12\" >3.47</td>\n",
" </tr>\n",
" </tbody></table>"
],
"text/plain": [
"<pandas.io.formats.style.Styler at 0x7f1b8fbb4c10>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"display(x_train.describe().style.format(\"{0:.2f}\").set_caption(\"Before normalization :\"))\n",
"\n",
"mean = x_train.mean()\n",
"std = x_train.std()\n",
"x_train = (x_train - mean) / std\n",
"x_test = (x_test - mean) / std\n",
"\n",
"display(x_train.describe().style.format(\"{0:.2f}\").set_caption(\"After normalization :\"))\n",
"\n",
"x_train, y_train = np.array(x_train), np.array(y_train)\n",
"x_test, y_test = np.array(x_test), np.array(y_test)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"About informations about : \n",
" - [Optimizer](https://www.tensorflow.org/api_docs/python/tf/keras/optimizers)\n",
" - [Activation](https://www.tensorflow.org/api_docs/python/tf/keras/activations)\n",
" - [Loss](https://www.tensorflow.org/api_docs/python/tf/keras/losses)\n",
" - [Metrics](https://www.tensorflow.org/api_docs/python/tf/keras/metrics)"
]
},
{
"cell_type": "code",
"metadata": {},
"outputs": [],
"source": [
" def get_model_v1(shape):\n",
" \n",
" model = keras.models.Sequential()\n",
" model.add(keras.layers.Input(shape, name=\"InputLayer\"))\n",
" model.add(keras.layers.Dense(64, activation='relu', name='Dense_n1'))\n",
" model.add(keras.layers.Dense(64, activation='relu', name='Dense_n2'))\n",
" model.add(keras.layers.Dense(1, name='Output'))\n",
" \n",
" model.compile(optimizer = 'rmsprop',\n",
" loss = 'mse',\n",
" metrics = ['mae', 'mse'] )\n",
" return model"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Step 5 - Train the model\n",
"### 5.1 - Get it"
]
},
{
"cell_type": "code",
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Model: \"sequential\"\n",
"_________________________________________________________________\n",
"Layer (type) Output Shape Param # \n",
"=================================================================\n",
"Dense_n1 (Dense) (None, 64) 896 \n",
"_________________________________________________________________\n",
"Dense_n2 (Dense) (None, 64) 4160 \n",
"_________________________________________________________________\n",
"Output (Dense) (None, 1) 65 \n",
"=================================================================\n",
"Total params: 5,121\n",
"Trainable params: 5,121\n",
"Non-trainable params: 0\n",
"_________________________________________________________________\n"
]
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAb0AAAGVCAIAAADls7hIAAAABmJLR0QA/wD/AP+gvaeTAAAgAElEQVR4nOzde1wU5f448Ge4LCwLuyAJCwuKWkRe2Aj80RqEgkGFYGwgmmgdD8Q39QApKph6vJFpmHC+aiocA6VM4fXCAtPyoHQOCAkWmBpi4I27gguCclmZ3x/Pab7TLiw7sOzs4uf9l/vMM898dmI/zeWZzxAkSSIAAABqM2A7AAAA0DOQNwEAgBnImwAAwAzkTQAAYMaI/qGkpOSzzz5jKxQAANBNEolk1apV1Mc/HW/evXs3JydH6yEBoFV1dXXwd05XWlpaWlrKdhS6q7S0tKSkhN5ipNwpOztbW/EAwIITJ06Eh4fD3zklLCwMwQ9/cHj/0MH1TQAAYAbyJgAAMAN5EwAAmIG8CQAAzEDeBACoJSsri/iDubm5wtLbt28HBwd3dHQghBobG5OSkjw8PPh8vlAo9PHxyc3NHd5Gv/vuO2dnZyOjAe5gkyRZXFy8YsUKZ2dnExMTGxsbLy+vrKwses2NhISE48ePK6yYkJBAfZGXX355GFFB3gRAXZ2dnc8999y8efPYDoRNn3/+OUmSnZ2d9MaKigoPDw9/f38+n48QioqKSklJ2bJlS2NjY2lpqYODg1QqTUhIYLShmpqa4ODgxMTE5ubmATtcv37dy8ururo6Jyenvb29tLR0woQJS5YsWbNmDdUnKioqMTFx48aN9BU/+eQTkiRJkjQ0NGQUEgXyJgDqIkmyv7+/v7+frQDMzc29vLzY2vpgOjo6goKC3n777ZUrV1KNycnJgYGBPB7Pycnpiy++EIlEycnJLS0t6g+7cePGWbNmXbp0ycLCYrA+RkZGJ06ccHV1NTU1nTx5ckZGhrW19d69e3t6enCHKVOm5ObmJiUlnThxYthfcIDtanAsAMY2CwuLmpoatqPQObt27Wpqatq0aRPVkp+fT+/A4XCmTp1aX19//fp1GxsbNYf95z//yeVyVXRwcXHp6+tT2JCjo2NFRUV3d7eJiQluFIvFoaGhq1evlkqlA57vDwMcbwIAho8kyfT0dE9PT3t7exXdamtrEULjxo1Tf2TVSXNAMpnsxo0bbm5uAoGA3h4SElJXV3fq1CmmAw4G8iYAajl58iR1M6G7u1uh5datW+Hh4ZaWltbW1vPmzaMOS5OTk3EHBweHsrIyPz8/CwsLMzOzOXPmFBcX4z7bt2/Hfahz8DNnzuCWZ555hj5OV1dXcXExXqSpQ6cRqqysbG5uFovFKvpkZmbW1NQ4OztPnTp1lMLo6OgoLi4ODg4WCoVHjhxRWPriiy8ihL7//ntNbQ7yJgBqeeutt0iSnD9//oAtcXFxcXFx9fX1x48fP3fu3KJFi3Cf+Ph4kiTFYrFMJouNjd2+fXtTU9O///3vtrY2X1/fH3/8ESG0YcMGkiR5PB418uuvv06SpLu7O9WCx+HxeK+88gq+pyGXy6mlvr6+1tbWrDxjfuXKFYSQg4PDgEuvXbsWGxu7bNkyKysrfDt+NGLYvn27QCDw8vIyNDTMzc2dPn26QgeRSESFqhGQNwHQgMjISIlEwuPx5s6dGxgYWFZWdv/+fXqHrq6u/fv34z4eHh5ZWVm9vb2xsbEa2Xp/fz9OphoZjZHGxkaEkMJ5McXV1TU7O3vlypVXrlyZOXPmKMWwYcOGnp6e3377zcXFxc3Nbdu2bQod+Hw+QRA4VI3QiUN9APQdPSk4OjoihBoaGqizbIQQj8fDZ4vYjBkz7O3tKysrGxsb7ezsRrj1wsLCEY4wbPiShbGx8WAdzp075+LiMtphcDgcFxeXzz//vLm5edOmTRKJZO7cufQORkZGjx8/1tTm4HgTAA2gH3BxOByEkMJ0JUtLS4VV8J1lRlNzdJCpqSlCSOG+NouCgoKQ0g19hJBcLh/GjabBQN4EQBtaW1sVzqNxxqTm5RgYGPT29tI7yGQyhUFG6frgSOCD5fb2drYD+S88/aitrY3e2NHRQZLkyI/rKZA3AdCG7u7usrIy6uOvv/7a0NAgFoupH7OdnV19fT3Voamp6c6dOwqDmJmZUbn1+eefP3To0ChHPTR8E6aurm7ApXK5fPRO0uPj4yMiIhQaT58+jf582QQhhHes8v2iYYO8CYA2CASC9evXl5SUdHV1lZeXR0REcDic1NRUqoO/v39DQ8PevXs7OztrampiY2OVp4i/9NJL1dXVd+/eLSkpqa2t9fb2xu0s3k8Xi8U2NjaVlZXKi9LS0ng83tq1a5UXRUREEARx8+bNEW79q6++2rp1661bt3p6em7durVu3bqsrCx3d/fIyEh6t4qKCoSQv7//CDdHgbwJgFrwbM1vvvkGIcTlciMiIkpLS+ktGzZsQAgRBLFz506EkJubG/1JdnNz8//93//dsmWLnZ3dq6++amVlde7cOR8fH6rD9u3bIyMjP/74Yxsbm/fee2/NmjVCobC1tZUgCOrJ7pSUFFdX1xdeeCE8PDw1NfWFF17A7XK5nK376QRBREZG/vTTTw0NDQqLVNzlb2xsNDc3nzBhgoqR8/Pz8UzV+vr6J0+e4H+np6dTHTZt2pSWlnbhwoU5c+bw+fwZM2YUFBTs2LHjP//5j8KlzNzcXJFIFBgYOIIv+mckDS4cQgIwpmn/71wsFotEIm1ukZHQ0NDQ0NAhux09ehT9UdeDTiaTiUSi6OhoNTf34MEDLpcbGRnJONBhqaioIAji2LFjyosMDQ09PT2HHEF5/8DxJgBgRAQCQV5eXk5Ozr59+4bsTJJkTEwMn89XnmU5Gmpra6VSaWJi4sKFCzU47HDyprm5OUGTnJyswYBGSJdjY0SXv4guxwZG2wcffKBcf9PNza28vPz06dO4/qYKzc3NtbW1BQUFQqFwNMP8r4MHDyYlJSUlJdEbqfqbT548Gea49INP9c9ffvnlF4TQ/Pnz1emsZbocGyO6/EV0ObYhafM8/dNPP6X/3D766CPtbJcRNc/Tn1pj6jxdN2sRjjGwk0cIP1dO2b59O9sRAQ3Q47wJAACsgLwJAADMaCxv6lctQrlcfvz48ddee00oFHK53BkzZqSmpuIHimUyGf2mBz6xksvlVEtoaCge5N69ezExMU5OThwOZ/z48VKpFE+vVdgb169fX7BggbW1Nf6oUCYHdrKu7WQAhka/+DLy+0K4FuH8+fMvXLjQ2dl59uxZLpc7c+ZMeh+xWMzj8SQSCe5TVlbm6urK4XAKCwupPvQ6g5i7u7u1tTW9RbmP6tjo8vLyEEIff/xxW1vbvXv3/vGPfxgYGNAvRQUEBBgYGPz+++/0tSQSyZdffon/3dDQMHHiRFtb21OnTj18+PDKlSs+Pj6mpqYXLlxQ2Bs+Pj7nz5/v6uoqLS01NDS8d+8eSZJz5swZN25cSUmJiiBhJ49wJw8G5ikrgPtCqinvn1HJm3l5efRNIoTof8e4NPQvv/xCtVy+fBkhJBaLqRYt/KRnz55Nb4mIiDA2Nm5vb8cfcWno5cuXUx2KiopEIlFvby/++O677yKEqF84SZKNjY0mJibu7u4Ke+O7775TDsDHx8fKyor++1f/i8BOVnMnDwbypgLIm6pp6X76gLUI6R1U1CIcjXiUzZs37/z58/QWsVjc19d39epV/NHf33/GjBkZGRmtra245dNPP/3b3/5G1Rk8efKkgYEB/UE6oVA4bdq0S5cuKdQ4+H//7/8pB1BYWNjW1iaRSIb9FWAn00cecCerRoA/5OTk5OTksB2F7srJyVH44xmVusXDq0XY0NDQ0tKiwVpPKrS3t+/evTs3N7euro5erevRo0fUv+Pi4v7617/u379/48aN1dXV586d++KLL/Cinp4eXDhrwDLXN27coL82gP7+Aw2CnTzCnYyPOgFCaM+ePQihDz/8kO1AdBTeP3Ts1HvHtQgJWjFBLdciDAoK+s9//pOamrpo0aJnnnmGIIiUlJQPP/yQpNUgWLx48fr16/fu3bt27drdu3e/++67VlZWeJGJiYmlpWVnZ+fjx4915PVYymAnq7ZgwQKNj6mnsrOzEeyQweH9Q8fOPCS2ahEaGRlVVVU9efKkuLhYKBTGxMSMHz8epwblGvomJibLly9vaWnZvXv3l19+qfAqGKlUKpfLqTvU2M6dOydMmEB/YRaLYCcDMErYyZujWotwSIaGhrNnz25qavr000/v37//+PHj8+fPHzhwQLnn8uXLcX2wuXPnPvvss/RFO3bsmDJlyrJly06fPt3e3t7W1nbw4MGtW7cmJyerc3CkhYKJsJMBGC30m0Rq3mdUuJb06aefkiRZUlJCb8TP4dJbAgMD8eq4pta1a9cCAgIsLCy4XK6Pj09RURF9EzKZLDIy0s7Ojsvlenl5lZWVUe9EXbduHe5TVVXl7e3N4/EcHR337ds3YGzKfvvtN5Ik7927Fx0d7ejoaGxsbGtr+95771ElDun3akmSjIqKQgj9+OOPyvuhtbV11apVkydPNjY2Hj9+vL+//9mzZ/Eihb2hvFe9vb1V30+HnTzynTwYuJ+uAO6nq6axeUgjoeO1CBUcPnxY4UeuF2AnqwB5UwHkTdXGVF0P7Thw4MCqVavYjmKMg52sF7KysqipOQp15BBCt2/fDg4OxnXkGhsbk5KSPDw8+Hy+UCj08fHJzc0d3ka/++47Z2fnAS/LkCRZXFy8YsUKZ2dnExMTGxsbLy+vrKwsknYSlpCQoDxxgqojRxDEyy+/PIyoIG8OID09PSQkpLOz88CBAw8ePID7jKMBdrKewvXeOzs76Y0VFRUeHh7+/v58Ph8hFBUVlZKSsmXLlsbGxtLSUgcHB6lUSl2lUVNNTU1wcHBiYmJzc/OAHa5fv+7l5VVdXZ2Tk9Pe3l5aWjphwoQlS5asWbOG6hMVFZWYmLhx40b6ip988gk+bDQ0NGQU0v+hH3yO9vmLXtQiJEkyLS0NIWRkZOTq6nrp0iW2w2EGdvKQtHyePtgzV7oz/gjfk9He3u7g4EB/T0ZgYGBGRgb1saenRyQSGRoaNjc3qx/VokWLduzY0dfXh9dV7vDbb78ZGRm1tbXRN2RtbW1iYtLd3U014vdkHD9+XHmEYb8nA94vBJ46kDcVjDBvfvTRR0ZGRvX19SrWfe211xBC//73v9WP6tGjR/gfg+XNAeFn5GQyGb0xLCzMwcGhr69PoTO8XwgAwAKSJNPT0z09Pe3t7VV0q62tRQiNGzdO/ZEV3kmpDplMduPGDTc3N4VnzEJCQurq6k6dOsV0wMFA3gRgUHgW1JQpUzgcjpWV1RtvvEE9cT+SWny6U+tv5CorK5ubm3EdmcFkZmbW1NQ4OztPnTp1lMLo6OgoLi4ODg4WCoVHjhxRWIoPQnEdGY2AvAnAwJqammbOnPnVV1+lpqbev3//p59+MjMz8/Pzw6/w3rBhA/nnqayvv/46SZLUHFj0x0sy6OfR+DEn3C4Wi2UyWWxs7Pbt25uamv7973+3tbX5+vr++OOPIxwf08KzFQihK1euIITotQLorl27Fhsbu2zZMisrK3w7fjRi2L59u0Ag8PLyMjQ0zM3NnT59ukIHkUhEhaoRkDcBGFhiYuLNmzdTUlLmzZvH5/OdnZ2/+uorOzu7mJiYwe7wMtXV1bV//36JRMLj8Tw8PLKysnp7exUeNh22/v5+nEw1MtpgcHmtAWuvIIRcXV2zs7NXrlx55coVegUvzdqwYUNPT89vv/3m4uLi5uam/IZhPp9PEIQGK4FB3gRgYHjKYWBgINViYmLi5+f3+PFjTZ3xjWqtv5HXKlRHd3c3Qogq/afs3Llzqampqq9+jhyHw3Fxcfn888+Dg4M3bdr0r3/9S6GDkZGRcnmEYYO8CcAAcBU7U1NTCwsLerutrS1CqKmpSSNbGbDWH/qjcpVeMDU1RQj19fWxHch/BQUFIYTy8/MV2uVy+TBuNA0G8iYAAzAxMREIBN3d3Q8fPqS34zN0oVCIP46wFh+u9Udv0XKtv5HD5bVwpVRdYGJighBqa2ujN3Z0dJAkqcGys5A3ARhYSEgIQog+eaWnp6egoIDL5QYEBOCWEdbiY6vWnwbhmzAK5fcpcrncxcVllDYdHx8fERGh0Hj69Gn057chIITwPlS+XzRskDcBGNiOHTsmTZoUFxeXn5//8OHD6urqd955p7GxMTU1FZ+toxHX4hvVWn/auZ8uFottbGwqKyuVF6WlpfF4vLVr1yovioiIIAji5s2bI9z6V199tXXr1lu3bvX09Ny6dWvdunVZWVnu7u6RkZH0bvgdqP7+/iPc3P+hT4KH54XA00D9v/P79+/HxcVNmjTJ2NhYIBAEBAQUFBTQOwy7Fh85yrX+SDVqFVJG+LzQ+vXrB3xe6MCBA1wul/4GU4qvr6+5ublcLlexOfw+VAVpaWlUh/b29vT09ICAAPyaaHNzc3d39x07dlAPGlHCwsLo7/ujwHOWAKhLR/7OdafW3wjzpkwmE4lE9OfTVXvw4AGXy42MjGQc6LDg59OPHTumvAieswQAsEMgEOTl5eXk5Ozbt2/IziRJxsTE8Pl85VmWo6G2tlYqlSYmJi5cuFCDw0LeBAAw8MEHHyjX33RzcysvLz99+jSuv6lCc3NzbW1tQUEBNSdhVB08eDApKSkpKYneSNXffPLkyfCGhbwJgLbh58orKyvr6+sJgtiwYQPbEaklIiKCOlFVqL+JEHJycsrPz8f1N1UQCoVFRUXTpk0btTD/ZOfOncpHmlT9TZIkh3ffDF5uBYC2xcfHx8fHsx0FGD443gQAAGYgbwIAADOQNwEAgBnImwAAwMwA94VOnDih/TgA0JqSkhIEf+c0+Oly2CGDqaurUyzMTJ8Er/yiYQAAAArPCxHkKJeDBmB48Ltb4b3qQAfB9U0AAGAG8iYAADADeRMAAJiBvAkAAMxA3gQAAGYgbwIAADOQNwEAgBnImwAAwAzkTQAAYAbyJgAAMAN5EwAAmIG8CQAAzEDeBAAAZiBvAgAAM5A3AQCAGcibAADADORNAABgBvImAAAwA3kTAACYgbwJAADMQN4EAABmIG8CAAAzkDcBAIAZyJsAAMAM5E0AAGAG8iYAADADeRMAAJiBvAkAAMxA3gQAAGYgbwIAADOQNwEAgBnImwAAwAzkTQAAYIYgSZLtGABACKHo6Ojr169TH3/++edJkyZZWVnhj4aGhpmZmQ4ODixFB8D/MWI7AAD+y9bW9tChQ/SWy5cvU/+ePHkyJE2gI+A8HeiKd955Z7BFHA7nvffe02IsAKgC5+lAh0yfPv3atWsD/k1ev37d2dlZ+yEBoAyON4EOWbp0qaGhoUIjQRBisRiSJtAdkDeBDlm0aNGTJ08UGg0NDd99911W4gFgQHCeDnTLrFmzfvrpp/7+fqqFIIi7d++KRCIWowKADo43gW5ZsmQJQRDURwMDAy8vL0iaQKdA3gS6JSwsjP6RIIilS5eyFQwAA4K8CXTLM8884+fnR90dIggiJCSE3ZAAUAB5E+iciIgIfNnd0NAwICDA2tqa7YgA+BPIm0DnSKVSDoeDECJJMiIigu1wAFAEeRPoHB6PN2/ePIQQh8MJCgpiOxwAFEHeBLpo8eLFCKGQkBAej8d2LAAoIVnF9rcHAOil48ePs5i42K+HFBcXJ5FI2I4C6JysrKyFCxcaGf3fn2hJSUlKSsrx48dZjEqn7NmzByH04Ycfsh2ItoWHh7MbAPt5UyKRLFiwgO0ogM4JDg42NTVVaExJSYG/Fkp2djZC6CncIaznTbi+CXSUctIEQEdA3gQAAGYgbwIAADOQNwEAgBnImwA8LW7fvh0cHNzR0YEQamxsTEpK8vDw4PP5QqHQx8cnNzd3eMN+9913zs7O9JkPFJIki4uLV6xY4ezsbGJiYmNj4+XllZWVRZ+DmJCQoHdzJCBvgrGvs7Pzueeew88gPbUqKio8PDz8/f35fD5CKCoqKiUlZcuWLY2NjaWlpQ4ODlKpNCEhgdGYNTU1wcHBiYmJzc3NA3a4fv26l5dXdXV1Tk5Oe3t7aWnphAkTlixZsmbNGqpPVFRUYmLixo0bR/LttAzyJhj7SJLs7++n10LWMnNzcy8vL7a2jhDq6OgICgp6++23V65cSTUmJycHBgbyeDwnJ6cvvvhCJBIlJye3tLSoP+zGjRtnzZp16dIlCwuLwfoYGRmdOHHC1dXV1NR08uTJGRkZ1tbWe/fu7enpwR2mTJmSm5ublJR04sSJYX9BLWN//iYAo83CwqKmpobtKNi0a9eupqamTZs2US35+fn0DhwOZ+rUqfX19devX7exsVFz2H/+859cLldFBxcXl76+PoUNOTo6VlRUdHd3m5iY4EaxWBwaGrp69WqpVDrg+b6ugeNNAMY4kiTT09M9PT3t7e1VdKutrUUIjRs3Tv2RVSfNAclkshs3bri5uQkEAnp7SEhIXV3dqVOnmA7ICsibYIw7efIk8Yfu7m6Fllu3boWHh1taWlpbW8+bN486LE1OTsYdHBwcysrK/Pz8LCwszMzM5syZU1xcjPts374d96HOwc+cOYNbnnnmGfo4XV1dxcXFeJH2j6cqKyubm5vFYrGKPpmZmTU1Nc7OzlOnTh2lMDo6OoqLi4ODg4VC4ZEjRxSWvvjiiwih77//fpS2rmEsPhuP76mx+3w+0CP4ruvw1p0/fz5C6PHjxwot8+fPv3DhQmdn59mzZ7lc7syZM+lricViHo8nkUhwn7KyMldXVw6HU1hYSPXh8XivvPIKfS13d3dra2t6i3IfbM6cOePGjSspKRnelwoNDQ0NDR2y29GjRxFCH3/88YBLr169GhMTY2BgYGVldfHixeFFIhKJDA0NVXTYtm0bTjizZ8++fPmycof29naEkLe3tzqbYz1vwPEmeKpFRkZKJBIejzd37tzAwMCysrL79+/TO3R1de3fvx/38fDwyMrK6u3tjY2N1cjW+/v7qUQwehobGxFCCufFFFdX1+zs7JUrV165cmXmzJmjFMOGDRt6enp+++03FxcXNzc3Ko1S+Hw+QRA4VN2nB5dgARg99Ezh6OiIEGpoaKDOshFCPB4Pn0JiM2bMsLe3r6ysbGxstLOzG+HWCwsLRziCOvDVCWNj48E6nDt3zsXFZbTD4HA4Li4un3/+eXNz86ZNmyQSydy5c+kdjIyMHj9+PNphaAQcb4KnGv0oDL+cQ2G6kqWlpcIq+HYzo/k67MIVUhTua7MI1/BXuKGPEJLL5cO40cQKyJsAqNLa2qpwHo0zJjVZx8DAoLe3l95BJpMpDEJ/I7z24eNifAFRF+DpR21tbfTGjo4OkiRHfgivHZA3AVClu7u7rKyM+vjrr782NDSIxWLqF25nZ1dfX091aGpqunPnjsIgZmZmVG59/vnnDx06NMpR/8n06dMRQnV1dQMulcvlo3eSHh8fr/xmvdOnT6M/XyFBCOF9iEPVfZA3AVBFIBCsX7++pKSkq6urvLw8IiKCw+GkpqZSHfz9/RsaGvbu3dvZ2VlTUxMbG6s8b/yll16qrq6+e/duSUlJbW2tt7c3bvf19bW2ti4tLR3VryAWi21sbCorK5UXpaWl8Xi8tWvXKi+KiIggCOLmzZsj3PpXX321devWW7du9fT03Lp1a926dVlZWe7u7pGRkfRuFRUVCCF/f/8Rbk5LWLyXT+rAfAKgR4Y3D0mhXMXixYtLSkroLR999BH55zPxwMBAvK5YLBaJRNeuXQsICLCwsOByuT4+PkVFRfTxZTJZZGSknZ0dl8v18vIqKytzd3fH46xbtw73qaqq8vb25vF4jo6O+/bto9b19va2srK6cOHC8HaImvOQSJJcv369kZFRfX29QvuBAwe4XG58fLzyKr6+vubm5nK5XMWweXl5yiklLS2N6tDe3p6enh4QEODk5MThcMzNzd3d3Xfs2PHo0SOFocLCwkQiUW9vrzpfh/W8AXkT6I2RzN8cHpw3tblFRtTPmzKZTCQSRUdHqznygwcPuFxuZGTkCKJjoKKigiCIY8eOqdmf9byhB+fp5ubmBA2eoCsWi5cvX37p0iW2oxtdKip0qeNp3nWATiAQ5OXl5eTk7Nu3b8jOJEnGxMTw+XzlWZajoba2ViqVJiYmLly4UAub0wg9yJudnZ2//PILQmj+/PkkSfb19VVVVW3durWqqsrDw+Mvf/nLo0eP2I5R84as0KWOp3PXgQG5ubmVl5efPn0a199Uobm5uba2tqCgQCgUaiGwgwcPJiUlJSUlaWFbmqIHeVOBoaGhra3t/Pnzz507t3bt2oyMjEWLFpFj7lXs6lToYuop2XUagZ8rr6ysrK+vJwhiw4YNbEekAU5OTvn5+bj+pgpCobCoqGjatGnaiWrnzp16dKSJ6V/epPvkk088PT2//fbbr7/+mu1YNOyf//xnQkLC6NWAGMO7TiMUbpVs376d7YiADtHvvEkQBK7Dun//frZj0bDRfnBiDO86AEabfudNhBAu4VVaWko9Rnbv3r2YmBg872H8+PFSqRRPDUPqFRBDCPX09GzatMnFxcXMzGzcuHFBQUHffvvtkydPqA4qNqGamgFoh37tOgB0CAv38GmQevMJ6Dc3FFCFABoaGkiSbGhomDhxoq2t7alTpx4+fHjlyhUfHx9TU1P6FLkhC4hFRkYKBIIffvjh0aNHTU1N8fHxCKHz58/jpepsQjV1KphRVFToUqcK2Vjaddqfh6Tj1J+HNMaomTdGMQAWt01qIm9Sd4Txj//dd99FCH355ZdUh8bGRhMTE3d3d6oF//jz8vKoltDQUITQvXv38MdJkybNmjWLvhVnZ2fqx6/OJlQbMgA6FXnTx8dnyFnTY2nXQd5UAHmTLXpfRw4X7DM2Nsa1v06ePGlgYEB/c6FQKJw2bdqlS5fq6uocHByodhUFxF5//fXPP//8/fffX7Zs2cyZMw0NDa9fv051Vn8Tqg1ZwWxII6xCpqe7To/e3jXa8CPnsEO0T+/zZlFREUJIIjcOHrUAACAASURBVJEYGxv39PTgoi8Dlmi9ceMG/ZepooDYvn37JBJJZmamn58fQsjb2zs6OjokJAQhxGgTqg1ZwWy06emuCw8PV/cbPh1gh2ifft8X6u/vx88/rFixAiFkYmJiaWlpZGTU19enfGg9Z84cNYclCGLJkiX/+te/ZDLZyZMnSZKUSqWfffaZBjfBOv3ddSM9xRpDnubzdHbpd95MTEy8ePFiSEhIWFgYbpFKpXK5nHpzFrZz584JEybI5XI1h7W0tKyqqkIIGRsbv/baa/hWMvWmPY1sgnWw6wAYNv3Lm/39/S0tLd98842fn9+uXbuWLVv25ZdfUnVhd+zYMWXKlGXLlp0+fbq9vb2tre3gwYNbt25NTk5mNIf8f/7nfy5fvtzT09PS0rJr1y6SJH19fTW7iZFjWoUMdh0AmsH68faQ98V4PB49YIIgBALBjBkzPvjgg0uXLin3b21tXbVq1eTJk42NjcePH+/v73/27Fm8SM0CYhUVFdHR0S+88AKehPjyyy+npaVRr9BSvQnV1K9gNmSFLlKNKmRjadeRcD9dydN8ns7u/XSCZPViAUEQx48fX7BgAYsxAH1x4sSJ8PBwdv9idQq+xpKdnc12INrGet7Qv/N0AABgF+RNAJ4Wt2/fDg4OxnXkGhsbk5KSPDw8+Hy+UCj08fFRKIyvpr6+vj179ri7u1tYWNjY2Lzxxhv4sYgBOwcHBxMEoVAkJSEhAV+B0SOQNzWMGNzmzZvZjg48vSoqKjw8PPz9/XEduaioqJSUlC1btjQ2NpaWljo4OEil0oSEBEZjdnV1+fr6ZmRk7Nmzp6Wlpby83NzcPDg4+OrVq8qdjxw5MuBV+6ioqMTExI0bNw7ve7GDxWurpA5c3wV6RMv3hXg83iuvvKLL46t/X6i9vd3BwYH+nozAwMCMjAzqY09PD36it7m5Wf0APvjgAz6f39TURLV0dnaamJj8+uuvCj3r6+utrKyWLFmCENq2bZvCUvyeDPVTAet5A443ARj7du3a1dTUtGnTJqolPz8flwvAOBzO1KlTnzx5Qn8uVrXm5uZDhw4tXrzY1taWauTxeN3d3cqv842KigoLCxvsdZVisTg0NHT16tX6Mo0X8iYAYxxJkunp6Z6envb29iq61dbWIoTGjRun5rC4QiCuRqja4cOHr169mpycrKJPSEhIXV0d9YiEjoO8CcYgPEt0ypQpHA7HysrqjTfeOH/+PF60fft2fLmZ+sGfOXMGt1BFVfBLMrq6uoqLi/EiPC0ftxME4eDgUFZW5ufnZ2FhYWZmNmfOHOohqJGMP0oqKyubm5vFYrGKPpmZmTU1Nc7OzlOnTlVz2J9//hkhZGVltXr1akdHRw6HM3HixJiYmLa2Nnq3urq61atXHz58WPUbX1588UWE0Pfff6/m1lnG4jUCUgeuUwA9oub1zcbGxkmTJtna2ubl5bW3t1+/fl0qlRIEQX9qQPnaoru7u7W1Nb1lsOuPYrGYx+NJJBJchLSsrMzV1ZXD4RQWFmpkfHXKqmJqXt88evQoQujjjz8ecOnVq1djYmLwu04vXrw45GgUXFRQKBQuXry4pqbmwYMHmZmZPB7P2dlZJpNR3QICApYvX06PRPn6JkmSuOaLt7e3OptmPW/A8SYYaxITE2/evJmSkjJv3jw+n+/s7PzVV1/Z2dnFxMSM5OWgdF1dXfv375dIJDwez8PDIysrq7e3NzY2ViODU49XaWQ09EfBwAHLUCGEXF1ds7OzV65ceeXKFXqFwCF1d3cjhLhcbkZGxuTJky0tLZcuXZqYmFhdXb17927cJy0t7caNG7t27RpyND6fTxAEDlX3Qd4EYw2ehxgYGEi1mJiY+Pn5PX78WFOngTweD59XYjNmzLC3t6+srNTIz76wsLCtrU0ikYx8KAwnOGNj48E6nDt3LjU1VfXVT2X4Kd65c+fSLzIEBQWhP06379y5s2bNmsOHDys87zsYIyMj6h0EOg7yJhhTcJVPU1NThatp+J5vU1OTRrZiaWmp0GJjY4MQamlp0cj4mmVqaooQot4ipSlOTk4IIWtra3oj3g/37t1DCOHrJLNnz6amMON5SBs3bsQff//9d/q6crl8tF9HqCmQN8GYYmJiIhAIuru7Hz58SG/HZ+hCoRB/NDAw6O3tpXeQyWQKQ1GVopS1trYqnEfjjImzxsjH1yw7OzuEEL6AqEH4xpfCITbeD/j/UitWrFC4LKhwffPZZ5+lVuzo6CBJEoeq+yBvgrEGl5enz2jp6ekpKCjgcrkBAQG4xc7Orr6+nurQ1NR0584dhXHMzMyo3Pf8888fOnSIWtTd3V1WVkZ9/PXXXxsaGsRiMfWzH+H4moVnU+KXaiiTy+UuLi7DGPbNN98UiURnzpzB1wEw/ETQW2+9xXQ0vLuUJ37qJsibYKzZsWPHpEmT4uLi8vPzHz58WF1d/c477zQ2NqamplIztP39/RsaGvbu3dvZ2VlTUxMbG0sdKlJeeuml6urqu3fvlpSU1NbWent7U4sEAsH69etLSkq6urrKy8sjIiI4HE5qairVYSTjMy2rOiSxWGxjY1NZWam8KC0tjcfjrV27VnlRREQEQRA3b94cbFgTE5P09PTW1taFCxfeuHFDJpMdPXp0x44dnp6eMTExTIPEr4MebGK8ztHivfsBILbnEwA9ov5zlvfv34+Li5s0aZKxsbFAIAgICCgoKKB3kMlkkZGRdnZ2XC7Xy8urrKzM3d0d/yLWrVuH+1RVVXl7e/N4PEdHx3379lHrisVikUh07dq1gIAACwsLLpfr4+NTVFSkqfGHLKtKUf85y/Xr1xsZGdXX1yu0HzhwgMvlxsfHK6/i6+trbm4ul8tVj3zhwoWAgACBQMDhcFxcXDZv3vzo0SPlbtHR0QqZJyAggN4hLCxMJBL19vaq83VYzxuQN4He0JG6xThvsh0FSTLJmzKZTCQS0Z9PV+3BgwdcLjcyMnIE0TGAn08/duyYmv1Zzxtwng7A2CcQCPLy8nJycvDL+FQjSTImJobP52/btk0LsdXW1kql0sTExIULF2phcxoBeROAp4Kbm1t5efnp06dx/U0Vmpuba2trCwoKqOkHo+rgwYNJSUlJSUla2JamQN4EQF34ufLKysr6+nqCIDZs2MB2RMw4OTnl5+fj+psqCIXCoqKiadOmaSeqnTt36tGRJgYvEQRAXfHx8fHx8WxHAdgHx5sAAMAM5E0AAGAG8iYAADADeRMAAJhh/77Qnj17srOz2Y4C6AH8hHVYWBjbgegK/Cwm7BDtI0jNlUcdBvhPDgZz+vRpNzc37UwhBHpn1apVGixRyhTLeROAweAXwy5YsIDtQABQBNc3AQCAGcibAADADORNAABgBvImAAAwA3kTAACYgbwJAADMQN4EAABmIG8CAAAzkDcBAIAZyJsAAMAM5E0AAGAG8iYAADADeRMAAJiBvAkAAMxA3gQAAGYgbwIAADOQNwEAgBnImwAAwAzkTQAAYAbyJgAAMAN5EwAAmIG8CQAAzEDeBAAAZiBvAgAAM5A3AQCAGcibAADADORNAABgBvImAAAwA3kTAACYgbwJAADMQN4EAABmIG8CAAAzRmwHAMB/yWQykiTpLV1dXQ8ePKA+mpubGxsbaz0uABQRCn+pALDF19f3/Pnzgy01NDSsr6+3tbXVZkgADAjO04GuWLRoEUEQAy4yMDB49dVXIWkCHQF5E+iK0NBQI6OBLxwRBLF06VItxwPAYCBvAl1hZWXl7+9vaGiovMjAwCAkJET7IQEwIMibQIdERET09/crNBoZGQUGBgoEAlZCAkAZ5E2gQ4KDg01MTBQanzx5EhERwUo8AAwI8ibQIWZmZiEhIQqTjbhc7ptvvslWSAAog7wJdMs777zT19dHfTQ2Ng4NDeVyuSyGBIACyJtAtwQEBNAvZfb19b3zzjssxgOAMsibQLcYGxsvXLiQw+Hgj5aWln5+fuyGBIACyJtA5yxatKi3txchZGxsHBERMdikTgDYAs9ZAp3T399vb2/f3NyMECoqKnrllVfYjgiAP4HjTaBzDAwMlixZghCys7ObNWsW2+EAoIjlM6ATJ06wGwDQTc888wxCyNPTMzs7m+1YgC6aNWuWg4MDa5snWcXa1wYA6LPjx4+zmLjYv+J+/PjxBQsWsB0F0Dk5OTmhoaH0lhMnToSHh8P/bilhYWEIoafwkHywullaA9c3gY5SSJoA6A7ImwAAwAzkTQAAYAbyJgAAMAN5EwAAmIG8CcDT4vbt28HBwR0dHQihxsbGpKQkDw8PPp8vFAp9fHxyc3OHMWZfX9+ePXvc3d0tLCxsbGzeeOONvLy8weY8BAcHEwSxfft2emNCQsLx48eHsWkWQd4EY19nZ+dzzz03b948tgNhU0VFhYeHh7+/P5/PRwhFRUWlpKRs2bKlsbGxtLTUwcFBKpUmJCQwGrOrq8vX1zcjI2PPnj0tLS3l5eXm5ubBwcFXr15V7nzkyJG8vDzl9qioqMTExI0bNw7ve7EC8iYY+0iS7O/vV34Dh9aYm5t7eXmxtXWEUEdHR1BQ0Ntvv71y5UqqMTk5OTAwkMfjOTk5ffHFFyKRKDk5uaWlRf1h16xZc/ny5R9++OHVV1/lcrkTJkzIyMhQrtiPEGpoaIiLi8OPzyqYMmVKbm5uUlKSHj09CHkTjH0WFhY1NTXfffcd24GwZteuXU1NTZs2baJa8vPz3333Xeojh8OZOnXqkydPrl+/ruaYzc3Nhw4dWrx4Mf39zDwer7u7e/r06Qqdo6KiwsLC/P39BxxKLBaHhoauXr1aLper+5VYBXkTgDGOJMn09HRPT097e3sV3WpraxFC48aNU3PYb7/99smTJ+ocRx8+fPjq1avJyckq+oSEhNTV1Z06dUrNrbML8iYY406ePEn8obu7W6Hl1q1b4eHhlpaW1tbW8+bNq6mpwWslJyfjDg4ODmVlZX5+fhYWFmZmZnPmzCkuLsZ9tm/fjvtQuePMmTO4Bdclocbp6uoqLi7Gi7RfTrSysrK5uVksFqvok5mZWVNT4+zsPHXqVDWH/fnnnxFCVlZWq1evdnR05HA4EydOjImJaWtro3erq6tbvXr14cOHLSwsVIz24osvIoS+//57NbfOMhafjcc33dh9Ph/oEXzXdXjrzp8/HyH0+PFjhZb58+dfuHChs7Pz7NmzXC535syZ9LXEYjGPx5NIJLhPWVmZq6srh8MpLCyk+vB4vFdeeYW+lru7u7W1Nb1FuQ82Z86ccePGlZSUDO9LhYaGhoaGDtnt6NGjCKGPP/54wKVXr16NiYkxMDCwsrK6ePGi+lvHO1AoFC5evLimpubBgweZmZk8Hs/Z2Vkmk1HdAgICli9fTo9k27ZtyqO1t7cjhLy9vdXZNOt5A443wVMtMjJSIpHweLy5c+cGBgaWlZXdv3+f3qGrq2v//v24j4eHR1ZWVm9vb2xsrEa23t/fTyWC0dPY2IgQGuwF9K6urtnZ2StXrrxy5crMmTPVHxYfvHO53IyMjMmTJ1taWi5dujQxMbG6unr37t24T1pa2o0bN3bt2jXkaHw+nyAIHKrug7wJnmr0TOHo6IgQamhooHfg8Xj4FBKbMWOGvb19ZWWlRn7hhYWFbW1tEolk5EOpgBOcwtuV6c6dO5eamqr66qcyHo+HEJo7dy79ykNQUBD643T7zp07a9asOXz4MO45JCMjo8ePHzOKgS2QN8FTjX4Uhl8GpzBdydLSUmEVGxsbhBCj+TrsMjU1RQjR366sEU5OTggha2treiPeOffu3UMI5eXltbe3z549m7qajOchbdy4EX/8/fff6evK5XJ9eeEz5E0AVGltbVU4j8YZEycIhJCBgQF+ixxFJpMpDMJuvUg7OzuEEL6AqEH4bpjCcTfeOXhm0ooVKxQuCypc33z22WepFTs6OkiSxKHqPsibAKjS3d1dVlZGffz1118bGhrEYjH1C7ezs6uvr6c6NDU13blzR2EQMzMzKrc+//zzhw4dGuWo/wTPpqyrqxtwqVwud3FxGcawb775pkgkOnPmDL4OgOEngt566y2mo+F9qDzxUzdB3gRAFYFAsH79+pKSkq6urvLy8oiICA6Hk5qaSnXw9/dvaGjYu3dvZ2dnTU1NbGwsdShKeemll6qrq+/evVtSUlJbW+vt7Y3bfX19ra2tS0tLR/UriMViGxubyspK5UVpaWk8Hm/t2rXKiyIiIgiCuHnz5mDDmpiYpKent7a2Lly48MaNGzKZ7OjRozt27PD09IyJiWEaZEVFBUJosInxOkeL9+4HgNieTwD0yPDmISmUq1i8eHFJSQm95aOPPiL/fCYeGBiI1xWLxSKR6Nq1awEBARYWFlwu18fHp6ioiD6+TCaLjIy0s7PjcrleXl5lZWXu7u54nHXr1uE+VVVV3t7ePB7P0dFx37591Lre3t5WVlYXLlwY3g5Rcx4SSZLr1683MjKqr69XaD9w4ACXy42Pj1dexdfX19zcXC6Xqx75woULAQEBAoGAw+G4uLhs3rz50aNHyt2io6MVMk9AQAC9Q1hYmEgk6u3tVefrsJ43IG8CvTGS+ZvDg/OmNrfIiPp5UyaTiUSi6OhoNUd+8OABl8uNjIwcQXQMVFRUEARx7NgxNfuznjf04Dzd3NycoMETdMVi8fLlyy9dusR2dKPiwYMHBw4c8PX1HTduHJfLfe655xYvXjzgeZZqT+GuAwMSCAR5eXk5OTn79u0bsjNJkjExMXw+f9u2bVqIrba2ViqVJiYmLly4UAub0wg9yJudnZ2//PILQmj+/PkkSfb19VVVVW3durWqqsrDw+Mvf/nLo0eP2I5Rw9asWfO3v/1t/vz5165da21tPXz4cEVFhbu7+8mTJxmN8xTuOjAYNze38vLy06dP4/qbKjQ3N9fW1hYUFAiFQi0EdvDgwaSkpKSkJC1sS2NYPNYl1T7epv/46fD17ODgYOq5i7Hhr3/96/vvv09vwVfNn3vuOaZDjaVdp83z9E8//ZT+M8HXQHWN+ufpY4yaeWP06MHxpgqffPKJp6fnt99++/XXX7Mdiyalp6cfPHiQ3iIWi7lcbk1NDamhZ/LG6q7TFIVbJQolysFTTr/zJkEQuA7r/v372Y5ldHV1dT1+/Hj69OmamkH99Ow6ADROv/Mm+uOhhdLSUuoxsnv37sXExDg5OXE4nPHjx0ulUnySi9QrIIYQ6unp2bRpk4uLi5mZ2bhx44KCgnCpQaqDik2opmYAyrKzsxFCH330EcPdo4p+7ToAdAhL1wf+C43s+iZJklQhgIaGBpIkGxoaJk6caGtre+rUqYcPH165csXHx8fU1JQ+RW7IAmKRkZECgeCHH3549OhRU1NTfHw8Quj8+fN4qTqbUE2dCmZ0TU1Ntra2ypNC1KlCNpZ2nfbnIek4uL7JWgAsbpvURN6k7gjjHz8u/f/ll19SHRobG01MTNzd3akW/OPHb93DQkNDEUL37t3DHydNmjRr1iz6VpydnakfvzqbUG3IAOju37//4osvhoeHK89A9vHxGXLW9FjadZA3FUDeZIu2S09rHC4rYGxsjCtsnzx50sDAgP7mQqFQOG3atEuXLtXV1Tk4OFDtAxYQw4O8/vrrn3/++fvvv79s2bKZM2caGhrSX7qi/iZUUxEApaurKyAgYOrUqUeOHDE0NFQYobCwUM1tDUhPd11YWNiwv/IYgx/QhB2ifXp/fbOoqAghJJFIjI2Ne3p62tvb+/v7BQIBfb43Luh/48YN+ooqCojt27fvyJEjtbW1fn5+fD7/9ddfp57VY7QJ1YasYCaXy/HDZ5mZmcpJc+T0d9cBwC79Pt7s7+/Hzz+sWLECIWRiYmJpadnZ2fn48eORvMUFFwpcsmRJX19fYWFhcnKyVCrdvXv3qlWrNLUJdURHR/f09OTm5lIbevbZZ7Oysl5++eWRD66/uw7fIgPojyPNp3CHsFuXD+n78WZiYuLFixdDQkKoUxWpVCqXy6k3Z2E7d+6cMGGC+q8YtbS0rKqqQggZGxu/9tpr+FYy9aY9jWxiSJs3b7569eo333wz4NuoR24M7zoARpv+5c3+/v6WlpZvvvnGz89v165dy5Yt+/LLL6n//+zYsWPKlCnLli07ffp0e3t7W1vbwYMHt27dmpyczOgY53/+538uX77c09PT0tKya9cukiR9fX01uwkVMjIytmzZ8tNPP1lYWNBPaRXmKjGtQvY07DoAtIHFe1KkevfFFF5OQhCEQCCYMWPGBx98cOnSJeX+ra2tq1atmjx5srGx8fjx4/39/c+ePYsXqVlArKKiIjo6+oUXXsCTEF9++eW0tDT684gqNqGamgEEBgYO9t+LPutoyCpkY2nXkXA/XQncT2cLQY7yu/RUIwji+PHjCxYsYDEGoC9OnDgRHh7O7l+sTnmar2+ymzf07zwdADA8t2/fDg4OxvWQGhsbk5KSPDw8+Hy+UCj08fFRKPCspr6+vj179ri7u1tYWNjY2Lzxxht4eu+AnYODgwmCUHjYPyEhAZ9J6BHImwA8FSoqKjw8PPz9/fl8PkIoKioqJSVly5YtjY2NpaWlDg4OUqk0ISGB0ZhdXV2+vr4ZGRl79uxpaWkpLy83NzcPDg6+evWqcucjR47gtw8piIqKSkxM3Lhx4/C+Fysgb2oYMbjNmzezHR1gwNzcHD/Cr6fj03V0dAQFBb399tu4mAuWnJwcGBjI4/GcnJy++OILkUiUnJzM6P3Ga9asuXz58g8//PDqq69yudwJEyZkZGQMOAOkoaEhLi4OvwdYwZQpU3Jzc5OSkk6cODGMr8YKuImpYXD1DeigXbt2NTU1bdq0iWrJz8+nd+BwOFOnTq2vr79+/brye+UG1NzcfOjQoffffx+/9Rfj8Xj011tSoqKiwsLCvL298auAFYjF4tDQ0NWrV0ulUr2YWQHHmwCMcSRJpqene3p62tvbq+hWW1uLEBo3bpyaw+JKV+ocMh8+fPjq1avJyckq+oSEhNTV1VFTfXUc5E0wBuHZTlOmTOFwOFZWVm+88cb58+fxou3bt+PLJtQP/syZM7iFKg6QnJxMEERXV1dxcTFehA+CcDtBEA4ODmVlZX5+fhYWFmZmZnPmzKEm849k/FFSWVnZ3NwsFotV9MnMzKypqXF2dp46daqaw+IHZK2srFavXu3o6MjhcCZOnBgTE9PW1kbvVldXt3r16sOHD1tYWKgY7cUXX0QIff/992punWUszoEidWAeFtAjas7fbGxsnDRpkq2tbV5eXnt7+/Xr16VSKUEQaWlpVB8ej/fKK6/Q13J3d7e2tqa3KPfBxGIxj8eTSCS4mF5ZWZmrqyuHwyksLNTI+OqUB8TUnL+JT40//vjjAZdevXo1JiYGv7Pv4sWLQ45GwcWxhELh4sWLa2pqHjx4kJmZyePxnJ2dZTIZ1S0gIGD58uX0SLZt26Y8Wnt7O0LI29tbnU2znjfgeBOMNYmJiTdv3kxJSZk3bx6fz3d2dv7qq6/s7OxiYmKam5s1somurq79+/dLJBIej+fh4ZGVldXb2xsbG6uRwanHBDQyGvqj8BW9Ggudq6trdnb2ypUrr1y5Qq90NSR8HZPL5WZkZEyePNnS0nLp0qWJiYnV1dW7d+/GfdLS0m7cuLFr164hR+Pz+QRB4FB1H+RNMNbgeYj0Z65MTEz8/PweP36sqdNAHo+HzyuxGTNm2NvbV1ZWauRnX1hY2NbWJpFIRj4UhhOcsbHxYB3OnTuXmpqq+uqnMvw02ty5c+kXGYKCgtAfp9t37txZs2bN4cOHFZ5bG4yRkRFVS1vHQd4EYwquVmdqaqpwNQ3f821qatLIViwtLRVa8D1oRpN4tMbU1BQhRL0NRVOcnJwQQtbW1vRGvB/u3buHEMLXSWbPnk1NxcPzkDZu3Ig//v777/R15XI5l8vVbJCjBPImGFNMTEwEAkF3d/fDhw/p7fgMnXohuIGBQW9vL72DTCZTGEpFsbLW1laF82icMakZPCMcX7Ps7OwQQvgCogbhG18Kh9h4P+D/S61YsULhsqDC9c1nn32WWrGjo4MkSRyq7oO8CcaakJAQhBB9RktPT09BQQGXyw0ICMAtdnZ29fX1VIempqY7d+4ojGNmZkblvueff/7QoUPUou7u7rKyMurjr7/+2tDQIBaLqZ/9CMfXrOnTpyOE6urqBlwql8tdXFyGMeybb74pEonOnDlDn7CJnwh66623mI6GdxcOVfdB3gRjzY4dOyZNmhQXF5efn//w4cPq6up33nmnsbExNTWVmqHt7+/f0NCwd+/ezs7Ompqa2NhY5cneL730UnV19d27d0tKSmpra729valFAoFg/fr1JSUlXV1d5eXlERERHA4nNTWV6jCS8ZmWBxySWCy2sbGprKxUXpSWlsbj8dauXau8KCIigiCImzdvDjasiYlJenp6a2vrwoULb9y4IZPJjh49umPHDk9Pz5iYGKZB4tea+vv7M12RHVq8dz8AxPZ8AqBH1K8jd//+/bi4uEmTJhkbGwsEgoCAgIKCAnoHmUwWGRlpZ2fH5XK9vLzKysrc3d3xL2LdunW4T1VVlbe3N4/Hc3R03LdvH7WuWCwWiUTXrl0LCAiwsLDgcrk+Pj5FRUWaGn/I8oAU9evIrV+/3sjIqL6+XqH9wIEDXC43Pj5eeRVfX19zc3PltwEquHDhQkBAgEAg4HA4Li4umzdvfvTokXK36OhohcwTEBBA74BfCdPb26vO12E9b0DeBHpDR+pv4rzJdhQkySRvymQykUgUHR2t5sgPHjzgcrnKr54eJRUVFQRBHDt2TM3+rOcNOE8HYOwTCAR5eXk5OTn4pVKqkSQZExPD5/O3bdumhdhqa2ulUmliYuLChQu1sDmNgLwJwFPBzc2tvLz89OnTuP6mCs3NzbW1tQUFBdT0g4kfVAAAFiBJREFUg1F18ODBpKSkpKQkLWxLUyBvAqAu/Fx5ZWVlfX09QRAbNmxgOyJmnJyc8vPzcf1NFYRCYVFR0bRp07QT1c6dO/XoSBPTg5JNAOiI+Pj4+Ph4tqMA7IPjTQAAYAbyJgAAMAN5EwAAmIG8CQAAzEDeBAAAhlicc0/CK8wAAMPC7vNCLM9D0rv3zQOtCQ8Pj4uL02D5XjCWzJo1i8WtE3DQB3QTQRDHjx9fsGAB24EAoAiubwIAADOQNwEAgBnImwAAwAzkTQAAYAbyJgAAMAN5EwAAmIG8CQAAzEDeBAAAZiBvAgAAM5A3AQCAGcibAADADORNAABgBvImAAAwA3kTAACYgbwJAADMQN4EAABmIG8CAAAzkDcBAIAZyJsAAMAM5E0AAGAG8iYAADADeRMAAJiBvAkAAMxA3gQAAGYgbwIAADOQNwEAgBnImwAAwAzkTQAAYAbyJgAAMAN5EwAAmIG8CQAAzEDeBAAAZozYDgCA/zp27NjDhw/pLf/6179kMhn1MSQkZPz48VqPCwBFBEmSbMcAAEIIvffee5mZmcbGxvgj/sskCAIh9OTJE3Nz85aWFhMTEzZDBAAhBOfpQHcsWrQIIdT3B7lcLpfL8b8NDQ3DwsIgaQIdAcebQFfI5XJbW9u2trYBlxYUFPj6+mo5JAAGBMebQFcYGRktWrSIOk+ne+aZZ3x8fLQfEgADgrwJdMiiRYv6+voUGo2NjZcsWWJoaMhKSAAog/N0oENIkpwwYUJdXZ1C+8WLF2fOnMlKSAAog+NNoEMIgoiIiFA4VXd0dPTw8GArJACUQd4EukXhVN3Y2Pi9997Ds5EA0BFwng50jouLy/Xr16mPV65cmTZtGovxAKAAjjeBzlmyZAl1qj516lRImkDXQN4EOiciIkIulyOEjI2N3333XbbDAUARnKcDXeTh4XHp0iWCIG7dujVhwgS2wwHgT+B4E+iipUuXIoQ8PT0haQIdpAf1kEpKSj777DO2owBa1d3dTRBET09PWFgY27EArZJIJKtWrWI7iiHowfHm3bt3c3Jy2I4CjK6cnBz6dHdTU1NbW1sHBwcWQ2JRXV3d0/k3X1paWlJSwnYUQ9OD400sOzub7RDAKCII4sMPP1ywYAHV8vvvvz/77LMshsSiEydOhIeHP4V/8/pyeqEHx5vg6fTUJk2g+yBvAgAAM5A3AQCAGcibAADADORNAPTe7du3g4ODOzo6EEKNjY1JSUkeHh58Pl8oFPr4+OTm5g5jzL6+vj179ri7u1tYWNjY2Lzxxht5eXmDPSYTHBxMEMT27dvpjQkJCcePHx/GpnUf5E2gxzo7O5977rl58+axHQibKioqPDw8/P39+Xw+QigqKiolJWXLli2NjY2lpaUODg5SqTQhIYHRmF1dXb6+vhkZGXv27GlpaSkvLzc3Nw8ODr569apy5yNHjuTl5Sm3R0VFJSYmbty4cXjfS5dB3gR6jCTJ/v7+/v5+tgIwNzf38vJia+sIoY6OjqCgoLfffnvlypVUY3JycmBgII/Hc3Jy+uKLL0QiUXJycktLi/rDrlmz5vLlyz/88MOrr77K5XInTJiQkZEx4HvxGhoa4uLilixZorxoypQpubm5SUlJJ06cGMZX02WQN4Ees7CwqKmp+e6779gOhDW7du1qamratGkT1ZKfn08vhsLhcKZOnfrkyRN6aT7VmpubDx06tHjxYltbW6qRx+N1d3dPnz5doXNUVFRYWJi/v/+AQ4nF4tDQ0NWrV+NCLWMG5E0A9BVJkunp6Z6envb29iq61dbWIoTGjRun5rDffvvtkydP1DmOPnz48NWrV5OTk1X0CQkJqaurO3XqlJpb1wuQN4G+OnnyJPGH7u5uhZZbt26Fh4dbWlpaW1vPmzevpqYGr5WcnIw7ODg4lJWV+fn5WVhYmJmZzZkzp7i4GPfZvn077kPljjNnzuCWZ555hj5OV1dXcXExXmRkpO2n7yorK5ubm8VisYo+mZmZNTU1zs7OU6dOVXPYn3/+GSFkZWW1evVqR0dHDoczceLEmJgYhVc019XVrV69+vDhwxYWFipGe/HFFxFC33//vZpb1w+kzsO35NiOAowuhNDx48eHseL8+fMRQo8fP1ZomT9//oULFzo7O8+ePcvlcmfOnElfSywW83g8iUSC+5SVlbm6unI4nMLCQqoPj8d75ZVX6Gu5u7tbW1vTW5T7YHPmzBk3blxJSckwvhGp9t/80aNHEUIff/zxgEuvXr0aExNjYGBgZWV18eJF9beOd6BQKFy8eHFNTc2DBw8yMzN5PJ6zs7NMJqO6BQQELF++nB7Jtm3blEdrb29HCHl7e6uz6dDQ0NDQUPVDZQscb4KxKTIyUiKR8Hi8uXPnBgYGlpWV3b9/n96hq6tr//79uI+Hh0dWVlZvb29sbKxGtt7f349/YBoZbTCNjY0IIYFAMOBSV1fX7OzslStXXrlyhdHbQPHBO5fLzcjImDx5sqWl5dKlSxMTE6urq3fv3o37pKWl3bhxY9euXUOOxufzCYLAoY4ZkDfB2ETPFI6OjgihhoYGegcej4dPIbEZM2bY29tXVlZq5BdeWFjY1tYmkUhGPpQKOMEpvP6T7ty5c6mpqaqvfirj8XgIoblz59KvPAQFBaE/Trfv3LmzZs2aw4cP455DMjIyevz4MaMYdBzkTTA20Y/COBwOQkhhupKlpaXCKjY2NgghRvN12GVqaooQor/+UyOcnJwQQtbW1vRGvHPu3buHEMrLy2tvb589ezZ1NRnPQ9q4cSP++Pvvv9PXlcvlXC5Xs0GyC/ImeEq1trYqnEfjjIkTBELIwMCgt7eX3kEmkykMwu4Liu3s7BBC+AKiBuG7YQrH3Xjn4JlJK1asULjep3B9k17LqqOjgyRJHOqYAXkTPKW6u7vLysqoj7/++mtDQ4NYLKZ+4XZ2dvX19VSHpqamO3fuKAxiZmZG5dbnn3/+0KFDoxz1n+DZlPR6z3RyudzFxWUYw7755psikejMmTP4OgCGnwh66623mI6G96HyxE+9BnkTPKUEAsH69etLSkq6urrKy8sjIiI4HE5qairVwd/fv6GhYe/evZ2dnTU1NbGxsdShKOWll16qrq6+e/duSUlJbW2tt7c3bvf19bW2ti4tLR3VryAWi21sbCorK5UXpaWl8Xi8tWvXKi+KiIggCOLmzZuDDWtiYpKent7a2rpw4cIbN27IZLKjR4/u2LHD09MzJiaGaZAVFRUIocEmxusrLd67HyaYh/Q0QMznISmUq1i8eLHCKxY++ugj8s9n4oGBgXhdsVgsEomuXbsWEBBgYWHB5XJ9fHyKioro48tkssjISDs7Oy6X6+XlVVZW5u7ujsdZt24d7lNVVeXt7c3j8RwdHfft20et6+3tbWVldeHCheHtDfX/5tevX29kZFRfX6/QfuDAAS6XGx8fr7yKr6+vubm5XC5XPfKFCxcCAgIEAgGHw3Fxcdm8efOjR4+Uu0VHRyuklICAAHqHsLAwkUjU29urztfRl3lIepCPIG8+DYaRN0cC502tbY4p9f/mZTKZSCSKjo5Wc+QHDx5wudzIyMgRRMdARUUFQRDHjh1Ts7++5E04TwdAjwkEgry8vJycnH379g3ZmSTJmJgYPp+/bds2LcRWW1srlUoTExMXLlyohc1p0xjMm+Xl5e+9956Tk5OpqamlpeXMmTO3bt2qfCdU35mbmxM0+LEQsVi8fPnyS5cusR0d0B43N7fy8vLTp0/j+psqNDc319bWFhQUCIVCLQR28ODBpKSkpKQkLWxLy8Za3kxMTHz55ZetrKzy8/NlMtnNmzf//ve/5+bmOjs7U08fjw2dnZ2//PILQmj+/PkkSfb19VVVVW3durWqqsrDw+Mvf/nLo0eP2I5RF+HnyisrK+vr6wmC2LBhA9sRaYCTk1N+fj6uv6mCUCgsKiqaNm2adqLauXPn2DvS/C+2LxQMTf1rPfjs48CBAwrtXV1duGz1b7/9xnTrgz2ArCkjGZ+eN+nwXdTg4GDqaT/dh7R7fVPHPbXX9OH6prb9/vvvW7Zseemll5Rv8JmZme3Zs+fhw4fDmEWhjz755BNPT89vv/3266+/ZjsWAMagsZM3Dxw4IJfLB3tvvbe3t729/dmzZ3EtwrGNIAhc/Xv//v1sxwLAGDR28uaPP/6IEFJRixAv+s9//oNGVmBRLwo44u2WlpZSDy/fu3cvJibGycmJw+GMHz9eKpXiCclIvbKVCKGenp5Nmza5uLiYmZmNGzcuKCgIF7ilOqjYBABjCtsXCoam5rUe/HjcTz/9NFiHiIgI9OdihSMpsKgLBRwHu75JkiRVfqahoYEkyYaGhokTJ9ra2p46derhw4dXrlzx8fExNTWlT8wesmxlZGSkQCD44YcfHj161NTUFB8fjxA6f/48XqrOJlRAcH2TBq5v6rixc7yJDVlnQYOFGHS5gKPCiomJibdv3/7ss8/efPNNc3PzadOmff311yRJ/u1vf1NYUUXZyoKCgmnTpr322mtcLtfW1vbTTz91dnYexiYA0Hfaruw/euzt7RsbG1tbWwfrgBcxrUWogooCjiOv/lJYWDiS1XExG2NjY3xZ4OTJkwYGBvT35QqFwmnTpl26dKmurs7BwYFqH7BsJR7k9ddf//zzz99///1ly5bNnDnT0NCQ/qov9TcxmPDw8PDw8JF86zGG3WJLbAkNDWU7hKGNnbzp4+Nz6dKlioqK119/fcAOuPzB7NmzNbXFAQs4NjQ0tLS0sF41q6ioCCEkkUiMjY17enpwqbEBC4PfuHGDntRUlK3ct2+fRCLJzMz08/NDCHl7e0dHR4eEhCCEGG1iMHFxcaNd6FdflJSUpKSk4LP1p8qePXvYDkEtYydvRkdH/+Mf/8jOzk5ISFBeWlRU1NDQEBQUNGHCBKpxhAUWcQFHegcdKeDY39+Pn7pbsWIFQsjExMTS0rKzs/Px48cjufWEy9MuWbKkr6+vsLAwOTlZKpXu3r171apVGtmERCJZsGDBsMMbY1JSUp7CvZGdnc12CGoZO9c3nZ2d//73v//8888HDx5UWPTo0aO4uDhra+uUlBR6+wgLLOpsAcfExMSLFy+GhIRQs7KkUqlcLld4Ymrnzp0TJkxQ/8XWlpaWVVVVCCFjY+PXXnsN34Wn3u+qkU0AoB/YuyWlLkb3FhMTEw0NDT/88MMrV650d3c/ePAgLy/Pzc1NJBKVl5crdMaTHP/3f/9/e/cf0sQbxwH8OdqmS91RUS5OyDkYZT9WMigCESbMwhJavyQEIRIJYklJNcEockThH45vfxgrIoIiCwo2jIhVf0STVJpggdImlTYPtMwVLVmsPx467uvmdbeb7e72ef3n3eNzj/P4sN3z7P38F41G3717d+DAAYqi5s1379ixgyTJDx8+vHz5UqVSvX37Fh83m80kSVZXV3PMp4vpX+h8+q9fv2iafvjwodVqRQgdPnyYnfpF07TRaCwrK+vt7Z2ZmZmenu7u7l66dCl7Cjt5Y8jTp08jhF6/fo1/JEmyqqpqaGgoFovRNH3u3DmEUEdHB/9LcEAwn84C8+kSJ4P/jdB7qL+/v7Gxcc2aNRqNpqioyGKxdHR0sPcvZYgJWMx6gOO8LbEIgiBJcuPGjUePHh0cHExuPz09feLEibKyMrVavXLlSpvN9uTJE3yKZ2xlMBhsbm5et24dXr+5bds2j8fD/ionxyX+CuomG9RNiSMSi7xVqXg9PT0HDx6U2jg3b948NTW10BYFQCiCIO7evZuDT/RSkuY9/w/gJ0vSf8qpnOebAADG+/fv6+rqcLJcJBJxuVwWi0Wn0+n1+qqqqnlR+fz19vaaTKaUU39nzpzJnQUAUDcBUJpgMGixWGw2G06Wa2pq6urqOn/+fCQS6evrKykpsdvtKZedcAiFQnV1dU6nk6bplA2ampqcTmd7e3sG/gDJg7opmCIDHHNKYWEhkxsgx/65zc7O7t69e+/evXhaEuvs7KytrS0oKCgtLb1x4wZFUZ2dnYJ2im9vb9++ffvg4GBRUVHKBkaj8cGDBy6Xq6enR+zfIHnKWb/5z7S2tuKvZgMgQZcvX56cnDx79ixzxOfzsRtoNJry8vKJiYmRkZHkHToXcv36da1Wy93GbDbv27fv5MmTdrs9gyE1EgTvNwFQjkQice3ata1bt3J/nxinKS5fvpx/z38tmtiePXvGx8eZVb1KBXUTyAle6mQ0GjUazbJly3bu3Pns2TN8SvHZgHwMDQ3RNM2RpogQunnzZigUMplM5eXlGR8ATmx4/PhxxnuWluwug+IjZ9ey5RTEY/1mJBIxGAzFxcVer/fr168jIyN2u50gCI/Hw7SRezYglvY9f+vWLfT/sES2N2/eOBwOvIXfq1ev0ug/kUhQFLVkyZKFzuKYgsrKyvQ6l8v6TXi/CWTD6XSOjY11dXXt2rVLp9OZTKbbt2+vXr3a4XAsNMkrlJSzAfnAOVgp01UQQps2bbp3796xY8eGh4fZwVcZpNPpCILAw1AwqJtANvCqw9raWuZIXl5edXX1jx8/MvXBkCMbUHznz58///z586JmPsViMYSQWq1eqMHTp0/dbncG0xSTqVQqJjZbqaBuAnnAUXX5+fnz1sEUFxcjhCYnJzNylZTZgOhP0pX05efnI4SYzVGyIh6P85xEki+om0Ae8vLySJKMxWLRaJR9HH9C1+v1+MeMZAOyj0gkG5AnnMWFHzJmxezsbOLPpjUKBnUTyAbOSGavcfn586ff79dqtTU1NfiIUrMBedqwYQNCaKHYhHg8vnbt2kUdAH5x8DAUDOomkI2LFy8aDIaWlhafzxeNRkdHRw8dOhSJRNxuN/60jhCy2WyfPn26cuXKt2/fQqHQ8ePHk5d2V1RUjI6Ofvz4MRAIhMPhyspK5hRJkm1tbYFA4Pv37wMDAw0NDRqNxu12Mw3E9G+1WlesWNHX15f5l+YPs9m8atUqvLXBPB6Pp6Cg4NSpU8mnGhoaCIIYGxsTPwC8g6nNZhPflaRlczKfH1iHlAsQvxy5qamplpYWg8GgVqtJkqypqfH7/ewGss4GZIi559va2lQq1cTExLzj3d3dWq22tbU1+VesVmthYWE8Hufo1uv1JlcP9gowbP/+/RRFzc3NpTd4uaxDkkE9grqZC3jWzUWF62Z2x4CJuednZmYoimpububZ/suXL1qt9siRI+ldji0YDBIEcefOnbR7kEvdhM/pACgKSZJer/f+/ft4jyluiUTC4XDodLoLFy6IvG44HLbb7U6ns76+XmRX0gd1EwCl2bJly8DAwKNHj3D+JgeapsPhsN/vZxYkpO3q1asul8vlconsRxagbgKgwGzA0tJSn8+H8zc56PX6Fy9erF+/XvwVL126lAvvNDElZz0BwBNkAwJB4P0mAAAIA3UTAACEgboJAADCQN0EAABhZDMvlAubPeW4QCCQ7SFIBX4pcvCeHx8fLykpyfYoeMj2wvu/y51NmQEAsvi+EJFYzPRpAABQHni+CQAAwkDdBAAAYaBuAgCAMFA3AQBAmN/I1Q74MRFjcwAAAABJRU5ErkJggg==\n",
"text/plain": [
"<IPython.core.display.Image object>"
]
},
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"model=get_model_v1( (13,) )\n",
"\n",
"model.summary()\n",
"keras.utils.plot_model( model, to_file='./run/model.png', show_shapes=True, show_layer_names=True, dpi=96)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
]
},
{
"cell_type": "code",
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Train on 354 samples, validate on 152 samples\n",
"Epoch 1/100\n",
"354/354 [==============================] - 1s 2ms/sample - loss: 536.0845 - mae: 21.3335 - mse: 536.0846 - val_loss: 439.6562 - val_mae: 19.3198 - val_mse: 439.6562\n",
"354/354 [==============================] - 0s 216us/sample - loss: 354.0647 - mae: 16.8618 - mse: 354.0648 - val_loss: 231.3198 - val_mae: 13.5154 - val_mse: 231.3199\n",
"354/354 [==============================] - 0s 194us/sample - loss: 155.7450 - mae: 9.9432 - mse: 155.7450 - val_loss: 69.8093 - val_mae: 6.2267 - val_mse: 69.8093\n",
"354/354 [==============================] - 0s 170us/sample - loss: 55.4497 - mae: 5.2375 - mse: 55.4497 - val_loss: 28.5090 - val_mae: 4.0794 - val_mse: 28.5090\n",
"354/354 [==============================] - 0s 172us/sample - loss: 31.6844 - mae: 4.0017 - mse: 31.6844 - val_loss: 21.9792 - val_mae: 3.3949 - val_mse: 21.9792\n",
"354/354 [==============================] - 0s 175us/sample - loss: 24.5126 - mae: 3.4343 - mse: 24.5126 - val_loss: 18.8066 - val_mae: 3.1393 - val_mse: 18.8066\n",
"354/354 [==============================] - 0s 176us/sample - loss: 21.5744 - mae: 3.2008 - mse: 21.5744 - val_loss: 16.6019 - val_mae: 3.0136 - val_mse: 16.6019\n",
"354/354 [==============================] - 0s 174us/sample - loss: 19.6449 - mae: 3.0134 - mse: 19.6449 - val_loss: 15.8376 - val_mae: 2.9888 - val_mse: 15.8376\n",
"354/354 [==============================] - 0s 170us/sample - loss: 18.6252 - mae: 2.9144 - mse: 18.6252 - val_loss: 15.3001 - val_mae: 2.9692 - val_mse: 15.3001\n",
"354/354 [==============================] - 0s 173us/sample - loss: 17.0981 - mae: 2.7810 - mse: 17.0981 - val_loss: 14.8818 - val_mae: 2.9166 - val_mse: 14.8818\n",
"354/354 [==============================] - 0s 169us/sample - loss: 16.0782 - mae: 2.6914 - mse: 16.0782 - val_loss: 14.3696 - val_mae: 2.8419 - val_mse: 14.3696\n",
"354/354 [==============================] - 0s 174us/sample - loss: 15.5677 - mae: 2.6683 - mse: 15.5677 - val_loss: 13.9912 - val_mae: 2.8576 - val_mse: 13.9912\n",
"354/354 [==============================] - 0s 185us/sample - loss: 14.8428 - mae: 2.5991 - mse: 14.8428 - val_loss: 14.3104 - val_mae: 2.8784 - val_mse: 14.3104\n",
"354/354 [==============================] - 0s 174us/sample - loss: 14.3035 - mae: 2.5320 - mse: 14.3035 - val_loss: 13.7014 - val_mae: 2.7929 - val_mse: 13.7014\n",
"354/354 [==============================] - 0s 174us/sample - loss: 13.6874 - mae: 2.4875 - mse: 13.6874 - val_loss: 13.2517 - val_mae: 2.7346 - val_mse: 13.2517\n",
"354/354 [==============================] - 0s 169us/sample - loss: 13.3831 - mae: 2.4476 - mse: 13.3831 - val_loss: 13.0551 - val_mae: 2.7135 - val_mse: 13.0551\n",
"354/354 [==============================] - 0s 173us/sample - loss: 13.1403 - mae: 2.4844 - mse: 13.1403 - val_loss: 13.0990 - val_mae: 2.6770 - val_mse: 13.0990\n",
"354/354 [==============================] - 0s 167us/sample - loss: 12.7370 - mae: 2.3913 - mse: 12.7370 - val_loss: 12.6409 - val_mae: 2.6264 - val_mse: 12.6409\n",
"354/354 [==============================] - 0s 175us/sample - loss: 12.3546 - mae: 2.3600 - mse: 12.3546 - val_loss: 12.5174 - val_mae: 2.7141 - val_mse: 12.5174\n",
"354/354 [==============================] - 0s 166us/sample - loss: 12.1547 - mae: 2.3828 - mse: 12.1547 - val_loss: 12.1408 - val_mae: 2.6063 - val_mse: 12.1408\n",
"354/354 [==============================] - 0s 179us/sample - loss: 11.8888 - mae: 2.3270 - mse: 11.8888 - val_loss: 11.9719 - val_mae: 2.5967 - val_mse: 11.9719\n",
"354/354 [==============================] - 0s 189us/sample - loss: 11.6794 - mae: 2.3303 - mse: 11.6794 - val_loss: 11.8047 - val_mae: 2.5511 - val_mse: 11.8047\n",
"354/354 [==============================] - 0s 170us/sample - loss: 11.3378 - mae: 2.3021 - mse: 11.3378 - val_loss: 12.4017 - val_mae: 2.6941 - val_mse: 12.4017\n",
"354/354 [==============================] - 0s 186us/sample - loss: 10.9016 - mae: 2.3034 - mse: 10.9016 - val_loss: 12.3386 - val_mae: 2.5292 - val_mse: 12.3386\n",
"354/354 [==============================] - 0s 202us/sample - loss: 10.7163 - mae: 2.3021 - mse: 10.7163 - val_loss: 12.2563 - val_mae: 2.5674 - val_mse: 12.2563\n",
"354/354 [==============================] - 0s 192us/sample - loss: 10.8481 - mae: 2.2104 - mse: 10.8481 - val_loss: 11.2348 - val_mae: 2.4873 - val_mse: 11.2348\n",
"354/354 [==============================] - 0s 192us/sample - loss: 10.7446 - mae: 2.2232 - mse: 10.7446 - val_loss: 11.4269 - val_mae: 2.5686 - val_mse: 11.4269\n",
"354/354 [==============================] - 0s 187us/sample - loss: 10.1381 - mae: 2.1918 - mse: 10.1381 - val_loss: 13.4143 - val_mae: 2.6246 - val_mse: 13.4143\n",
"354/354 [==============================] - 0s 176us/sample - loss: 10.5442 - mae: 2.1971 - mse: 10.5442 - val_loss: 11.4616 - val_mae: 2.4741 - val_mse: 11.4616\n",
"354/354 [==============================] - 0s 218us/sample - loss: 10.2099 - mae: 2.1867 - mse: 10.2099 - val_loss: 11.4631 - val_mae: 2.4684 - val_mse: 11.4631\n",
"354/354 [==============================] - 0s 202us/sample - loss: 9.5920 - mae: 2.1342 - mse: 9.5920 - val_loss: 12.5109 - val_mae: 2.6033 - val_mse: 12.5109\n",
"354/354 [==============================] - 0s 179us/sample - loss: 9.9940 - mae: 2.1424 - mse: 9.9940 - val_loss: 11.1528 - val_mae: 2.4392 - val_mse: 11.1528\n",
"354/354 [==============================] - 0s 197us/sample - loss: 9.5950 - mae: 2.1156 - mse: 9.5950 - val_loss: 12.0327 - val_mae: 2.6225 - val_mse: 12.0327\n",
"354/354 [==============================] - 0s 228us/sample - loss: 9.6256 - mae: 2.0962 - mse: 9.6256 - val_loss: 10.8296 - val_mae: 2.4168 - val_mse: 10.8296\n",
"354/354 [==============================] - 0s 179us/sample - loss: 9.3365 - mae: 2.1271 - mse: 9.3365 - val_loss: 10.7088 - val_mae: 2.5094 - val_mse: 10.7088\n",
"354/354 [==============================] - 0s 184us/sample - loss: 9.2796 - mae: 2.0914 - mse: 9.2796 - val_loss: 10.7439 - val_mae: 2.4282 - val_mse: 10.7439\n",
"354/354 [==============================] - 0s 186us/sample - loss: 8.7178 - mae: 2.0390 - mse: 8.7178 - val_loss: 13.1923 - val_mae: 2.5942 - val_mse: 13.1923\n",
"354/354 [==============================] - 0s 202us/sample - loss: 8.8195 - mae: 2.0927 - mse: 8.8195 - val_loss: 10.9034 - val_mae: 2.5152 - val_mse: 10.9034\n",
"354/354 [==============================] - 0s 190us/sample - loss: 8.9152 - mae: 2.0784 - mse: 8.9152 - val_loss: 11.3023 - val_mae: 2.4404 - val_mse: 11.3023\n",
"354/354 [==============================] - 0s 196us/sample - loss: 8.8418 - mae: 2.0187 - mse: 8.8418 - val_loss: 10.7721 - val_mae: 2.5067 - val_mse: 10.7721\n",
"354/354 [==============================] - 0s 181us/sample - loss: 8.6890 - mae: 2.0260 - mse: 8.6890 - val_loss: 11.0856 - val_mae: 2.5693 - val_mse: 11.0856\n",
"354/354 [==============================] - 0s 174us/sample - loss: 8.4768 - mae: 2.0517 - mse: 8.4768 - val_loss: 11.3269 - val_mae: 2.4414 - val_mse: 11.3269\n",
"354/354 [==============================] - 0s 171us/sample - loss: 8.5229 - mae: 1.9943 - mse: 8.5229 - val_loss: 10.4669 - val_mae: 2.4794 - val_mse: 10.4669\n",
"354/354 [==============================] - 0s 172us/sample - loss: 8.0707 - mae: 1.9900 - mse: 8.0707 - val_loss: 11.6943 - val_mae: 2.5034 - val_mse: 11.6943\n",
"354/354 [==============================] - 0s 172us/sample - loss: 8.1752 - mae: 1.9715 - mse: 8.1752 - val_loss: 10.6043 - val_mae: 2.3636 - val_mse: 10.6043\n",
"354/354 [==============================] - 0s 174us/sample - loss: 8.2037 - mae: 1.9739 - mse: 8.2037 - val_loss: 10.5447 - val_mae: 2.3784 - val_mse: 10.5447\n",
"354/354 [==============================] - 0s 173us/sample - loss: 7.9866 - mae: 1.9744 - mse: 7.9866 - val_loss: 10.6746 - val_mae: 2.4501 - val_mse: 10.6746\n",
"354/354 [==============================] - 0s 165us/sample - loss: 7.7703 - mae: 1.9705 - mse: 7.7703 - val_loss: 10.4041 - val_mae: 2.4620 - val_mse: 10.4041\n",
"354/354 [==============================] - 0s 182us/sample - loss: 7.8774 - mae: 1.9809 - mse: 7.8774 - val_loss: 10.6823 - val_mae: 2.4969 - val_mse: 10.6823\n",
"354/354 [==============================] - 0s 167us/sample - loss: 7.8654 - mae: 1.9666 - mse: 7.8654 - val_loss: 10.6351 - val_mae: 2.4191 - val_mse: 10.6351\n",
"354/354 [==============================] - 0s 180us/sample - loss: 7.6560 - mae: 1.9236 - mse: 7.6560 - val_loss: 10.3918 - val_mae: 2.3943 - val_mse: 10.3918\n",
"354/354 [==============================] - 0s 170us/sample - loss: 7.3560 - mae: 1.8763 - mse: 7.3560 - val_loss: 10.3560 - val_mae: 2.5009 - val_mse: 10.3560\n",
"354/354 [==============================] - 0s 163us/sample - loss: 7.5076 - mae: 1.8973 - mse: 7.5076 - val_loss: 10.5798 - val_mae: 2.4698 - val_mse: 10.5798\n",
"354/354 [==============================] - 0s 164us/sample - loss: 7.4315 - mae: 1.8962 - mse: 7.4315 - val_loss: 10.0018 - val_mae: 2.3756 - val_mse: 10.0018\n",
"354/354 [==============================] - 0s 170us/sample - loss: 7.2476 - mae: 1.9127 - mse: 7.2476 - val_loss: 10.0664 - val_mae: 2.4074 - val_mse: 10.0664\n",
"354/354 [==============================] - 0s 168us/sample - loss: 7.1336 - mae: 1.8297 - mse: 7.1336 - val_loss: 10.5519 - val_mae: 2.4670 - val_mse: 10.5519\n",
"354/354 [==============================] - 0s 177us/sample - loss: 7.0707 - mae: 1.8462 - mse: 7.0707 - val_loss: 11.4684 - val_mae: 2.7035 - val_mse: 11.4684\n",
"354/354 [==============================] - 0s 173us/sample - loss: 6.9632 - mae: 1.8780 - mse: 6.9632 - val_loss: 10.6361 - val_mae: 2.4145 - val_mse: 10.6361\n",
"354/354 [==============================] - 0s 208us/sample - loss: 7.1218 - mae: 1.8522 - mse: 7.1218 - val_loss: 10.3080 - val_mae: 2.3628 - val_mse: 10.3080\n",
"354/354 [==============================] - 0s 261us/sample - loss: 6.7623 - mae: 1.7823 - mse: 6.7623 - val_loss: 10.3923 - val_mae: 2.3174 - val_mse: 10.3923\n",
"354/354 [==============================] - 0s 166us/sample - loss: 6.9012 - mae: 1.8504 - mse: 6.9012 - val_loss: 10.1488 - val_mae: 2.3802 - val_mse: 10.1488\n",
"354/354 [==============================] - 0s 171us/sample - loss: 6.6419 - mae: 1.8210 - mse: 6.6419 - val_loss: 10.7578 - val_mae: 2.5222 - val_mse: 10.7578\n",
"354/354 [==============================] - 0s 181us/sample - loss: 6.5397 - mae: 1.8096 - mse: 6.5397 - val_loss: 10.5892 - val_mae: 2.5217 - val_mse: 10.5892\n",
"354/354 [==============================] - 0s 171us/sample - loss: 6.4273 - mae: 1.7990 - mse: 6.4273 - val_loss: 10.7066 - val_mae: 2.4491 - val_mse: 10.7066\n",
"354/354 [==============================] - 0s 164us/sample - loss: 6.2635 - mae: 1.7888 - mse: 6.2635 - val_loss: 10.2444 - val_mae: 2.4960 - val_mse: 10.2444\n",
"354/354 [==============================] - 0s 173us/sample - loss: 6.3313 - mae: 1.7769 - mse: 6.3313 - val_loss: 10.1284 - val_mae: 2.3855 - val_mse: 10.1284\n",
"354/354 [==============================] - 0s 169us/sample - loss: 6.2141 - mae: 1.7620 - mse: 6.2141 - val_loss: 10.3170 - val_mae: 2.4570 - val_mse: 10.3170\n",
"354/354 [==============================] - 0s 183us/sample - loss: 6.1732 - mae: 1.7589 - mse: 6.1732 - val_loss: 9.7494 - val_mae: 2.3912 - val_mse: 9.7494\n",
"354/354 [==============================] - 0s 173us/sample - loss: 6.1812 - mae: 1.7704 - mse: 6.1812 - val_loss: 10.7702 - val_mae: 2.3626 - val_mse: 10.7702\n",
"354/354 [==============================] - 0s 171us/sample - loss: 6.1634 - mae: 1.8019 - mse: 6.1634 - val_loss: 9.6836 - val_mae: 2.3618 - val_mse: 9.6836\n",
"354/354 [==============================] - 0s 169us/sample - loss: 6.0410 - mae: 1.7080 - mse: 6.0410 - val_loss: 9.8525 - val_mae: 2.3718 - val_mse: 9.8525\n",
"354/354 [==============================] - 0s 166us/sample - loss: 5.7556 - mae: 1.7068 - mse: 5.7556 - val_loss: 11.4228 - val_mae: 2.4962 - val_mse: 11.4228\n",
"354/354 [==============================] - 0s 176us/sample - loss: 5.8854 - mae: 1.7138 - mse: 5.8854 - val_loss: 9.8943 - val_mae: 2.4214 - val_mse: 9.8943\n",
"354/354 [==============================] - 0s 177us/sample - loss: 5.6033 - mae: 1.6994 - mse: 5.6033 - val_loss: 10.2695 - val_mae: 2.3981 - val_mse: 10.2695\n",
"354/354 [==============================] - 0s 173us/sample - loss: 5.7909 - mae: 1.6973 - mse: 5.7909 - val_loss: 10.0138 - val_mae: 2.3440 - val_mse: 10.0138\n",
"354/354 [==============================] - 0s 171us/sample - loss: 5.4470 - mae: 1.6519 - mse: 5.4470 - val_loss: 9.7148 - val_mae: 2.4004 - val_mse: 9.7148\n",
"354/354 [==============================] - 0s 176us/sample - loss: 5.6775 - mae: 1.6463 - mse: 5.6775 - val_loss: 10.6783 - val_mae: 2.3670 - val_mse: 10.6783\n",
"354/354 [==============================] - 0s 172us/sample - loss: 5.4289 - mae: 1.7021 - mse: 5.4289 - val_loss: 10.2150 - val_mae: 2.3861 - val_mse: 10.2150\n",
"354/354 [==============================] - 0s 166us/sample - loss: 5.4991 - mae: 1.6477 - mse: 5.4991 - val_loss: 9.6550 - val_mae: 2.3681 - val_mse: 9.6550\n",
"354/354 [==============================] - 0s 176us/sample - loss: 5.3646 - mae: 1.6555 - mse: 5.3646 - val_loss: 11.0607 - val_mae: 2.4424 - val_mse: 11.0607\n",
"354/354 [==============================] - 0s 174us/sample - loss: 5.3874 - mae: 1.6344 - mse: 5.3874 - val_loss: 11.2996 - val_mae: 2.6303 - val_mse: 11.2996\n",
"354/354 [==============================] - 0s 167us/sample - loss: 5.3116 - mae: 1.6345 - mse: 5.3116 - val_loss: 10.2543 - val_mae: 2.3943 - val_mse: 10.2543\n",
"354/354 [==============================] - 0s 166us/sample - loss: 5.1442 - mae: 1.6227 - mse: 5.1442 - val_loss: 10.5314 - val_mae: 2.3998 - val_mse: 10.5314\n",
"354/354 [==============================] - 0s 171us/sample - loss: 5.2872 - mae: 1.6288 - mse: 5.2872 - val_loss: 9.8682 - val_mae: 2.3268 - val_mse: 9.8682\n",
"354/354 [==============================] - 0s 170us/sample - loss: 5.1584 - mae: 1.6282 - mse: 5.1584 - val_loss: 10.2676 - val_mae: 2.4443 - val_mse: 10.2676\n",
"354/354 [==============================] - 0s 173us/sample - loss: 5.0609 - mae: 1.6078 - mse: 5.0609 - val_loss: 10.0901 - val_mae: 2.4020 - val_mse: 10.0901\n",
"354/354 [==============================] - 0s 163us/sample - loss: 5.1753 - mae: 1.6148 - mse: 5.1753 - val_loss: 10.7763 - val_mae: 2.3816 - val_mse: 10.7763\n",
"354/354 [==============================] - 0s 169us/sample - loss: 5.0408 - mae: 1.6055 - mse: 5.0408 - val_loss: 10.1056 - val_mae: 2.3234 - val_mse: 10.1056\n",
"354/354 [==============================] - 0s 173us/sample - loss: 5.0175 - mae: 1.6009 - mse: 5.0175 - val_loss: 9.6620 - val_mae: 2.3334 - val_mse: 9.6620\n",
"354/354 [==============================] - 0s 173us/sample - loss: 4.7522 - mae: 1.5615 - mse: 4.7522 - val_loss: 9.8084 - val_mae: 2.3036 - val_mse: 9.8084\n",
"354/354 [==============================] - 0s 169us/sample - loss: 4.8323 - mae: 1.5873 - mse: 4.8323 - val_loss: 10.7285 - val_mae: 2.4886 - val_mse: 10.7285\n",
"354/354 [==============================] - 0s 165us/sample - loss: 4.8179 - mae: 1.5678 - mse: 4.8179 - val_loss: 10.1033 - val_mae: 2.3372 - val_mse: 10.1033\n",
"354/354 [==============================] - 0s 168us/sample - loss: 4.7970 - mae: 1.5422 - mse: 4.7970 - val_loss: 9.8511 - val_mae: 2.3521 - val_mse: 9.8511\n",
"354/354 [==============================] - 0s 180us/sample - loss: 4.7676 - mae: 1.5674 - mse: 4.7676 - val_loss: 10.1749 - val_mae: 2.4087 - val_mse: 10.1749\n",
"354/354 [==============================] - 0s 170us/sample - loss: 4.7223 - mae: 1.5431 - mse: 4.7222 - val_loss: 10.2481 - val_mae: 2.3268 - val_mse: 10.2481\n",
"354/354 [==============================] - 0s 164us/sample - loss: 4.6685 - mae: 1.5333 - mse: 4.6685 - val_loss: 10.7347 - val_mae: 2.5154 - val_mse: 10.7347\n",
"354/354 [==============================] - 0s 177us/sample - loss: 4.5642 - mae: 1.5675 - mse: 4.5642 - val_loss: 11.3132 - val_mae: 2.4601 - val_mse: 11.3132\n",
"354/354 [==============================] - 0s 177us/sample - loss: 4.3886 - mae: 1.4906 - mse: 4.3886 - val_loss: 12.2466 - val_mae: 2.7436 - val_mse: 12.2466\n",
"354/354 [==============================] - 0s 177us/sample - loss: 4.4689 - mae: 1.5368 - mse: 4.4689 - val_loss: 10.4188 - val_mae: 2.3596 - val_mse: 10.4188\n",
"354/354 [==============================] - 0s 168us/sample - loss: 4.6496 - mae: 1.5348 - mse: 4.6496 - val_loss: 10.0829 - val_mae: 2.3822 - val_mse: 10.0829\n"
"source": [
"history = model.fit(x_train,\n",
" y_train,\n",
" epochs = 100,\n",
" batch_size = 10,\n",
" validation_data = (x_test, y_test))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Step 6 - Evaluate\n",
"### 6.1 - Model evaluation\n",
"MAE = Mean Absolute Error (between the labels and predictions) \n",
"A mae equal to 3 represents an average error in prediction of $3k."
]
},
{
"cell_type": "code",
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"x_test / loss : 10.0829\n",
"x_test / mae : 2.3822\n",
"x_test / mse : 10.0829\n"
"source": [
"score = model.evaluate(x_test, y_test, verbose=0)\n",
"\n",
"print('x_test / loss : {:5.4f}'.format(score[0]))\n",
"print('x_test / mae : {:5.4f}'.format(score[1]))\n",
"print('x_test / mse : {:5.4f}'.format(score[2]))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"What was the best result during our training ?"
]
},
{
"cell_type": "code",
"outputs": [
{
"data": {
"text/html": [