diff --git a/.gitignore b/.gitignore index 904b3640e3d8c87423d993faabb6b859f6861205..c578a02bd73be65fe626f2446fbadc6d695411f3 100644 --- a/.gitignore +++ b/.gitignore @@ -19,7 +19,7 @@ *.tar.gz *.rar -output.csv +src/main/resources/output.csv # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml hs_err_pid* diff --git a/output.csv b/output.csv deleted file mode 100644 index ce1f2685189b092600c0ba38c83ec0504d9dc7ca..0000000000000000000000000000000000000000 --- a/output.csv +++ /dev/null @@ -1,2092 +0,0 @@ -SUCEPTIBLE,EXPOSED,RECOVERED,INFECTED -996,3,1,0 -997,3,0,0 -997,3,0,0 -996,3,0,1 -995,4,0,1 -995,4,1,0 -995,4,1,0 -995,4,1,0 -995,4,1,0 -995,4,1,0 -995,4,1,0 -995,4,1,0 -995,4,1,0 -992,6,1,1 -992,6,2,0 -990,7,2,1 -987,9,2,2 -985,9,2,4 -980,14,3,3 -977,14,5,4 -973,18,5,4 -972,20,4,4 -967,22,5,6 -963,26,8,3 -959,27,10,4 -953,33,12,2 -947,33,12,8 -944,34,13,9 -939,32,13,16 -928,40,18,14 -926,36,21,17 -918,44,26,12 -911,48,30,11 -905,50,34,11 -906,52,33,9 -907,46,35,12 -898,50,36,16 -884,58,37,21 -875,63,40,22 -872,58,44,26 -860,62,46,32 -853,62,56,29 -842,69,59,30 -837,72,57,34 -832,68,64,36 -823,76,73,28 -823,72,77,28 -815,74,86,25 -812,74,90,24 -805,78,96,21 -807,71,97,25 -806,71,103,20 -799,69,106,26 -795,72,107,26 -790,74,108,28 -792,74,112,22 -788,77,112,23 -782,84,116,18 -781,85,113,21 -783,80,112,25 -784,78,116,22 -785,77,116,22 -780,77,117,26 -772,81,120,27 -766,82,122,30 -767,80,133,20 -765,77,133,25 -763,77,134,26 -760,82,132,26 -752,88,129,31 -746,92,132,30 -737,98,136,29 -736,95,138,31 -736,95,142,27 -730,100,142,28 -725,103,145,27 -717,106,145,32 -716,103,151,30 -712,109,149,30 -713,106,151,30 -706,103,156,35 -695,99,166,40 -689,103,166,42 -686,107,168,39 -675,114,168,43 -669,115,167,49 -658,122,169,51 -649,119,182,50 -632,128,198,42 -628,127,200,45 -630,132,198,40 -627,129,201,43 -619,130,206,45 -613,133,208,46 -602,137,206,55 -598,141,215,46 -601,139,221,39 -606,135,214,45 -600,133,221,46 -600,137,223,40 -591,141,223,45 -583,151,230,36 -572,156,233,39 -573,153,236,38 -572,151,236,41 -567,152,241,40 -562,158,245,35 -560,154,242,44 -560,150,242,48 -557,151,240,52 -548,160,240,52 -541,154,244,61 -526,167,251,56 -510,177,258,55 -509,165,269,57 -504,169,263,64 -499,174,265,62 -487,169,274,70 -481,173,283,63 -477,180,278,65 -471,183,285,61 -471,176,293,60 -468,173,291,68 -463,175,292,70 -473,181,288,58 -471,182,295,52 -467,186,298,49 -477,182,289,52 -467,182,293,58 -461,188,292,59 -460,185,286,69 -464,176,282,78 -465,172,286,77 -450,182,303,65 -447,180,306,67 -435,193,314,58 -432,191,312,65 -425,191,316,68 -423,194,318,65 -422,192,324,62 -426,182,328,64 -427,184,332,57 -422,183,332,63 -426,177,330,67 -413,189,332,66 -418,184,340,58 -412,180,345,63 -407,187,341,65 -395,198,350,57 -397,194,353,56 -395,183,353,69 -388,192,359,61 -394,201,351,54 -384,199,347,70 -367,214,348,71 -357,216,359,68 -351,216,363,70 -351,207,380,62 -358,190,376,76 -345,201,378,76 -339,200,389,72 -346,204,373,77 -345,195,374,86 -340,198,388,74 -339,199,390,72 -329,203,389,79 -313,222,397,68 -305,218,400,77 -303,225,396,76 -304,218,394,84 -297,213,410,80 -298,213,407,82 -301,210,408,81 -297,214,421,68 -294,205,427,74 -300,210,416,74 -292,219,417,72 -297,209,416,78 -311,208,421,60 -310,205,420,65 -300,214,429,57 -302,199,424,75 -309,193,422,76 -309,190,435,66 -309,190,446,55 -309,180,444,67 -304,179,449,68 -307,178,445,70 -310,170,448,72 -307,185,440,68 -319,184,440,57 -327,178,437,58 -330,176,437,57 -335,180,428,57 -345,174,414,67 -340,174,413,73 -334,178,414,74 -345,168,417,70 -352,164,411,73 -350,171,417,62 -354,173,417,56 -356,174,409,61 -347,184,409,60 -352,179,404,65 -348,175,413,64 -360,177,399,64 -355,188,398,59 -354,189,394,63 -349,197,398,56 -352,193,405,50 -363,195,392,50 -359,200,386,55 -347,217,387,49 -346,214,388,52 -350,211,388,51 -346,203,384,67 -346,198,391,65 -348,202,386,64 -338,206,386,70 -342,207,385,66 -338,213,378,71 -335,212,383,70 -343,206,374,77 -322,228,383,67 -315,229,383,73 -306,233,393,68 -298,235,398,69 -296,228,408,68 -303,215,414,68 -286,227,418,69 -288,223,415,74 -288,217,423,72 -290,222,422,66 -290,217,422,71 -294,216,427,63 -300,205,423,72 -292,218,431,59 -304,207,428,61 -311,200,419,70 -314,199,417,70 -317,193,410,80 -317,187,417,79 -311,191,424,74 -311,194,424,71 -316,191,421,72 -334,185,412,69 -344,185,405,66 -348,187,401,64 -351,183,407,59 -346,198,401,55 -356,194,394,56 -357,199,385,59 -354,198,383,65 -358,196,379,67 -355,199,383,63 -348,204,384,64 -349,207,383,61 -353,204,391,52 -355,197,385,63 -357,198,379,66 -348,200,374,78 -341,204,378,77 -334,207,383,76 -329,192,402,77 -340,191,391,78 -339,186,396,79 -345,182,396,77 -337,188,395,80 -334,187,393,86 -321,208,396,75 -324,201,388,87 -315,208,388,89 -312,213,394,81 -301,222,403,74 -301,220,413,66 -303,211,415,71 -309,197,415,79 -317,192,432,59 -328,186,418,68 -328,184,424,64 -336,181,424,59 -335,182,415,68 -334,186,422,58 -347,177,413,63 -343,178,413,66 -352,174,408,66 -348,179,407,66 -350,180,405,65 -353,176,405,66 -346,176,410,68 -346,179,412,63 -348,179,414,59 -346,180,412,62 -340,185,408,67 -349,180,408,63 -356,182,402,60 -361,185,402,52 -370,178,397,55 -364,175,397,64 -354,186,400,60 -355,193,400,52 -360,192,396,52 -360,188,396,56 -350,194,397,59 -357,194,394,55 -354,190,394,62 -354,191,397,58 -358,193,392,57 -361,193,392,54 -357,187,390,66 -348,192,397,63 -346,198,398,58 -346,199,388,67 -349,191,393,67 -354,195,385,66 -351,195,387,67 -348,194,396,62 -350,195,395,60 -335,202,391,72 -340,199,400,61 -329,205,406,60 -325,203,404,68 -322,213,399,66 -321,213,389,77 -312,218,396,74 -310,213,404,73 -308,217,405,70 -301,220,399,80 -289,226,402,83 -294,225,402,79 -284,230,410,76 -278,230,411,81 -265,237,417,81 -253,234,416,97 -251,235,418,96 -258,227,430,85 -253,237,434,76 -261,230,435,74 -265,232,430,73 -269,229,434,68 -271,221,443,65 -279,206,442,73 -277,200,439,84 -275,199,442,84 -281,189,448,82 -285,190,454,71 -303,186,444,67 -288,200,456,56 -303,189,450,58 -299,195,449,57 -306,198,451,45 -320,188,443,49 -319,193,436,52 -327,187,428,58 -330,187,429,54 -335,189,426,50 -341,184,431,44 -354,180,419,47 -362,173,411,54 -364,178,410,48 -357,181,409,53 -356,178,408,58 -364,179,393,64 -373,171,396,60 -369,173,387,71 -371,179,388,62 -373,180,387,60 -378,181,374,67 -374,190,374,62 -375,194,370,61 -377,189,376,58 -380,199,367,54 -379,195,373,53 -365,203,367,65 -359,209,371,61 -347,217,369,67 -335,218,376,71 -329,222,381,68 -333,214,384,69 -334,219,379,68 -331,217,377,75 -320,209,392,79 -312,217,393,78 -306,223,393,78 -307,227,387,79 -299,227,400,74 -295,216,406,83 -298,215,403,84 -301,220,400,79 -284,232,412,72 -272,241,419,68 -281,227,422,70 -291,223,411,75 -293,229,404,74 -287,226,402,85 -284,230,401,85 -284,222,409,85 -274,219,408,99 -259,230,422,89 -270,224,425,81 -278,218,420,84 -273,225,418,84 -276,226,422,76 -272,224,427,77 -272,218,430,80 -285,219,428,68 -306,206,425,63 -321,197,418,64 -312,199,418,71 -321,197,421,61 -329,194,425,52 -336,199,411,54 -334,199,409,58 -323,207,414,56 -320,204,409,67 -324,196,409,71 -319,206,400,75 -313,208,396,83 -312,207,407,74 -303,214,405,78 -299,215,396,90 -295,212,395,98 -291,219,401,89 -285,226,404,85 -279,218,414,89 -273,226,419,82 -272,224,427,77 -264,215,435,86 -283,206,433,78 -272,211,444,73 -284,205,441,70 -277,201,442,80 -293,193,442,72 -286,196,447,71 -289,199,447,65 -298,195,445,62 -304,195,440,61 -304,190,449,57 -320,187,442,51 -311,185,443,61 -316,187,435,62 -313,190,430,67 -313,184,436,67 -320,183,436,61 -313,181,430,76 -302,186,436,76 -303,181,445,71 -309,172,448,71 -314,174,445,67 -324,175,438,63 -327,177,440,56 -335,170,435,60 -344,180,424,52 -348,169,427,56 -356,169,421,54 -358,175,411,56 -361,181,398,60 -374,185,384,57 -370,188,385,57 -371,185,384,60 -368,191,381,60 -363,191,386,60 -362,186,385,67 -362,188,387,63 -362,195,382,61 -359,203,380,58 -361,193,381,65 -358,192,380,70 -350,195,379,76 -344,190,392,74 -338,198,398,66 -340,209,389,62 -332,201,398,69 -335,196,395,74 -339,192,392,77 -337,196,399,68 -340,201,403,56 -343,195,405,57 -357,180,393,70 -359,179,399,63 -358,182,402,58 -366,188,392,54 -369,182,390,59 -358,191,393,58 -342,206,400,52 -345,206,396,53 -351,198,395,56 -345,205,388,62 -336,214,389,61 -345,208,384,63 -348,207,386,59 -335,209,387,69 -331,217,391,61 -326,211,390,73 -323,210,396,71 -321,212,408,59 -329,210,406,55 -330,202,405,63 -322,207,411,60 -324,204,404,68 -323,195,414,68 -324,190,421,65 -333,198,408,61 -327,200,411,62 -337,194,414,55 -344,194,412,50 -341,201,414,44 -356,200,395,49 -367,193,386,54 -366,196,386,52 -367,188,382,63 -364,197,384,55 -369,183,380,68 -368,196,391,45 -370,189,385,56 -373,199,371,57 -380,194,377,49 -383,179,378,60 -381,184,374,61 -371,189,365,75 -364,195,365,76 -354,209,369,68 -341,217,372,70 -327,215,379,79 -317,226,383,74 -317,230,381,72 -318,220,381,81 -318,221,384,77 -323,222,379,76 -312,232,380,76 -299,232,384,85 -286,240,393,81 -283,238,398,81 -284,237,406,73 -278,242,419,61 -284,228,414,74 -280,233,409,78 -280,241,402,77 -266,245,413,76 -256,252,419,73 -255,246,421,78 -256,235,429,80 -262,231,431,76 -265,223,434,78 -261,218,443,78 -264,218,450,68 -267,218,456,59 -271,207,446,76 -272,205,451,72 -276,201,446,77 -285,200,435,80 -287,199,437,77 -284,200,442,74 -285,205,434,76 -264,209,453,74 -268,212,444,76 -274,209,449,68 -282,212,435,71 -286,213,425,76 -284,211,430,75 -288,199,434,79 -292,198,426,84 -293,205,422,80 -290,209,428,73 -292,212,427,69 -312,197,419,72 -307,199,420,74 -309,193,416,82 -307,205,414,74 -308,205,408,79 -301,207,406,86 -315,200,409,76 -308,196,411,85 -305,194,421,80 -308,198,427,67 -318,188,426,68 -307,196,426,71 -313,192,422,73 -312,196,423,69 -317,193,420,70 -325,199,414,62 -325,196,414,65 -321,194,415,70 -319,195,418,68 -313,194,425,68 -319,194,419,68 -307,204,412,77 -302,205,412,81 -305,205,418,72 -309,202,420,69 -301,202,432,65 -317,198,419,66 -323,199,415,63 -325,205,410,60 -323,213,401,63 -318,216,404,62 -320,214,399,67 -312,219,407,62 -316,214,399,71 -315,214,398,73 -308,219,402,71 -297,223,407,73 -298,223,401,78 -300,214,402,84 -294,217,408,81 -289,220,413,78 -294,212,411,83 -298,203,415,84 -298,203,423,76 -303,195,420,82 -290,190,436,84 -293,194,436,77 -292,198,433,77 -290,200,447,63 -295,194,446,65 -300,195,444,61 -289,191,446,74 -303,182,446,69 -303,196,442,59 -317,181,431,71 -318,184,435,63 -326,191,427,56 -325,183,428,64 -325,185,430,60 -331,187,429,53 -330,195,415,60 -334,197,405,64 -325,199,409,67 -320,206,404,70 -315,203,415,67 -309,200,425,66 -314,201,414,71 -315,197,416,72 -328,189,417,66 -330,189,415,66 -327,185,421,67 -329,185,423,63 -331,182,426,61 -333,179,427,61 -339,182,417,62 -344,171,414,71 -357,170,405,68 -359,173,400,68 -363,178,396,63 -359,183,405,53 -369,183,400,48 -369,185,388,58 -364,193,380,63 -361,192,377,70 -350,194,388,68 -346,199,396,59 -347,192,402,59 -344,202,404,50 -339,205,402,54 -338,206,407,49 -341,213,392,54 -341,214,391,54 -342,209,386,63 -338,210,383,69 -334,213,389,64 -345,205,387,63 -332,216,394,58 -331,219,386,64 -331,216,381,72 -339,210,381,70 -321,225,388,66 -322,221,380,77 -330,213,381,76 -323,218,393,66 -320,219,394,67 -328,205,393,74 -318,219,395,68 -318,217,399,66 -319,214,394,73 -315,223,395,67 -318,220,395,67 -316,220,399,65 -318,218,387,77 -302,226,395,77 -298,221,399,82 -290,219,408,83 -288,218,408,86 -293,219,405,83 -294,227,410,69 -283,238,413,66 -282,225,419,74 -285,213,421,81 -295,205,422,78 -291,209,430,70 -282,211,437,70 -290,201,433,76 -289,201,445,65 -284,206,447,63 -294,200,444,62 -286,198,448,68 -288,187,455,70 -287,191,460,62 -293,194,449,64 -294,196,445,65 -290,198,450,62 -292,198,448,62 -285,202,451,62 -295,195,448,62 -290,192,450,68 -287,193,456,64 -295,195,442,68 -293,202,440,65 -296,201,446,57 -303,198,438,61 -313,195,425,67 -319,191,421,69 -313,194,415,78 -314,197,418,71 -315,205,409,71 -311,201,417,71 -307,195,422,76 -301,199,428,72 -315,186,418,81 -311,194,420,75 -299,198,428,75 -305,208,423,64 -314,203,419,64 -321,213,400,66 -321,209,402,68 -316,213,406,65 -327,211,407,55 -333,207,407,53 -351,207,391,51 -349,209,380,62 -345,216,378,61 -335,224,383,58 -323,243,377,57 -332,239,366,63 -321,239,361,79 -304,249,365,82 -298,255,371,76 -294,249,386,71 -287,240,391,82 -289,237,402,72 -283,239,405,73 -281,249,399,71 -286,245,393,76 -291,246,391,72 -290,242,390,78 -295,237,393,75 -286,240,399,75 -289,234,402,75 -289,237,405,69 -302,232,395,71 -292,239,393,76 -286,235,402,77 -277,243,403,77 -272,251,407,70 -271,237,404,88 -268,233,416,83 -264,232,427,77 -266,236,432,66 -263,234,438,65 -263,238,429,70 -261,237,428,74 -260,234,433,73 -250,224,437,89 -244,227,458,71 -244,226,452,78 -255,217,448,80 -251,223,442,84 -247,224,449,80 -261,215,450,74 -262,215,450,73 -273,202,445,80 -265,208,456,71 -260,218,457,65 -266,218,455,61 -286,216,444,54 -283,209,447,61 -291,207,446,56 -295,200,440,65 -296,208,437,59 -308,203,426,63 -308,202,434,56 -313,201,418,68 -318,201,414,67 -316,201,414,69 -319,201,407,73 -329,199,402,70 -325,203,403,69 -322,204,399,75 -328,207,394,71 -332,199,402,67 -324,204,408,64 -317,214,406,63 -311,219,402,68 -303,226,401,70 -295,231,406,68 -297,222,407,74 -297,212,408,83 -299,200,408,93 -293,196,418,93 -290,198,415,97 -291,195,420,94 -282,207,433,78 -283,209,428,80 -274,216,433,77 -280,209,434,77 -278,211,431,80 -280,209,432,79 -270,220,433,77 -286,202,437,75 -288,207,433,72 -300,207,426,67 -305,202,426,67 -302,202,434,62 -307,202,432,59 -294,212,427,67 -295,201,434,70 -306,193,427,74 -309,193,423,75 -307,191,425,77 -305,192,427,76 -308,191,425,76 -306,196,428,70 -303,202,425,70 -304,192,433,71 -301,196,428,75 -308,186,430,76 -306,193,441,60 -297,207,439,57 -293,214,429,64 -298,210,436,56 -304,203,430,63 -305,196,438,61 -320,186,435,59 -332,182,433,53 -336,179,427,58 -339,181,421,59 -346,186,415,53 -358,178,406,58 -358,182,407,53 -373,180,394,53 -368,184,389,59 -359,183,394,64 -353,196,393,58 -360,190,389,61 -354,195,396,55 -349,202,389,60 -342,203,387,68 -339,201,391,69 -339,201,398,62 -336,207,396,61 -336,210,393,61 -338,207,387,68 -327,217,386,70 -335,201,381,83 -333,199,388,80 -336,193,393,78 -333,194,394,79 -339,191,396,74 -326,195,401,78 -318,196,414,72 -326,197,407,70 -326,195,411,68 -329,198,406,67 -324,206,403,67 -320,207,402,71 -330,197,397,76 -317,207,392,84 -312,210,397,81 -309,218,400,73 -308,222,406,64 -311,217,410,62 -311,218,406,65 -312,206,407,75 -309,212,408,71 -305,210,416,69 -309,198,417,76 -299,197,421,83 -285,206,427,82 -276,215,435,74 -278,212,433,77 -287,209,432,72 -289,208,423,80 -288,214,432,66 -299,202,436,63 -293,205,432,70 -309,198,428,65 -317,193,427,63 -311,207,417,65 -305,213,423,59 -299,218,427,56 -291,218,427,64 -282,223,423,72 -289,215,425,71 -296,218,422,64 -295,225,424,56 -295,221,421,63 -296,226,415,63 -304,219,403,74 -290,219,409,82 -295,220,418,67 -295,219,414,72 -295,218,420,67 -298,215,418,69 -290,217,425,68 -287,226,414,73 -296,217,409,78 -288,222,414,76 -281,214,418,87 -289,204,424,83 -292,195,424,89 -286,203,433,78 -278,202,444,76 -274,210,444,72 -267,210,450,73 -263,210,456,71 -280,208,438,74 -285,208,445,62 -285,208,445,62 -291,202,445,62 -290,205,440,65 -290,197,434,79 -287,195,434,84 -290,190,443,77 -289,195,448,68 -290,204,440,66 -302,204,431,63 -308,196,428,68 -311,194,424,71 -306,197,420,77 -319,189,423,69 -324,189,410,77 -321,191,413,75 -323,181,409,87 -318,188,419,75 -333,192,411,64 -323,203,407,67 -317,200,413,70 -314,199,412,75 -318,200,408,74 -322,198,412,68 -323,198,411,68 -337,198,401,64 -329,198,404,69 -333,195,407,65 -335,184,415,66 -339,182,412,67 -335,188,407,70 -336,193,408,63 -339,192,410,59 -341,180,408,71 -345,178,406,71 -357,174,399,70 -359,173,400,68 -365,175,395,65 -366,173,398,63 -373,174,388,65 -367,178,390,65 -370,177,384,69 -357,181,390,72 -358,179,401,62 -353,180,405,62 -357,178,403,62 -369,166,403,62 -376,168,405,51 -378,166,402,54 -378,172,392,58 -375,176,390,59 -365,184,386,65 -364,189,375,72 -360,193,382,65 -344,198,388,70 -342,198,389,71 -340,201,393,66 -342,193,393,72 -347,187,399,67 -348,186,407,59 -351,190,395,64 -340,183,405,72 -335,195,409,61 -346,185,403,66 -339,188,405,68 -335,188,400,77 -336,187,407,70 -327,195,409,69 -329,189,409,73 -319,186,420,75 -313,191,427,69 -315,190,423,72 -309,199,426,66 -324,192,417,67 -328,191,417,64 -321,195,418,66 -329,202,410,59 -330,201,396,73 -322,203,399,76 -310,207,407,76 -311,213,406,70 -314,215,407,64 -313,216,406,65 -318,206,409,67 -315,200,414,71 -318,200,406,76 -321,203,409,67 -312,205,419,64 -311,207,422,60 -325,195,417,63 -340,194,407,59 -343,192,396,69 -332,201,404,63 -334,202,395,69 -322,206,394,78 -327,200,392,81 -322,211,392,75 -311,215,405,69 -313,211,411,65 -311,211,408,70 -305,209,415,71 -300,214,415,71 -290,215,421,74 -285,201,427,87 -276,209,429,86 -270,203,437,90 -272,201,438,89 -271,199,436,94 -276,198,448,78 -267,198,455,80 -279,193,446,82 -283,194,450,73 -284,198,446,72 -303,188,435,74 -308,184,434,74 -314,183,436,67 -313,181,442,64 -305,184,442,69 -294,193,445,68 -288,201,447,64 -291,196,443,70 -292,191,434,83 -287,195,431,87 -286,201,436,77 -284,196,438,82 -294,198,435,73 -301,200,428,71 -296,209,435,60 -297,209,428,66 -300,204,425,71 -304,203,422,71 -306,216,422,56 -305,213,419,63 -302,213,414,71 -303,208,421,68 -300,211,412,77 -297,210,421,72 -300,209,415,76 -293,209,418,80 -286,223,418,73 -286,221,416,77 -295,215,408,82 -295,215,412,78 -294,214,427,65 -287,208,434,71 -279,222,436,63 -295,219,426,60 -299,214,424,63 -313,199,413,75 -321,204,408,67 -320,207,410,63 -343,192,405,60 -356,190,395,59 -358,189,396,57 -351,201,392,56 -347,202,399,52 -343,195,395,67 -343,195,383,79 -338,207,386,69 -328,201,393,78 -324,195,402,79 -324,192,414,70 -331,196,408,65 -328,202,406,64 -334,191,407,68 -329,188,410,73 -334,185,405,76 -341,184,407,68 -335,197,400,68 -335,201,405,59 -334,197,402,67 -334,201,398,67 -336,200,401,63 -331,202,401,66 -322,203,404,71 -316,200,411,73 -317,197,412,74 -306,202,424,68 -316,198,425,61 -310,202,423,65 -310,198,423,69 -306,196,421,77 -309,199,422,70 -312,207,419,62 -311,204,413,72 -301,210,415,74 -305,205,424,66 -305,201,422,72 -308,200,423,69 -301,205,419,75 -312,197,408,83 -315,202,407,76 -309,205,410,76 -297,208,421,74 -296,205,429,70 -299,202,430,69 -306,198,425,71 -301,206,430,63 -300,207,433,60 -304,202,422,72 -309,196,423,72 -311,202,428,59 -302,200,439,59 -316,189,431,64 -331,175,419,75 -328,186,413,73 -320,191,419,70 -316,191,424,69 -306,201,424,69 -311,194,417,78 -310,191,429,70 -317,191,429,63 -324,194,423,59 -337,184,415,64 -327,191,414,68 -328,183,414,75 -308,196,425,71 -313,194,423,70 -311,197,428,64 -308,198,427,67 -322,201,415,62 -322,204,409,65 -320,206,408,66 -325,206,397,72 -314,212,411,63 -312,216,413,59 -329,198,404,69 -334,205,389,72 -327,203,399,71 -336,188,400,76 -321,201,404,74 -320,204,407,69 -332,199,407,62 -341,193,397,69 -337,195,395,73 -334,204,395,67 -328,199,401,72 -319,202,404,75 -315,197,414,74 -312,204,423,61 -317,205,411,67 -312,207,413,68 -315,209,403,73 -321,198,403,78 -322,201,403,74 -312,208,408,72 -317,198,412,73 -316,199,410,75 -312,190,412,86 -321,197,401,81 -317,202,409,72 -323,196,413,68 -320,197,412,71 -323,191,419,67 -330,195,421,54 -339,181,418,62 -352,183,412,53 -359,184,402,55 -364,184,391,61 -354,186,392,68 -354,188,399,59 -353,188,396,63 -362,185,389,64 -351,189,394,66 -337,196,394,73 -333,204,395,68 -326,204,405,65 -318,210,412,60 -315,214,406,65 -301,216,406,77 -305,218,410,67 -314,212,397,77 -306,217,403,74 -295,229,404,72 -301,226,403,70 -300,222,404,74 -309,228,395,68 -307,218,401,74 -307,223,401,69 -310,218,400,72 -305,219,394,82 -294,220,414,72 -293,222,423,62 -291,222,423,64 -288,228,427,57 -293,225,419,63 -297,223,420,60 -295,217,419,69 -298,214,430,58 -300,214,429,57 -304,209,425,62 -300,212,431,57 -311,207,427,55 -315,210,432,43 -313,208,423,56 -306,209,428,57 -309,213,418,60 -306,217,418,59 -305,217,408,70 -315,212,410,63 -312,213,417,58 -312,218,419,51 -310,216,414,60 -309,213,418,60 -309,211,410,70 -307,214,417,62 -305,218,413,64 -308,213,401,78 -279,217,419,85 -279,214,428,79 -278,218,431,73 -273,218,434,75 -279,215,436,70 -274,221,434,71 -279,213,422,86 -274,218,430,78 -270,221,434,75 -265,218,440,77 -264,216,444,76 -273,213,436,78 -274,211,434,81 -273,211,435,81 -280,203,448,69 -282,207,437,74 -281,211,432,76 -274,208,438,80 -283,200,439,78 -288,203,432,77 -290,202,429,79 -296,202,430,72 -300,189,433,78 -305,191,434,70 -302,192,434,72 -295,199,431,75 -298,199,425,78 -298,196,428,78 -300,196,428,76 -304,188,427,81 -310,187,413,90 -303,191,420,86 -294,193,432,81 -289,195,436,80 -282,198,440,80 -280,194,443,83 -290,196,430,84 -283,199,437,81 -274,200,436,90 -271,206,441,82 -269,212,441,78 -277,214,435,74 -282,213,426,79 -283,222,431,64 -273,227,437,63 -285,224,421,70 -282,218,421,79 -284,213,426,77 -288,218,426,68 -287,213,421,79 -287,214,417,82 -292,199,413,96 -281,208,422,89 -278,215,426,81 -272,220,432,76 -279,213,434,74 -276,213,433,78 -273,202,433,92 -270,205,429,96 -280,202,431,87 -257,211,448,84 -266,210,451,73 -268,203,450,79 -272,204,450,74 -278,203,446,73 -278,199,448,75 -276,201,447,76 -287,192,452,69 -283,192,462,63 -286,187,454,73 -290,201,445,64 -306,188,444,62 -315,189,432,64 -314,197,426,63 -314,195,426,65 -319,182,429,70 -310,187,434,69 -319,190,420,71 -319,187,423,71 -314,191,421,74 -321,194,417,68 -321,188,415,76 -323,187,416,74 -305,193,425,77 -304,189,427,80 -308,187,437,68 -307,187,437,69 -309,194,433,64 -317,200,418,65 -329,200,405,66 -334,200,401,65 -337,202,401,60 -339,205,400,56 -325,208,400,67 -322,204,403,71 -315,205,414,66 -298,211,426,65 -293,211,420,76 -298,212,427,63 -307,205,420,68 -311,202,421,66 -304,213,416,67 -322,204,408,66 -321,213,404,62 -323,220,399,58 -327,216,392,65 -319,224,395,62 -324,222,398,56 -328,215,397,60 -329,218,395,58 -334,210,393,63 -326,209,392,73 -316,216,397,71 -310,217,402,71 -305,222,410,63 -308,219,403,70 -302,228,395,75 -303,228,397,72 -298,225,401,76 -287,232,402,79 -293,218,416,73 -295,209,421,75 -294,208,428,70 -296,209,424,71 -297,218,424,61 -301,213,418,68 -300,214,412,74 -308,212,416,64 -297,211,422,70 -298,216,419,67 -285,226,421,68 -291,222,416,71 -285,223,421,71 -272,222,431,75 -281,207,435,77 -289,209,428,74 -293,194,437,76 -303,187,440,70 -323,187,419,71 -315,204,418,63 -308,204,426,62 -297,213,431,59 -295,206,435,64 -295,212,429,64 -308,201,424,67 -307,196,424,73 -303,194,427,76 -307,186,436,71 -310,192,440,58 -301,197,441,61 -293,207,445,55 -309,192,440,59 -329,182,431,58 -347,175,426,52 -342,179,427,52 -342,173,423,62 -345,170,413,72 -338,181,412,69 -325,189,416,70 -317,186,420,77 -312,198,429,61 -317,201,418,64 -319,202,415,64 -322,201,404,73 -329,195,407,69 -327,197,404,72 -322,198,401,79 -322,205,403,70 -313,211,399,77 -301,216,404,79 -302,220,406,72 -300,221,406,73 -306,220,402,72 -303,223,411,63 -301,220,404,75 -297,227,406,70 -303,209,413,75 -304,212,411,73 -305,205,419,71 -304,210,415,71 -315,202,416,67 -310,207,420,63 -319,199,419,63 -324,197,420,59 -326,191,423,60 -322,185,421,72 -324,170,425,81 -324,172,438,66 -321,175,445,59 -318,181,445,56 -324,186,441,49 -324,189,439,48 -329,182,438,51 -339,175,427,59 -343,176,423,58 -358,165,422,55 -355,168,425,52 -350,166,418,66 -355,165,411,69 -357,168,406,69 -357,163,414,66 -350,170,418,62 -351,170,423,56 -359,168,416,57 -362,169,415,54 -378,170,402,50 -378,174,395,53 -377,180,379,64 -375,185,370,70 -373,185,367,75 -376,180,378,66 -375,181,383,61 -381,182,380,57 -381,185,379,55 -383,187,371,59 -391,186,367,56 -384,185,373,58 -382,194,370,54 -378,197,364,61 -371,198,367,64 -365,207,369,59 -360,204,369,67 -354,204,362,80 -338,209,374,79 -337,207,377,79 -337,205,388,70 -339,203,386,72 -344,200,389,67 -344,200,388,68 -353,194,386,67 -347,198,391,64 -350,194,389,67 -348,195,389,68 -336,200,392,72 -337,196,398,69 -347,194,397,62 -347,196,400,57 -344,202,399,55 -338,209,398,55 -339,212,397,52 -350,208,387,55 -357,206,377,60 -363,205,374,58 -356,205,369,70 -353,215,370,62 -342,224,370,64 -331,225,367,77 -337,218,377,68 -327,220,379,74 -322,224,386,68 -311,233,391,65 -299,239,393,69 -306,230,389,75 -307,231,395,67 -309,217,399,75 -302,230,404,64 -308,224,404,64 -312,231,402,55 -311,221,407,61 -305,229,408,58 -312,225,405,58 -317,219,401,63 -315,218,404,63 -314,214,408,64 -309,204,411,76 -309,205,417,69 -313,214,407,66 -321,213,397,69 -313,221,398,68 -311,226,393,70 -308,219,391,82 -310,220,390,80 -305,218,395,82 -287,226,407,80 -295,227,413,65 -280,232,417,71 -284,234,411,71 -296,218,408,78 -287,215,414,84 -286,222,414,78 -288,230,414,68 -289,230,414,67 -291,219,418,72 -291,224,422,63 -274,236,416,74 -267,240,417,76 -263,235,432,70 -259,236,436,69 -258,229,437,76 -253,229,438,80 -252,222,443,83 -246,226,449,79 -241,217,458,84 -247,211,462,80 -265,198,460,77 -268,199,458,75 -266,207,455,72 -276,206,452,66 -276,204,450,70 -274,197,448,81 -275,197,446,82 -266,200,464,70 -285,197,453,65 -284,194,458,64 -293,192,455,60 -292,195,443,70 -296,198,441,65 -310,194,431,65 -317,199,419,65 -309,204,418,69 -298,216,426,60 -302,210,419,69 -296,206,424,74 -295,203,433,69 -291,198,431,80 -291,202,438,69 -289,200,441,70 -286,199,442,73 -282,200,441,77 -278,203,448,71 -283,193,446,78 -269,201,453,77 -268,199,455,78 -272,203,445,80 -273,200,447,80 -277,202,445,76 -291,195,447,67 -287,205,451,57 -284,202,453,61 -297,201,439,63 -305,191,439,65 -321,186,433,60 -322,191,423,64 -319,194,418,69 -310,195,428,67 -304,191,435,70 -301,189,440,70 -292,196,447,65 -300,196,440,64 -300,198,433,69 -304,198,436,62 -308,200,432,60 -332,188,418,62 -336,188,412,64 -333,196,413,58 -339,199,400,62 -342,203,396,59 -343,200,400,57 -346,205,400,49 -350,189,391,70 -345,194,399,62 -351,191,397,61 -353,191,390,66 -344,195,388,73 -347,193,382,78 -341,199,382,78 -326,204,391,79 -314,214,390,82 -308,223,398,71 -310,225,400,65 -311,224,407,58 -308,226,402,64 -301,230,401,68 -302,221,410,67 -309,201,412,78 -297,209,420,74 -294,204,425,77 -291,203,436,70 -284,204,437,75 -278,209,445,68 -286,203,437,74 -283,204,434,79 -286,206,433,75 -290,195,435,80 -294,196,432,78 -283,196,444,77 -287,201,445,67 -285,201,444,70 -290,204,446,60 -293,198,444,65 -292,205,441,62 -278,213,436,73 -289,215,429,67 -299,205,431,65 -299,207,418,76 -290,222,420,68 -290,222,413,75 -275,231,423,71 -278,222,421,79 -268,228,425,79 -280,225,433,62 -285,217,431,67 -290,214,428,68 -308,207,419,66 -315,208,417,60 -315,210,423,52 -325,201,414,60 -329,200,409,62 -326,211,397,66 -325,208,403,64 -309,221,411,59 -312,216,410,62 -314,215,411,60 -308,214,418,60 -320,207,407,66 -320,213,403,64 -317,218,402,63 -318,228,394,60 -315,226,392,67 -306,232,392,70 -316,228,385,71 -316,220,383,81 -316,221,386,77 -316,223,390,71 -322,211,392,75 -317,218,393,72 -316,216,395,73 -307,219,409,65 -300,219,414,67 -299,221,408,72 -303,218,412,67 -320,215,400,65 -318,219,395,68 -319,219,395,67 -311,222,404,63 -319,217,402,62 -317,217,391,75 -310,220,394,76 -308,218,395,79 -301,221,399,79 -296,222,395,87 -299,216,402,83 -307,205,406,82 -310,209,409,72 -309,203,410,78 -311,213,402,74 -306,215,409,70 -303,217,410,70 -294,219,414,73 -292,212,419,77 -295,217,415,73 -294,218,425,63 -295,212,423,70 -291,218,423,68 -303,208,415,74 -311,203,410,76 -315,201,396,88 -308,210,405,77 -300,201,411,88 -292,208,417,83 -297,206,417,80 -289,214,424,73 -280,209,433,78 -281,215,441,63 -285,205,440,70 -289,206,437,68 -288,212,422,78 -287,216,422,75 -274,218,426,82 -273,220,428,79 -259,228,434,79 -258,230,434,78 -269,214,431,86 -264,220,437,79 -265,229,434,72 -257,231,440,72 -256,223,442,79 -250,220,446,84 -244,221,449,86 -244,222,443,91 -248,220,440,92 -249,214,453,84 -247,221,447,85 -251,227,447,75 -266,227,441,66 -270,235,437,58 -272,229,424,75 -286,227,414,73 -278,230,416,76 -267,243,426,64 -270,227,432,71 -277,215,427,81 -272,217,432,79 -281,211,433,75 -265,209,444,82 -267,204,449,80 -261,197,450,92 -254,199,459,88 -263,199,449,89 -265,195,462,78 -266,200,463,71 -266,201,461,72 -281,190,460,69 -277,202,463,58 -283,197,461,59 -288,189,457,66 -295,185,457,63 -297,186,459,58 -299,193,453,55 -306,189,453,52 -312,190,444,54 -320,188,437,55 -327,186,434,53 -330,188,427,55 -335,187,427,51 -342,183,426,49 -339,177,421,63 -343,178,420,59 -341,175,426,58 -341,180,422,57 -340,178,425,57 -350,171,422,57 -348,173,423,56 -362,170,417,51 -352,181,416,51 -364,172,410,54 -361,184,403,52 -372,182,397,49 -381,179,386,54 -384,178,382,56 -384,187,384,45 -383,192,372,53 -389,190,368,53 -381,204,358,57 -375,205,361,59 -373,202,361,64 -375,206,361,58 -375,204,361,60 -372,201,363,64 -363,207,364,66 -367,200,361,72 -346,212,362,80 -332,219,370,79 -326,230,361,83 -318,224,374,84 -315,232,373,80 -318,223,375,84 -309,230,380,81 -301,230,395,74 -303,221,396,80 -314,223,391,72 -318,218,389,75 -318,225,390,67 -326,207,399,68 -328,204,400,68 -325,202,412,61 -335,198,399,68 -344,192,396,68 -339,191,401,69 -328,200,404,68 -317,199,414,70 -318,204,415,63 -312,194,424,70 -318,191,428,63 -312,194,431,63 -316,188,435,61 -316,190,445,49 -328,188,434,50 -331,185,429,55 -338,184,417,61 -347,182,412,59 -342,188,413,57 -327,197,419,57 -328,197,404,71 -327,200,407,66 -331,199,406,64 -327,203,406,64 -318,215,408,59 -328,211,404,57 -329,208,400,63 -320,213,406,61 -314,213,409,64 -309,208,411,72 -318,208,402,72 -316,212,407,65 -321,201,407,71 -318,198,411,73 -316,198,416,70 -320,198,410,72 -312,208,411,69 -317,207,408,68 -324,203,404,69 -331,199,393,77 -324,193,410,73 -325,197,408,70 -324,200,418,58 -338,201,410,51 -340,198,399,63 -338,213,386,63 -326,221,386,67 -333,218,385,64 -337,219,391,53 -325,219,391,65 -319,219,391,71 -315,225,396,64 -321,221,385,73 -324,214,387,75 -314,215,400,71 -331,210,384,75 -333,211,377,79 -323,217,387,73 -319,219,386,76 -315,225,386,74 -309,229,379,83 -304,226,388,82 -288,228,397,87 -287,227,394,92 -280,231,400,89 -277,228,407,88 -279,230,404,87 -279,236,414,71 -278,227,418,77 -275,231,415,79 -267,227,422,84 -266,227,433,74 -269,218,437,76 -271,217,440,72 -277,206,446,71 -285,202,446,67 -278,197,455,70 -274,205,454,67 -277,205,448,70 -276,212,444,68 -285,207,439,69 -288,205,441,66 -286,204,437,73 -287,197,437,79 -288,207,439,66 -292,205,439,64 -291,204,437,68 -291,210,434,65 -299,204,438,59 -309,199,433,59 -318,201,425,56 -325,199,414,62 -331,196,411,62 -339,193,409,59 -339,190,405,66 -331,197,415,57 -332,193,413,62 -334,194,401,71 -334,201,402,63 -334,199,400,67 -326,214,391,69 -324,221,386,69 -321,219,394,66 -316,220,405,59 -314,211,408,67 -313,223,399,65 -305,218,407,70 -304,228,405,63 -296,226,405,73 -291,232,409,68 -294,231,408,67 -304,226,396,74 -297,230,396,77 -294,222,405,79 -285,235,408,72 -287,226,408,79 -285,228,412,75 -290,221,407,82 -294,222,413,71 -295,216,421,68 -299,213,419,69 -304,218,405,73 -312,217,397,74 -313,214,396,77 -315,207,402,76 -313,203,399,85 -314,209,397,80 -305,214,400,81 -305,207,406,82 -298,212,409,81 -297,211,409,83 -301,205,404,90 -301,209,407,83 -298,209,408,85 -290,222,413,75 -285,226,416,73 -288,226,406,80 -285,225,414,76 -295,222,413,70 -301,214,411,74 -301,222,412,65 -297,221,423,59 -296,215,421,68 -298,206,418,78 -312,196,417,75 -306,206,408,80 -308,208,417,67 -308,211,422,59 -302,217,418,63 -307,213,417,63 -303,207,417,73 -310,205,410,75 -312,209,415,64 -314,208,415,63 -311,212,417,60 -309,217,418,56 -315,206,410,69 -308,212,417,63 -305,213,413,69 -309,218,401,72 -299,230,405,66 -300,235,398,67 -309,228,407,56 -304,222,413,61 -298,219,410,73 -285,224,416,75 -281,223,425,71 -286,210,424,80 -284,215,419,82 -284,216,423,77 -282,200,436,82 -280,196,436,88 -278,205,444,73 -285,198,452,65 -283,200,452,65 -285,182,456,77 -287,188,454,71 -295,194,458,53 -306,193,447,54 -309,188,441,62 -301,192,446,61 -308,187,442,63 -308,180,441,71 -311,181,435,73 -309,190,434,67 -313,187,425,75 -305,193,432,70 -310,193,437,60 -320,187,432,61 -323,184,430,63 -332,181,430,57 -338,186,422,54 -336,180,418,66 -340,181,421,58 -353,176,419,52 -360,173,407,60 -362,165,399,74 -360,167,399,74 -353,168,407,72 -349,168,411,72 -344,179,414,63 -348,180,410,62 -347,176,416,61 -344,188,412,56 -352,179,407,62 -351,185,398,66 -353,181,400,66 -365,167,401,67 -358,180,402,60 -367,172,400,61 -360,175,397,68 -360,179,391,70 -355,179,400,66 -356,177,401,66 -356,182,406,56 -357,186,402,55 -364,188,387,61 -355,193,390,62 -338,202,403,57 -332,208,406,54 -333,201,404,62 -331,200,408,61 -322,201,415,62 -334,201,405,60 -333,200,401,66 -326,197,398,79 -322,200,405,73 -318,202,413,67 -321,193,414,72 -314,204,420,62 -318,202,415,65 -321,195,415,69 -324,195,407,74 -329,189,407,75 -333,195,402,70 -337,194,404,65 -334,195,403,68 -337,197,402,64 -331,209,393,67 -323,208,402,67 -316,208,409,67 -312,215,412,61 -314,210,417,59 -317,199,415,69 -320,201,405,74 -321,200,409,70 -312,200,412,76 -307,193,417,83 -319,196,418,67 -318,199,422,61 -322,206,418,54 -319,202,432,47 -324,199,421,56 -329,196,417,58 -336,198,411,55 -344,200,405,51 -348,198,402,52 -343,201,403,53 -354,200,394,52 -352,201,393,54 -350,200,385,65 -354,195,385,66 -355,193,392,60 -343,202,398,57 -354,194,390,62 -350,187,396,67 -354,183,398,65 -340,190,403,67 -341,185,411,63 -337,187,412,64 -344,181,411,64 -340,182,412,66 -353,182,394,71 -358,187,379,76 -356,178,386,80 -334,192,396,78 -341,192,390,77 -331,199,401,69 -324,204,401,71 -324,207,410,59 -331,207,406,56 -346,208,391,55 -354,202,384,60 -349,192,392,67 -347,199,389,65 -345,195,394,66 -336,203,392,69 -334,206,398,62 -344,203,394,59 -342,194,400,64 -327,201,406,66 -316,210,410,64 -321,209,407,63 -323,208,406,63 -317,205,416,62 -316,206,410,68 -317,209,402,72 -305,206,413,76 -300,207,413,80 -301,205,418,76 -297,207,422,74 -292,213,420,75 -315,203,406,76 -315,207,401,77 -311,209,394,86 -317,201,400,82 -306,206,415,73 -322,201,408,69 -321,211,404,64 -322,214,404,60 -317,214,406,63 -321,217,392,70 -313,219,407,61 -314,211,407,68 -323,207,403,67 -316,213,409,62 -319,208,401,72 -315,219,397,69 -313,212,395,80 -313,213,394,80 -315,208,404,73 -303,214,412,71 -301,214,404,81 -305,213,399,83 -294,226,401,79 diff --git a/outputToGraph.py b/outputToGraph.py index 31ad05c715ac545adc2c842ba89f01f194889245..ff17237bdd6ec76eeb8f01fb93b068aab1bdb296 100644 --- a/outputToGraph.py +++ b/outputToGraph.py @@ -28,6 +28,6 @@ def showDiagram(data): plt.show() -data = readCSV("output.csv") +data = readCSV("src/main/resources/output.csv") showDiagram(data) \ No newline at end of file diff --git a/src/main/java/sma/SMA.java b/src/main/java/sma/SMA.java index 2a17999e49b3bf687a4980c6d1d609d685ff6a8a..f3ec54b1405199ece7a1938a666ce28b50cc1830 100644 --- a/src/main/java/sma/SMA.java +++ b/src/main/java/sma/SMA.java @@ -90,7 +90,7 @@ public class SMA { private void doNextCycle() throws IOException, InterruptedException { scheduler.nextCycle(); stats = environment.getAgentStatus(); - StatsRecorder.writeToCSV(stats,"output.csv"); + StatsRecorder.writeToCSV(stats,"src/main/resources/output.csv"); updateGraphics(); if (parameters.getTimeBetweenCycles() > 0) { Thread.sleep(parameters.getTimeBetweenCycles()); diff --git a/src/main/java/utils/StatsRecorder.java b/src/main/java/utils/StatsRecorder.java index b8aa0f28606f4b7d19d99777fd5222fd1c2c41d5..616915a8de09b4a82aff1dbec1933fe4e8135b63 100644 --- a/src/main/java/utils/StatsRecorder.java +++ b/src/main/java/utils/StatsRecorder.java @@ -8,7 +8,6 @@ import java.util.List; public class StatsRecorder { private static int nbOfCycles = 0; - private static ClassLoader classLoader = Thread.currentThread().getContextClassLoader(); public static void writeToCSV(HashMap<String,Integer> data, String outputFile) throws IOException { diff --git a/src/main/java/utils/YamlReader.java b/src/main/java/utils/YamlReader.java index c1207594371c6cebc6703c7a21926fbfa976cd87..584434c4c85be68aae5bc8f3396d03ba1e2a44fd 100644 --- a/src/main/java/utils/YamlReader.java +++ b/src/main/java/utils/YamlReader.java @@ -12,12 +12,12 @@ public class YamlReader { private static ObjectMapper om = new ObjectMapper(new YAMLFactory()); private static Parameters parameters; - public static final String FILE_PATH = "parameters.yaml"; + public static final String FILE_PATH = "src/main/resources/parameters.yaml"; public static Parameters getParams() { if (parameters == null) { System.out.println("Getting parameters in parameters.yaml file ..."); - File file = new File(classLoader.getResource(FILE_PATH).getFile()); + File file = new File(FILE_PATH); try { parameters = om.readValue(file,Parameters.class); } catch (Exception e) { diff --git a/target/classes/output.csv b/target/classes/output.csv new file mode 100644 index 0000000000000000000000000000000000000000..3508bd63df9e83625bd63aad484e0100db38d21a --- /dev/null +++ b/target/classes/output.csv @@ -0,0 +1,190 @@ +SUCEPTIBLE,EXPOSED,RECOVERED,INFECTED +996,3,1,0 +997,3,0,0 +997,3,0,0 +995,4,0,1 +994,5,0,1 +994,5,1,0 +994,4,1,1 +991,6,1,2 +989,8,2,1 +987,9,3,1 +984,11,3,2 +982,13,3,2 +979,15,3,3 +973,20,4,3 +973,21,3,3 +971,21,5,3 +967,23,6,4 +965,22,8,5 +964,20,12,4 +961,20,14,5 +959,20,14,7 +960,20,12,8 +958,23,11,8 +953,28,14,5 +950,29,14,7 +942,32,18,8 +939,33,21,7 +937,32,21,10 +933,34,21,12 +920,43,22,15 +912,51,21,16 +906,49,25,20 +898,54,29,19 +897,51,33,19 +890,57,37,16 +889,58,39,14 +883,55,42,20 +878,52,50,20 +874,54,52,20 +867,57,55,21 +867,57,57,19 +860,63,62,15 +859,63,61,17 +863,62,60,15 +864,62,59,15 +861,60,61,18 +857,59,61,23 +848,64,64,24 +842,65,70,23 +838,66,74,22 +835,64,79,22 +829,67,82,22 +827,68,82,23 +827,67,79,27 +820,74,83,23 +810,74,88,28 +809,74,94,23 +804,78,100,18 +805,74,101,20 +799,76,108,17 +795,70,113,22 +792,75,115,18 +785,79,117,19 +779,80,122,19 +780,78,126,16 +782,76,127,15 +778,83,120,19 +770,86,122,22 +766,82,125,27 +758,81,132,29 +750,84,134,32 +746,85,137,32 +738,87,144,31 +739,90,144,27 +737,86,146,31 +734,85,142,39 +723,92,147,38 +717,95,151,37 +719,96,153,32 +717,99,156,28 +714,97,156,33 +698,105,161,36 +696,106,160,38 +690,107,164,39 +686,111,170,33 +687,111,173,29 +678,108,173,41 +668,115,180,37 +669,119,182,30 +666,125,180,29 +655,135,186,24 +657,131,181,31 +659,127,172,42 +656,134,168,42 +654,129,166,51 +648,136,165,51 +643,137,169,51 +628,147,176,49 +618,149,183,50 +621,146,192,41 +612,149,202,37 +608,148,202,42 +602,154,209,35 +598,148,207,47 +602,151,206,41 +601,145,213,41 +603,143,208,46 +585,153,218,44 +584,150,213,53 +585,151,214,50 +579,155,216,50 +573,158,219,50 +567,161,227,45 +557,167,234,42 +552,164,233,51 +549,160,238,53 +554,149,251,46 +554,147,251,48 +548,152,248,52 +550,147,256,47 +543,154,258,45 +540,151,263,46 +537,148,266,49 +528,158,267,47 +517,162,274,47 +519,169,264,48 +523,164,257,56 +519,165,265,51 +518,167,262,53 +512,163,265,60 +499,164,277,60 +499,168,277,56 +488,164,284,64 +486,164,282,68 +485,161,290,64 +474,170,292,64 +460,179,296,65 +453,184,296,67 +455,173,298,74 +446,179,295,80 +439,182,300,79 +436,188,299,77 +427,188,317,68 +418,189,325,68 +410,187,327,76 +408,193,330,69 +399,191,338,72 +396,190,349,65 +401,187,351,61 +409,178,343,70 +397,187,348,68 +389,201,360,50 +390,201,353,56 +379,206,359,56 +371,204,356,69 +368,202,357,73 +362,203,364,71 +358,201,376,65 +357,192,392,59 +372,191,382,55 +357,196,380,67 +357,206,374,63 +346,219,380,55 +337,223,377,63 +336,214,382,68 +331,219,384,66 +330,225,383,62 +339,218,385,58 +339,217,385,59 +332,210,388,70 +325,211,398,66 +312,210,394,84 +300,233,391,76 +289,237,401,73 +287,231,411,71 +292,226,412,70 +289,232,405,74 +290,234,411,65 +298,224,409,69 +298,220,411,71 +305,209,406,80 +300,203,412,85 +302,201,421,76 +302,202,418,78 +305,201,427,67 +303,201,423,73 +302,207,427,64 +307,201,425,67 +317,198,422,63