[{"date": "2018-01", "loc": 13, "path": "test/ca/mcgill/cs/jetuml/JavaFXLoader.java", "comments": 23, "loc_per_function": 6.5, "blanks_per_loc": 0.31, "num_funs": 2, "comments_per_loc": 1.77, "tokens": 66, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 33.0, "ccn_per_token": 0.030303030303030304, "functions_per_token": 0.030303030303030304, "loc_per_token": 0.19696969696969696, "ccn_per_loc": 0.15384615384615385, "functions_per_loc": 0.15384615384615385, "tokens_per_loc": 5.076923076923077}, {"date": "2018-01", "loc": 49, "path": "test/ca/mcgill/cs/jetuml/geom/TestLine.java", "comments": 20, "loc_per_function": 9.8, "blanks_per_loc": 0.18, "num_funs": 5, "comments_per_loc": 0.41, "tokens": 355, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 71.0, "ccn_per_token": 0.014084507042253521, "functions_per_token": 0.014084507042253521, "loc_per_token": 0.13802816901408452, "ccn_per_loc": 0.10204081632653061, "functions_per_loc": 0.10204081632653061, "tokens_per_loc": 7.244897959183674}, {"date": "2018-01", "loc": 54, "path": "test/ca/mcgill/cs/jetuml/geom/TestPoint.java", "comments": 20, "loc_per_function": 10.8, "blanks_per_loc": 0.17, "num_funs": 5, "comments_per_loc": 0.37, "tokens": 443, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 88.6, "ccn_per_token": 0.011286681715575621, "functions_per_token": 0.011286681715575621, "loc_per_token": 0.12189616252821671, "ccn_per_loc": 0.09259259259259259, "functions_per_loc": 0.09259259259259259, "tokens_per_loc": 8.203703703703704}, {"date": "2018-01", "loc": 85, "path": "test/ca/mcgill/cs/jetuml/geom/TestRectangle.java", "comments": 20, "loc_per_function": 9.44, "blanks_per_loc": 0.15, "num_funs": 9, "comments_per_loc": 0.24, "tokens": 727, "ccn": 9, "ccn_per_function": 1.0, "tokens_per_function": 80.77777777777777, "ccn_per_token": 0.012379642365887207, "functions_per_token": 0.012379642365887207, "loc_per_token": 0.11691884456671252, "ccn_per_loc": 0.10588235294117647, "functions_per_loc": 0.10588235294117647, "tokens_per_loc": 8.552941176470588}, {"date": "2018-01", "loc": 451, "path": "test/ca/mcgill/cs/jetuml/views/edges/TestSegmentationStrategies.java", "comments": 47, "loc_per_function": 19.61, "blanks_per_loc": 0.1, "num_funs": 23, "comments_per_loc": 0.1, "tokens": 4671, "ccn": 23, "ccn_per_function": 1.0, "tokens_per_function": 203.08695652173913, "ccn_per_token": 0.004923999143652323, "functions_per_token": 0.004923999143652323, "loc_per_token": 0.09655320059944338, "ccn_per_loc": 0.050997782705099776, "functions_per_loc": 0.050997782705099776, "tokens_per_loc": 10.356984478935699}, {"date": "2018-01", "loc": 70, "path": "test/ca/mcgill/cs/jetuml/views/edges/TestNoteEdgeView.java", "comments": 28, "loc_per_function": 17.5, "blanks_per_loc": 0.26, "num_funs": 4, "comments_per_loc": 0.4, "tokens": 597, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 149.25, "ccn_per_token": 0.006700167504187605, "functions_per_token": 0.006700167504187605, "loc_per_token": 0.11725293132328309, "ccn_per_loc": 0.05714285714285714, "functions_per_loc": 0.05714285714285714, "tokens_per_loc": 8.528571428571428}, {"date": "2018-01", "loc": 40, "path": "test/ca/mcgill/cs/jetuml/views/edges/TestDependencyEdgeView.java", "comments": 23, "loc_per_function": 13.33, "blanks_per_loc": 0.25, "num_funs": 3, "comments_per_loc": 0.57, "tokens": 261, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 87.0, "ccn_per_token": 0.011494252873563218, "functions_per_token": 0.011494252873563218, "loc_per_token": 0.1532567049808429, "ccn_per_loc": 0.075, "functions_per_loc": 0.075, "tokens_per_loc": 6.525}, {"date": "2018-01", "loc": 112, "path": "test/ca/mcgill/cs/jetuml/views/nodes/TestInterfaceNodeView.java", "comments": 25, "loc_per_function": 12.44, "blanks_per_loc": 0.18, "num_funs": 9, "comments_per_loc": 0.22, "tokens": 1273, "ccn": 16, "ccn_per_function": 1.7777777777777777, "tokens_per_function": 141.44444444444446, "ccn_per_token": 0.012568735271013355, "functions_per_token": 0.007069913589945012, "loc_per_token": 0.08798114689709348, "ccn_per_loc": 0.14285714285714285, "functions_per_loc": 0.08035714285714286, "tokens_per_loc": 11.366071428571429}, {"date": "2018-01", "loc": 126, "path": "test/ca/mcgill/cs/jetuml/views/nodes/TestClassViewNode.java", "comments": 25, "loc_per_function": 14.0, "blanks_per_loc": 0.18, "num_funs": 9, "comments_per_loc": 0.2, "tokens": 1682, "ccn": 21, "ccn_per_function": 2.3333333333333335, "tokens_per_function": 186.88888888888889, "ccn_per_token": 0.01248513674197384, "functions_per_token": 0.00535077288941736, "loc_per_token": 0.07491082045184304, "ccn_per_loc": 0.16666666666666666, "functions_per_loc": 0.07142857142857142, "tokens_per_loc": 13.34920634920635}, {"date": "2018-01", "loc": 126, "path": "test/ca/mcgill/cs/jetuml/views/nodes/TestFieldAndObjectNodeView.java", "comments": 38, "loc_per_function": 9.69, "blanks_per_loc": 0.15, "num_funs": 13, "comments_per_loc": 0.3, "tokens": 851, "ccn": 13, "ccn_per_function": 1.0, "tokens_per_function": 65.46153846153847, "ccn_per_token": 0.01527614571092832, "functions_per_token": 0.01527614571092832, "loc_per_token": 0.14806110458284372, "ccn_per_loc": 0.10317460317460317, "functions_per_loc": 0.10317460317460317, "tokens_per_loc": 6.753968253968254}, {"date": "2018-01", "loc": 396, "path": "test/ca/mcgill/cs/jetuml/diagram/TestUsageScenariosObjectDiagram.java", "comments": 113, "loc_per_function": 23.29, "blanks_per_loc": 0.16, "num_funs": 17, "comments_per_loc": 0.29, "tokens": 4617, "ccn": 19, "ccn_per_function": 1.1176470588235294, "tokens_per_function": 271.5882352941176, "ccn_per_token": 0.00411522633744856, "functions_per_token": 0.0036820446177171324, "loc_per_token": 0.08576998050682261, "ccn_per_loc": 0.047979797979797977, "functions_per_loc": 0.04292929292929293, "tokens_per_loc": 11.659090909090908}, {"date": "2018-01", "loc": 174, "path": "test/ca/mcgill/cs/jetuml/diagram/TestUsageScenarios.java", "comments": 36, "loc_per_function": 34.8, "blanks_per_loc": 0.18, "num_funs": 5, "comments_per_loc": 0.21, "tokens": 2173, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 434.6, "ccn_per_token": 0.002300966405890474, "functions_per_token": 0.002300966405890474, "loc_per_token": 0.0800736309249885, "ccn_per_loc": 0.028735632183908046, "functions_per_loc": 0.028735632183908046, "tokens_per_loc": 12.488505747126437}, {"date": "2018-01", "loc": 234, "path": "test/ca/mcgill/cs/jetuml/diagram/TestGraph.java", "comments": 33, "loc_per_function": 12.32, "blanks_per_loc": 0.12, "num_funs": 19, "comments_per_loc": 0.14, "tokens": 1832, "ccn": 19, "ccn_per_function": 1.0, "tokens_per_function": 96.42105263157895, "ccn_per_token": 0.01037117903930131, "functions_per_token": 0.01037117903930131, "loc_per_token": 0.1277292576419214, "ccn_per_loc": 0.0811965811965812, "functions_per_loc": 0.0811965811965812, "tokens_per_loc": 7.829059829059829}, {"date": "2018-01", "loc": 119, "path": "test/ca/mcgill/cs/jetuml/diagram/TestSequenceDiagramGraph.java", "comments": 50, "loc_per_function": 19.83, "blanks_per_loc": 0.31, "num_funs": 6, "comments_per_loc": 0.42, "tokens": 1192, "ccn": 6, "ccn_per_function": 1.0, "tokens_per_function": 198.66666666666666, "ccn_per_token": 0.0050335570469798654, "functions_per_token": 0.0050335570469798654, "loc_per_token": 0.09983221476510067, "ccn_per_loc": 0.05042016806722689, "functions_per_loc": 0.05042016806722689, "tokens_per_loc": 10.016806722689076}, {"date": "2018-01", "loc": 331, "path": "test/ca/mcgill/cs/jetuml/diagram/TestUsageScenariosStateDiagram.java", "comments": 103, "loc_per_function": 18.39, "blanks_per_loc": 0.14, "num_funs": 18, "comments_per_loc": 0.31, "tokens": 3443, "ccn": 21, "ccn_per_function": 1.1666666666666667, "tokens_per_function": 191.27777777777777, "ccn_per_token": 0.006099331977926227, "functions_per_token": 0.00522799883822248, "loc_per_token": 0.09613708974731339, "ccn_per_loc": 0.0634441087613293, "functions_per_loc": 0.054380664652567974, "tokens_per_loc": 10.401812688821753}, {"date": "2018-01", "loc": 197, "path": "test/ca/mcgill/cs/jetuml/diagram/TestProperties.java", "comments": 20, "loc_per_function": 11.59, "blanks_per_loc": 0.12, "num_funs": 17, "comments_per_loc": 0.1, "tokens": 1940, "ccn": 18, "ccn_per_function": 1.0588235294117647, "tokens_per_function": 114.11764705882354, "ccn_per_token": 0.009278350515463918, "functions_per_token": 0.008762886597938144, "loc_per_token": 0.10154639175257732, "ccn_per_loc": 0.09137055837563451, "functions_per_loc": 0.08629441624365482, "tokens_per_loc": 9.847715736040609}, {"date": "2018-01", "loc": 19, "path": "test/ca/mcgill/cs/jetuml/diagram/TestProperty.java", "comments": 20, "loc_per_function": 19.0, "blanks_per_loc": 0.26, "num_funs": 1, "comments_per_loc": 1.05, "tokens": 150, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 150.0, "ccn_per_token": 0.006666666666666667, "functions_per_token": 0.006666666666666667, "loc_per_token": 0.12666666666666668, "ccn_per_loc": 0.05263157894736842, "functions_per_loc": 0.05263157894736842, "tokens_per_loc": 7.894736842105263}, {"date": "2018-01", "loc": 586, "path": "test/ca/mcgill/cs/jetuml/diagram/TestUsageScenariosClassDiagram.java", "comments": 122, "loc_per_function": 21.7, "blanks_per_loc": 0.15, "num_funs": 27, "comments_per_loc": 0.21, "tokens": 6631, "ccn": 39, "ccn_per_function": 1.4444444444444444, "tokens_per_function": 245.59259259259258, "ccn_per_token": 0.00588146584225607, "functions_per_token": 0.004071784044638818, "loc_per_token": 0.08837279445030916, "ccn_per_loc": 0.06655290102389079, "functions_per_loc": 0.04607508532423208, "tokens_per_loc": 11.315699658703071}, {"date": "2018-01", "loc": 335, "path": "test/ca/mcgill/cs/jetuml/diagram/TestUsageScenariosUseCaseDiagram.java", "comments": 100, "loc_per_function": 23.93, "blanks_per_loc": 0.13, "num_funs": 14, "comments_per_loc": 0.3, "tokens": 4245, "ccn": 22, "ccn_per_function": 1.5714285714285714, "tokens_per_function": 303.2142857142857, "ccn_per_token": 0.005182567726737338, "functions_per_token": 0.003297997644287397, "loc_per_token": 0.07891637220259129, "ccn_per_loc": 0.06567164179104477, "functions_per_loc": 0.041791044776119404, "tokens_per_loc": 12.671641791044776}, {"date": "2018-01", "loc": 560, "path": "test/ca/mcgill/cs/jetuml/diagram/TestUsageScenariosSequenceDiagram.java", "comments": 120, "loc_per_function": 23.33, "blanks_per_loc": 0.16, "num_funs": 24, "comments_per_loc": 0.21, "tokens": 6956, "ccn": 33, "ccn_per_function": 1.375, "tokens_per_function": 289.8333333333333, "ccn_per_token": 0.004744105807935595, "functions_per_token": 0.0034502587694077054, "loc_per_token": 0.08050603795284646, "ccn_per_loc": 0.05892857142857143, "functions_per_loc": 0.04285714285714286, "tokens_per_loc": 12.42142857142857}, {"date": "2018-01", "loc": 50, "path": "test/ca/mcgill/cs/jetuml/diagram/edges/TestNoteEdge.java", "comments": 27, "loc_per_function": 12.5, "blanks_per_loc": 0.22, "num_funs": 4, "comments_per_loc": 0.54, "tokens": 339, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 84.75, "ccn_per_token": 0.011799410029498525, "functions_per_token": 0.011799410029498525, "loc_per_token": 0.14749262536873156, "ccn_per_loc": 0.08, "functions_per_loc": 0.08, "tokens_per_loc": 6.78}, {"date": "2018-01", "loc": 32, "path": "test/ca/mcgill/cs/jetuml/diagram/edges/TestCallEdge.java", "comments": 20, "loc_per_function": 16.0, "blanks_per_loc": 0.25, "num_funs": 2, "comments_per_loc": 0.62, "tokens": 291, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 145.5, "ccn_per_token": 0.006872852233676976, "functions_per_token": 0.006872852233676976, "loc_per_token": 0.10996563573883161, "ccn_per_loc": 0.0625, "functions_per_loc": 0.0625, "tokens_per_loc": 9.09375}, {"date": "2018-01", "loc": 25, "path": "test/ca/mcgill/cs/jetuml/diagram/edges/TestUseCaseDependencyEdge.java", "comments": 20, "loc_per_function": 12.5, "blanks_per_loc": 0.28, "num_funs": 2, "comments_per_loc": 0.8, "tokens": 178, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 89.0, "ccn_per_token": 0.011235955056179775, "functions_per_token": 0.011235955056179775, "loc_per_token": 0.1404494382022472, "ccn_per_loc": 0.08, "functions_per_loc": 0.08, "tokens_per_loc": 7.12}, {"date": "2018-01", "loc": 37, "path": "test/ca/mcgill/cs/jetuml/diagram/nodes/TestActorNode.java", "comments": 23, "loc_per_function": 12.33, "blanks_per_loc": 0.22, "num_funs": 3, "comments_per_loc": 0.62, "tokens": 270, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 90.0, "ccn_per_token": 0.011111111111111112, "functions_per_token": 0.011111111111111112, "loc_per_token": 0.13703703703703704, "ccn_per_loc": 0.08108108108108109, "functions_per_loc": 0.08108108108108109, "tokens_per_loc": 7.297297297297297}, {"date": "2018-01", "loc": 76, "path": "test/ca/mcgill/cs/jetuml/diagram/nodes/TestInterfaceNode.java", "comments": 23, "loc_per_function": 10.86, "blanks_per_loc": 0.16, "num_funs": 7, "comments_per_loc": 0.3, "tokens": 533, "ccn": 7, "ccn_per_function": 1.0, "tokens_per_function": 76.14285714285714, "ccn_per_token": 0.013133208255159476, "functions_per_token": 0.013133208255159476, "loc_per_token": 0.1425891181988743, "ccn_per_loc": 0.09210526315789473, "functions_per_loc": 0.09210526315789473, "tokens_per_loc": 7.0131578947368425}, {"date": "2018-01", "loc": 132, "path": "test/ca/mcgill/cs/jetuml/diagram/nodes/TestObjectNode.java", "comments": 24, "loc_per_function": 16.5, "blanks_per_loc": 0.17, "num_funs": 8, "comments_per_loc": 0.18, "tokens": 1309, "ccn": 8, "ccn_per_function": 1.0, "tokens_per_function": 163.625, "ccn_per_token": 0.006111535523300229, "functions_per_token": 0.006111535523300229, "loc_per_token": 0.10084033613445378, "ccn_per_loc": 0.06060606060606061, "functions_per_loc": 0.06060606060606061, "tokens_per_loc": 9.916666666666666}, {"date": "2018-01", "loc": 133, "path": "test/ca/mcgill/cs/jetuml/diagram/nodes/TestPackageNode.java", "comments": 24, "loc_per_function": 22.17, "blanks_per_loc": 0.14, "num_funs": 6, "comments_per_loc": 0.18, "tokens": 1348, "ccn": 6, "ccn_per_function": 1.0, "tokens_per_function": 224.66666666666666, "ccn_per_token": 0.004451038575667656, "functions_per_token": 0.004451038575667656, "loc_per_token": 0.09866468842729971, "ccn_per_loc": 0.045112781954887216, "functions_per_loc": 0.045112781954887216, "tokens_per_loc": 10.135338345864662}, {"date": "2018-01", "loc": 29, "path": "test/ca/mcgill/cs/jetuml/diagram/nodes/TestCallNode.java", "comments": 20, "loc_per_function": 14.5, "blanks_per_loc": 0.24, "num_funs": 2, "comments_per_loc": 0.69, "tokens": 228, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 114.0, "ccn_per_token": 0.008771929824561403, "functions_per_token": 0.008771929824561403, "loc_per_token": 0.12719298245614036, "ccn_per_loc": 0.06896551724137931, "functions_per_loc": 0.06896551724137931, "tokens_per_loc": 7.862068965517241}, {"date": "2018-01", "loc": 95, "path": "test/ca/mcgill/cs/jetuml/diagram/nodes/TestImplicitParameterNode.java", "comments": 24, "loc_per_function": 15.83, "blanks_per_loc": 0.19, "num_funs": 6, "comments_per_loc": 0.25, "tokens": 923, "ccn": 6, "ccn_per_function": 1.0, "tokens_per_function": 153.83333333333334, "ccn_per_token": 0.0065005417118093175, "functions_per_token": 0.0065005417118093175, "loc_per_token": 0.10292524377031419, "ccn_per_loc": 0.06315789473684211, "functions_per_loc": 0.06315789473684211, "tokens_per_loc": 9.715789473684211}, {"date": "2018-01", "loc": 77, "path": "test/ca/mcgill/cs/jetuml/diagram/nodes/TestClassNode.java", "comments": 23, "loc_per_function": 11.0, "blanks_per_loc": 0.16, "num_funs": 7, "comments_per_loc": 0.3, "tokens": 538, "ccn": 7, "ccn_per_function": 1.0, "tokens_per_function": 76.85714285714286, "ccn_per_token": 0.013011152416356878, "functions_per_token": 0.013011152416356878, "loc_per_token": 0.14312267657992564, "ccn_per_loc": 0.09090909090909091, "functions_per_loc": 0.09090909090909091, "tokens_per_loc": 6.987012987012987}, {"date": "2018-01", "loc": 111, "path": "test/ca/mcgill/cs/jetuml/application/TestJavaVersion.java", "comments": 20, "loc_per_function": 13.88, "blanks_per_loc": 0.13, "num_funs": 8, "comments_per_loc": 0.18, "tokens": 893, "ccn": 8, "ccn_per_function": 1.0, "tokens_per_function": 111.625, "ccn_per_token": 0.008958566629339306, "functions_per_token": 0.008958566629339306, "loc_per_token": 0.12430011198208286, "ccn_per_loc": 0.07207207207207207, "functions_per_loc": 0.07207207207207207, "tokens_per_loc": 8.045045045045045}, {"date": "2018-01", "loc": 17, "path": "test/ca/mcgill/cs/jetuml/application/TestApplicationResources.java", "comments": 20, "loc_per_function": 8.5, "blanks_per_loc": 0.24, "num_funs": 2, "comments_per_loc": 1.18, "tokens": 91, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 45.5, "ccn_per_token": 0.02197802197802198, "functions_per_token": 0.02197802197802198, "loc_per_token": 0.18681318681318682, "ccn_per_loc": 0.11764705882352941, "functions_per_loc": 0.11764705882352941, "tokens_per_loc": 5.352941176470588}, {"date": "2018-01", "loc": 155, "path": "test/ca/mcgill/cs/jetuml/application/TestPropertyChangeTracker.java", "comments": 23, "loc_per_function": 14.09, "blanks_per_loc": 0.1, "num_funs": 11, "comments_per_loc": 0.15, "tokens": 881, "ccn": 16, "ccn_per_function": 1.4545454545454546, "tokens_per_function": 80.0909090909091, "ccn_per_token": 0.018161180476730987, "functions_per_token": 0.012485811577752554, "loc_per_token": 0.17593643586833144, "ccn_per_loc": 0.1032258064516129, "functions_per_loc": 0.07096774193548387, "tokens_per_loc": 5.683870967741935}, {"date": "2018-01", "loc": 31, "path": "test/ca/mcgill/cs/jetuml/application/TestFileExtensions.java", "comments": 20, "loc_per_function": 10.33, "blanks_per_loc": 0.23, "num_funs": 3, "comments_per_loc": 0.65, "tokens": 165, "ccn": 4, "ccn_per_function": 1.3333333333333333, "tokens_per_function": 55.0, "ccn_per_token": 0.024242424242424242, "functions_per_token": 0.01818181818181818, "loc_per_token": 0.18787878787878787, "ccn_per_loc": 0.12903225806451613, "functions_per_loc": 0.0967741935483871, "tokens_per_loc": 5.32258064516129}, {"date": "2018-01", "loc": 171, "path": "test/ca/mcgill/cs/jetuml/application/TestUndoManager.java", "comments": 23, "loc_per_function": 21.38, "blanks_per_loc": 0.08, "num_funs": 8, "comments_per_loc": 0.13, "tokens": 1330, "ccn": 11, "ccn_per_function": 1.375, "tokens_per_function": 166.25, "ccn_per_token": 0.008270676691729323, "functions_per_token": 0.006015037593984963, "loc_per_token": 0.12857142857142856, "ccn_per_loc": 0.06432748538011696, "functions_per_loc": 0.04678362573099415, "tokens_per_loc": 7.777777777777778}, {"date": "2018-01", "loc": 250, "path": "test/ca/mcgill/cs/jetuml/application/TestClipboard.java", "comments": 23, "loc_per_function": 20.83, "blanks_per_loc": 0.08, "num_funs": 12, "comments_per_loc": 0.09, "tokens": 2349, "ccn": 12, "ccn_per_function": 1.0, "tokens_per_function": 195.75, "ccn_per_token": 0.005108556832694764, "functions_per_token": 0.005108556832694764, "loc_per_token": 0.10642826734780758, "ccn_per_loc": 0.048, "functions_per_loc": 0.048, "tokens_per_loc": 9.396}, {"date": "2018-01", "loc": 172, "path": "test/ca/mcgill/cs/jetuml/application/TestMoveTracker.java", "comments": 30, "loc_per_function": 21.5, "blanks_per_loc": 0.1, "num_funs": 8, "comments_per_loc": 0.17, "tokens": 1222, "ccn": 12, "ccn_per_function": 1.5, "tokens_per_function": 152.75, "ccn_per_token": 0.009819967266775777, "functions_per_token": 0.006546644844517185, "loc_per_token": 0.1407528641571195, "ccn_per_loc": 0.06976744186046512, "functions_per_loc": 0.046511627906976744, "tokens_per_loc": 7.104651162790698}, {"date": "2018-01", "loc": 140, "path": "test/ca/mcgill/cs/jetuml/application/TestRecentFilesQueue.java", "comments": 20, "loc_per_function": 28.0, "blanks_per_loc": 0.18, "num_funs": 5, "comments_per_loc": 0.14, "tokens": 1511, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 302.2, "ccn_per_token": 0.0033090668431502318, "functions_per_token": 0.0033090668431502318, "loc_per_token": 0.09265387160820648, "ccn_per_loc": 0.03571428571428571, "functions_per_loc": 0.03571428571428571, "tokens_per_loc": 10.792857142857143}, {"date": "2018-01", "loc": 247, "path": "test/ca/mcgill/cs/jetuml/gui/TestViewportProjection.java", "comments": 20, "loc_per_function": 13.72, "blanks_per_loc": 0.12, "num_funs": 18, "comments_per_loc": 0.08, "tokens": 2629, "ccn": 18, "ccn_per_function": 1.0, "tokens_per_function": 146.05555555555554, "ccn_per_token": 0.006846709775580068, "functions_per_token": 0.006846709775580068, "loc_per_token": 0.09395207303157094, "ccn_per_loc": 0.0728744939271255, "functions_per_loc": 0.0728744939271255, "tokens_per_loc": 10.643724696356275}, {"date": "2018-01", "loc": 94, "path": "test/ca/mcgill/cs/jetuml/gui/TestMenuFactory.java", "comments": 24, "loc_per_function": 11.75, "blanks_per_loc": 0.14, "num_funs": 8, "comments_per_loc": 0.26, "tokens": 603, "ccn": 10, "ccn_per_function": 1.25, "tokens_per_function": 75.375, "ccn_per_token": 0.01658374792703151, "functions_per_token": 0.013266998341625208, "loc_per_token": 0.1558872305140962, "ccn_per_loc": 0.10638297872340426, "functions_per_loc": 0.0851063829787234, "tokens_per_loc": 6.414893617021277}, {"date": "2018-01", "loc": 501, "path": "test/ca/mcgill/cs/jetuml/gui/TestSelectionModel.java", "comments": 44, "loc_per_function": 12.22, "blanks_per_loc": 0.1, "num_funs": 41, "comments_per_loc": 0.09, "tokens": 3560, "ccn": 43, "ccn_per_function": 1.048780487804878, "tokens_per_function": 86.82926829268293, "ccn_per_token": 0.012078651685393259, "functions_per_token": 0.011516853932584269, "loc_per_token": 0.14073033707865168, "ccn_per_loc": 0.08582834331337326, "functions_per_loc": 0.08183632734530938, "tokens_per_loc": 7.105788423153693}, {"date": "2018-01", "loc": 13, "path": "test/ca/mcgill/cs/jetuml/gui/TestEditorFrame.java", "comments": 20, "loc_per_function": 13.0, "blanks_per_loc": 0.23, "num_funs": 1, "comments_per_loc": 1.54, "tokens": 90, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 90.0, "ccn_per_token": 0.011111111111111112, "functions_per_token": 0.011111111111111112, "loc_per_token": 0.14444444444444443, "ccn_per_loc": 0.07692307692307693, "functions_per_loc": 0.07692307692307693, "tokens_per_loc": 6.923076923076923}, {"date": "2018-01", "loc": 59, "path": "test/ca/mcgill/cs/jetuml/commands/TestAddNodeCommand.java", "comments": 23, "loc_per_function": 14.75, "blanks_per_loc": 0.15, "num_funs": 4, "comments_per_loc": 0.39, "tokens": 365, "ccn": 5, "ccn_per_function": 1.25, "tokens_per_function": 91.25, "ccn_per_token": 0.0136986301369863, "functions_per_token": 0.010958904109589041, "loc_per_token": 0.16164383561643836, "ccn_per_loc": 0.0847457627118644, "functions_per_loc": 0.06779661016949153, "tokens_per_loc": 6.186440677966102}, {"date": "2018-01", "loc": 45, "path": "test/ca/mcgill/cs/jetuml/commands/TestMoveCommand.java", "comments": 23, "loc_per_function": 11.25, "blanks_per_loc": 0.18, "num_funs": 4, "comments_per_loc": 0.51, "tokens": 432, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 108.0, "ccn_per_token": 0.009259259259259259, "functions_per_token": 0.009259259259259259, "loc_per_token": 0.10416666666666667, "ccn_per_loc": 0.08888888888888889, "functions_per_loc": 0.08888888888888889, "tokens_per_loc": 9.6}, {"date": "2018-01", "loc": 187, "path": "test/ca/mcgill/cs/jetuml/commands/TestCompoundCommand.java", "comments": 23, "loc_per_function": 23.38, "blanks_per_loc": 0.11, "num_funs": 8, "comments_per_loc": 0.12, "tokens": 1598, "ccn": 13, "ccn_per_function": 1.625, "tokens_per_function": 199.75, "ccn_per_token": 0.008135168961201502, "functions_per_token": 0.0050062578222778474, "loc_per_token": 0.11702127659574468, "ccn_per_loc": 0.06951871657754011, "functions_per_loc": 0.0427807486631016, "tokens_per_loc": 8.545454545454545}, {"date": "2018-01", "loc": 60, "path": "test/ca/mcgill/cs/jetuml/commands/TestDeleteNodeCommand.java", "comments": 23, "loc_per_function": 15.0, "blanks_per_loc": 0.15, "num_funs": 4, "comments_per_loc": 0.38, "tokens": 367, "ccn": 5, "ccn_per_function": 1.25, "tokens_per_function": 91.75, "ccn_per_token": 0.013623978201634877, "functions_per_token": 0.010899182561307902, "loc_per_token": 0.16348773841961853, "ccn_per_loc": 0.08333333333333333, "functions_per_loc": 0.06666666666666667, "tokens_per_loc": 6.116666666666666}, {"date": "2018-01", "loc": 58, "path": "test/ca/mcgill/cs/jetuml/commands/TestRemoveEdgeCommand.java", "comments": 23, "loc_per_function": 14.5, "blanks_per_loc": 0.17, "num_funs": 4, "comments_per_loc": 0.4, "tokens": 339, "ccn": 5, "ccn_per_function": 1.25, "tokens_per_function": 84.75, "ccn_per_token": 0.014749262536873156, "functions_per_token": 0.011799410029498525, "loc_per_token": 0.1710914454277286, "ccn_per_loc": 0.08620689655172414, "functions_per_loc": 0.06896551724137931, "tokens_per_loc": 5.844827586206897}, {"date": "2018-01", "loc": 57, "path": "test/ca/mcgill/cs/jetuml/commands/TestAddEdgeCommandTest.java", "comments": 23, "loc_per_function": 14.25, "blanks_per_loc": 0.16, "num_funs": 4, "comments_per_loc": 0.4, "tokens": 337, "ccn": 5, "ccn_per_function": 1.25, "tokens_per_function": 84.25, "ccn_per_token": 0.01483679525222552, "functions_per_token": 0.011869436201780416, "loc_per_token": 0.16913946587537093, "ccn_per_loc": 0.08771929824561403, "functions_per_loc": 0.07017543859649122, "tokens_per_loc": 5.912280701754386}, {"date": "2018-01", "loc": 30, "path": "test/ca/mcgill/cs/jetuml/commands/TestChangePropertyCommand.java", "comments": 20, "loc_per_function": 15.0, "blanks_per_loc": 0.2, "num_funs": 2, "comments_per_loc": 0.67, "tokens": 218, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 109.0, "ccn_per_token": 0.009174311926605505, "functions_per_token": 0.009174311926605505, "loc_per_token": 0.13761467889908258, "ccn_per_loc": 0.06666666666666667, "functions_per_loc": 0.06666666666666667, "tokens_per_loc": 7.266666666666667}, {"date": "2018-01", "loc": 28, "path": "test/ca/mcgill/cs/jetuml/persistence/TestJsonDecoder.java", "comments": 31, "loc_per_function": 9.33, "blanks_per_loc": 0.21, "num_funs": 3, "comments_per_loc": 1.11, "tokens": 152, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 50.666666666666664, "ccn_per_token": 0.019736842105263157, "functions_per_token": 0.019736842105263157, "loc_per_token": 0.18421052631578946, "ccn_per_loc": 0.10714285714285714, "functions_per_loc": 0.10714285714285714, "tokens_per_loc": 5.428571428571429}, {"date": "2018-01", "loc": 565, "path": "test/ca/mcgill/cs/jetuml/persistence/TestPersistenceService.java", "comments": 23, "loc_per_function": 43.46, "blanks_per_loc": 0.23, "num_funs": 13, "comments_per_loc": 0.04, "tokens": 7874, "ccn": 24, "ccn_per_function": 1.8461538461538463, "tokens_per_function": 605.6923076923077, "ccn_per_token": 0.003048006096012192, "functions_per_token": 0.001651003302006604, "loc_per_token": 0.07175514351028701, "ccn_per_loc": 0.04247787610619469, "functions_per_loc": 0.023008849557522124, "tokens_per_loc": 13.936283185840708}, {"date": "2018-01", "loc": 59, "path": "test/ca/mcgill/cs/jetuml/persistence/TestJsonEncodingClassDiagram.java", "comments": 26, "loc_per_function": 11.8, "blanks_per_loc": 0.22, "num_funs": 5, "comments_per_loc": 0.44, "tokens": 459, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 91.8, "ccn_per_token": 0.010893246187363835, "functions_per_token": 0.010893246187363835, "loc_per_token": 0.12854030501089325, "ccn_per_loc": 0.0847457627118644, "functions_per_loc": 0.0847457627118644, "tokens_per_loc": 7.779661016949152}, {"date": "2018-01", "loc": 92, "path": "test/ca/mcgill/cs/jetuml/persistence/TestSerializationContext.java", "comments": 23, "loc_per_function": 13.14, "blanks_per_loc": 0.13, "num_funs": 7, "comments_per_loc": 0.25, "tokens": 486, "ccn": 10, "ccn_per_function": 1.4285714285714286, "tokens_per_function": 69.42857142857143, "ccn_per_token": 0.0205761316872428, "functions_per_token": 0.01440329218106996, "loc_per_token": 0.18930041152263374, "ccn_per_loc": 0.10869565217391304, "functions_per_loc": 0.07608695652173914, "tokens_per_loc": 5.282608695652174}, {"date": "2018-01", "loc": 75, "path": "test/ca/mcgill/cs/jetuml/persistence/TestDeserializationContext.java", "comments": 25, "loc_per_function": 15.0, "blanks_per_loc": 0.15, "num_funs": 5, "comments_per_loc": 0.33, "tokens": 510, "ccn": 6, "ccn_per_function": 1.2, "tokens_per_function": 102.0, "ccn_per_token": 0.011764705882352941, "functions_per_token": 0.00980392156862745, "loc_per_token": 0.14705882352941177, "ccn_per_loc": 0.08, "functions_per_loc": 0.06666666666666667, "tokens_per_loc": 6.8}, {"date": "2018-01", "loc": 185, "path": "test/ca/mcgill/cs/jetuml/persistence/TestJsonEncodingStateDiagram.java", "comments": 34, "loc_per_function": 16.82, "blanks_per_loc": 0.15, "num_funs": 11, "comments_per_loc": 0.18, "tokens": 1819, "ccn": 11, "ccn_per_function": 1.0, "tokens_per_function": 165.36363636363637, "ccn_per_token": 0.006047278724573941, "functions_per_token": 0.006047278724573941, "loc_per_token": 0.1017042330951072, "ccn_per_loc": 0.05945945945945946, "functions_per_loc": 0.05945945945945946, "tokens_per_loc": 9.832432432432432}, {"date": "2018-01", "loc": 112, "path": "test/ca/mcgill/cs/jetuml/persistence/PersistenceTestUtils.java", "comments": 30, "loc_per_function": 18.67, "blanks_per_loc": 0.08, "num_funs": 6, "comments_per_loc": 0.27, "tokens": 602, "ccn": 23, "ccn_per_function": 3.8333333333333335, "tokens_per_function": 100.33333333333333, "ccn_per_token": 0.03820598006644518, "functions_per_token": 0.009966777408637873, "loc_per_token": 0.18604651162790697, "ccn_per_loc": 0.20535714285714285, "functions_per_loc": 0.05357142857142857, "tokens_per_loc": 5.375}, {"date": "2018-01", "loc": 123, "path": "test/ca/mcgill/cs/jetuml/persistence/TestJsonEncodingUseCaseDiagram.java", "comments": 30, "loc_per_function": 13.67, "blanks_per_loc": 0.24, "num_funs": 9, "comments_per_loc": 0.24, "tokens": 1123, "ccn": 9, "ccn_per_function": 1.0, "tokens_per_function": 124.77777777777777, "ccn_per_token": 0.008014247551202136, "functions_per_token": 0.008014247551202136, "loc_per_token": 0.10952804986642921, "ccn_per_loc": 0.07317073170731707, "functions_per_loc": 0.07317073170731707, "tokens_per_loc": 9.130081300813009}, {"date": "2018-01", "loc": 87, "path": "src/ca/mcgill/cs/jetuml/UMLEditor.java", "comments": 37, "loc_per_function": 14.5, "blanks_per_loc": 0.16, "num_funs": 6, "comments_per_loc": 0.43, "tokens": 607, "ccn": 8, "ccn_per_function": 1.3333333333333333, "tokens_per_function": 101.16666666666667, "ccn_per_token": 0.013179571663920923, "functions_per_token": 0.009884678747940691, "loc_per_token": 0.14332784184514002, "ccn_per_loc": 0.09195402298850575, "functions_per_loc": 0.06896551724137931, "tokens_per_loc": 6.977011494252873}, {"date": "2018-01", "loc": 78, "path": "src/ca/mcgill/cs/jetuml/geom/Point.java", "comments": 51, "loc_per_function": 7.8, "blanks_per_loc": 0.14, "num_funs": 10, "comments_per_loc": 0.65, "tokens": 301, "ccn": 15, "ccn_per_function": 1.5, "tokens_per_function": 30.1, "ccn_per_token": 0.04983388704318937, "functions_per_token": 0.03322259136212625, "loc_per_token": 0.2591362126245847, "ccn_per_loc": 0.19230769230769232, "functions_per_loc": 0.1282051282051282, "tokens_per_loc": 3.858974358974359}, {"date": "2018-01", "loc": 44, "path": "src/ca/mcgill/cs/jetuml/geom/Direction.java", "comments": 51, "loc_per_function": 7.33, "blanks_per_loc": 0.2, "num_funs": 6, "comments_per_loc": 1.16, "tokens": 278, "ccn": 7, "ccn_per_function": 1.1666666666666667, "tokens_per_function": 46.333333333333336, "ccn_per_token": 0.025179856115107913, "functions_per_token": 0.02158273381294964, "loc_per_token": 0.15827338129496402, "ccn_per_loc": 0.1590909090909091, "functions_per_loc": 0.13636363636363635, "tokens_per_loc": 6.318181818181818}, {"date": "2018-01", "loc": 33, "path": "src/ca/mcgill/cs/jetuml/geom/Conversions.java", "comments": 46, "loc_per_function": 6.6, "blanks_per_loc": 0.18, "num_funs": 5, "comments_per_loc": 1.39, "tokens": 237, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 47.4, "ccn_per_token": 0.02109704641350211, "functions_per_token": 0.02109704641350211, "loc_per_token": 0.13924050632911392, "ccn_per_loc": 0.15151515151515152, "functions_per_loc": 0.15151515151515152, "tokens_per_loc": 7.181818181818182}, {"date": "2018-01", "loc": 80, "path": "src/ca/mcgill/cs/jetuml/geom/Line.java", "comments": 53, "loc_per_function": 7.27, "blanks_per_loc": 0.15, "num_funs": 11, "comments_per_loc": 0.66, "tokens": 309, "ccn": 17, "ccn_per_function": 1.5454545454545454, "tokens_per_function": 28.09090909090909, "ccn_per_token": 0.05501618122977346, "functions_per_token": 0.03559870550161812, "loc_per_token": 0.2588996763754045, "ccn_per_loc": 0.2125, "functions_per_loc": 0.1375, "tokens_per_loc": 3.8625}, {"date": "2018-01", "loc": 135, "path": "src/ca/mcgill/cs/jetuml/geom/Rectangle.java", "comments": 83, "loc_per_function": 7.94, "blanks_per_loc": 0.13, "num_funs": 17, "comments_per_loc": 0.61, "tokens": 726, "ccn": 34, "ccn_per_function": 2.0, "tokens_per_function": 42.705882352941174, "ccn_per_token": 0.046831955922865015, "functions_per_token": 0.023415977961432508, "loc_per_token": 0.1859504132231405, "ccn_per_loc": 0.2518518518518518, "functions_per_loc": 0.1259259259259259, "tokens_per_loc": 5.377777777777778}, {"date": "2018-01", "loc": 113, "path": "src/ca/mcgill/cs/jetuml/views/StringViewer.java", "comments": 49, "loc_per_function": 22.6, "blanks_per_loc": 0.14, "num_funs": 5, "comments_per_loc": 0.43, "tokens": 755, "ccn": 16, "ccn_per_function": 3.2, "tokens_per_function": 151.0, "ccn_per_token": 0.02119205298013245, "functions_per_token": 0.006622516556291391, "loc_per_token": 0.14966887417218544, "ccn_per_loc": 0.1415929203539823, "functions_per_loc": 0.04424778761061947, "tokens_per_loc": 6.68141592920354}, {"date": "2018-01", "loc": 10, "path": "src/ca/mcgill/cs/jetuml/views/ArrowHead.java", "comments": 26, "loc_per_function": 10.0, "blanks_per_loc": 0.4, "num_funs": 1, "comments_per_loc": 2.6, "tokens": 51, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 51.0, "ccn_per_token": 0.0196078431372549, "functions_per_token": 0.0196078431372549, "loc_per_token": 0.19607843137254902, "ccn_per_loc": 0.1, "functions_per_loc": 0.1, "tokens_per_loc": 5.1}, {"date": "2018-01", "loc": 145, "path": "src/ca/mcgill/cs/jetuml/views/ImageCreator.java", "comments": 43, "loc_per_function": 24.17, "blanks_per_loc": 0.07, "num_funs": 6, "comments_per_loc": 0.3, "tokens": 1148, "ccn": 10, "ccn_per_function": 1.6666666666666667, "tokens_per_function": 191.33333333333334, "ccn_per_token": 0.008710801393728223, "functions_per_token": 0.005226480836236934, "loc_per_token": 0.12630662020905922, "ccn_per_loc": 0.06896551724137931, "functions_per_loc": 0.041379310344827586, "tokens_per_loc": 7.917241379310345}, {"date": "2018-01", "loc": 110, "path": "src/ca/mcgill/cs/jetuml/views/ToolGraphics.java", "comments": 91, "loc_per_function": 11.0, "blanks_per_loc": 0.12, "num_funs": 10, "comments_per_loc": 0.83, "tokens": 1069, "ccn": 15, "ccn_per_function": 1.5, "tokens_per_function": 106.9, "ccn_per_token": 0.01403180542563143, "functions_per_token": 0.009354536950420954, "loc_per_token": 0.1028999064546305, "ccn_per_loc": 0.13636363636363635, "functions_per_loc": 0.09090909090909091, "tokens_per_loc": 9.718181818181819}, {"date": "2018-01", "loc": 38, "path": "src/ca/mcgill/cs/jetuml/views/Grid.java", "comments": 36, "loc_per_function": 12.67, "blanks_per_loc": 0.18, "num_funs": 3, "comments_per_loc": 0.95, "tokens": 360, "ccn": 5, "ccn_per_function": 1.6666666666666667, "tokens_per_function": 120.0, "ccn_per_token": 0.013888888888888888, "functions_per_token": 0.008333333333333333, "loc_per_token": 0.10555555555555556, "ccn_per_loc": 0.13157894736842105, "functions_per_loc": 0.07894736842105263, "tokens_per_loc": 9.473684210526315}, {"date": "2018-01", "loc": 11, "path": "src/ca/mcgill/cs/jetuml/views/DiagramElementView.java", "comments": 42, "loc_per_function": 11.0, "blanks_per_loc": 0.45, "num_funs": 0, "comments_per_loc": 3.82, "tokens": 77, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 77, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2018-01", "loc": 78, "path": "src/ca/mcgill/cs/jetuml/views/ViewUtils.java", "comments": 94, "loc_per_function": 9.75, "blanks_per_loc": 0.13, "num_funs": 8, "comments_per_loc": 1.21, "tokens": 790, "ccn": 14, "ccn_per_function": 1.75, "tokens_per_function": 98.75, "ccn_per_token": 0.017721518987341773, "functions_per_token": 0.010126582278481013, "loc_per_token": 0.09873417721518987, "ccn_per_loc": 0.1794871794871795, "functions_per_loc": 0.10256410256410256, "tokens_per_loc": 10.128205128205128}, {"date": "2018-01", "loc": 14, "path": "src/ca/mcgill/cs/jetuml/views/LineStyle.java", "comments": 28, "loc_per_function": 7.0, "blanks_per_loc": 0.36, "num_funs": 2, "comments_per_loc": 2.0, "tokens": 71, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 35.5, "ccn_per_token": 0.028169014084507043, "functions_per_token": 0.028169014084507043, "loc_per_token": 0.19718309859154928, "ccn_per_loc": 0.14285714285714285, "functions_per_loc": 0.14285714285714285, "tokens_per_loc": 5.071428571428571}, {"date": "2018-01", "loc": 74, "path": "src/ca/mcgill/cs/jetuml/views/ArrowHeadView.java", "comments": 40, "loc_per_function": 24.67, "blanks_per_loc": 0.14, "num_funs": 3, "comments_per_loc": 0.54, "tokens": 681, "ccn": 11, "ccn_per_function": 3.6666666666666665, "tokens_per_function": 227.0, "ccn_per_token": 0.016152716593245228, "functions_per_token": 0.004405286343612335, "loc_per_token": 0.10866372980910426, "ccn_per_loc": 0.14864864864864866, "functions_per_loc": 0.04054054054054054, "tokens_per_loc": 9.202702702702704}, {"date": "2018-01", "loc": 94, "path": "src/ca/mcgill/cs/jetuml/views/edges/ObjectReferenceEdgeView.java", "comments": 30, "loc_per_function": 18.8, "blanks_per_loc": 0.1, "num_funs": 5, "comments_per_loc": 0.32, "tokens": 811, "ccn": 8, "ccn_per_function": 1.6, "tokens_per_function": 162.2, "ccn_per_token": 0.009864364981504316, "functions_per_token": 0.006165228113440197, "loc_per_token": 0.1159062885326757, "ccn_per_loc": 0.0851063829787234, "functions_per_loc": 0.05319148936170213, "tokens_per_loc": 8.627659574468085}, {"date": "2018-01", "loc": 348, "path": "src/ca/mcgill/cs/jetuml/views/edges/StateTransitionEdgeView.java", "comments": 65, "loc_per_function": 16.57, "blanks_per_loc": 0.1, "num_funs": 21, "comments_per_loc": 0.19, "tokens": 2690, "ccn": 49, "ccn_per_function": 2.3333333333333335, "tokens_per_function": 128.0952380952381, "ccn_per_token": 0.018215613382899627, "functions_per_token": 0.007806691449814126, "loc_per_token": 0.12936802973977696, "ccn_per_loc": 0.14080459770114942, "functions_per_loc": 0.0603448275862069, "tokens_per_loc": 7.7298850574712645}, {"date": "2018-01", "loc": 71, "path": "src/ca/mcgill/cs/jetuml/views/edges/AbstractEdgeView.java", "comments": 45, "loc_per_function": 10.14, "blanks_per_loc": 0.21, "num_funs": 7, "comments_per_loc": 0.63, "tokens": 531, "ccn": 9, "ccn_per_function": 1.2857142857142858, "tokens_per_function": 75.85714285714286, "ccn_per_token": 0.01694915254237288, "functions_per_token": 0.013182674199623353, "loc_per_token": 0.1337099811676083, "ccn_per_loc": 0.1267605633802817, "functions_per_loc": 0.09859154929577464, "tokens_per_loc": 7.47887323943662}, {"date": "2018-01", "loc": 535, "path": "src/ca/mcgill/cs/jetuml/views/edges/SegmentationStyleFactory.java", "comments": 97, "loc_per_function": 17.26, "blanks_per_loc": 0.1, "num_funs": 31, "comments_per_loc": 0.18, "tokens": 3702, "ccn": 112, "ccn_per_function": 3.6129032258064515, "tokens_per_function": 119.41935483870968, "ccn_per_token": 0.030253916801728797, "functions_per_token": 0.008373851971907077, "loc_per_token": 0.14451647757968666, "ccn_per_loc": 0.20934579439252338, "functions_per_loc": 0.05794392523364486, "tokens_per_loc": 6.919626168224299}, {"date": "2018-01", "loc": 196, "path": "src/ca/mcgill/cs/jetuml/views/edges/SegmentedEdgeView.java", "comments": 57, "loc_per_function": 19.6, "blanks_per_loc": 0.08, "num_funs": 10, "comments_per_loc": 0.29, "tokens": 1760, "ccn": 24, "ccn_per_function": 2.4, "tokens_per_function": 176.0, "ccn_per_token": 0.013636363636363636, "functions_per_token": 0.005681818181818182, "loc_per_token": 0.11136363636363636, "ccn_per_loc": 0.12244897959183673, "functions_per_loc": 0.05102040816326531, "tokens_per_loc": 8.979591836734693}, {"date": "2018-01", "loc": 49, "path": "src/ca/mcgill/cs/jetuml/views/edges/SegmentationStyle.java", "comments": 50, "loc_per_function": 16.33, "blanks_per_loc": 0.18, "num_funs": 3, "comments_per_loc": 1.02, "tokens": 223, "ccn": 12, "ccn_per_function": 4.0, "tokens_per_function": 74.33333333333333, "ccn_per_token": 0.053811659192825115, "functions_per_token": 0.013452914798206279, "loc_per_token": 0.21973094170403587, "ccn_per_loc": 0.24489795918367346, "functions_per_loc": 0.061224489795918366, "tokens_per_loc": 4.551020408163265}, {"date": "2018-01", "loc": 32, "path": "src/ca/mcgill/cs/jetuml/views/edges/NoteEdgeView.java", "comments": 26, "loc_per_function": 10.67, "blanks_per_loc": 0.16, "num_funs": 3, "comments_per_loc": 0.81, "tokens": 249, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 83.0, "ccn_per_token": 0.012048192771084338, "functions_per_token": 0.012048192771084338, "loc_per_token": 0.1285140562248996, "ccn_per_loc": 0.09375, "functions_per_loc": 0.09375, "tokens_per_loc": 7.78125}, {"date": "2018-01", "loc": 7, "path": "src/ca/mcgill/cs/jetuml/views/edges/EdgeView.java", "comments": 29, "loc_per_function": 7.0, "blanks_per_loc": 0.29, "num_funs": 0, "comments_per_loc": 4.14, "tokens": 51, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 51, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.13725490196078433, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.285714285714286}, {"date": "2018-01", "loc": 56, "path": "src/ca/mcgill/cs/jetuml/views/nodes/ClassNodeView.java", "comments": 29, "loc_per_function": 9.33, "blanks_per_loc": 0.14, "num_funs": 6, "comments_per_loc": 0.52, "tokens": 366, "ccn": 8, "ccn_per_function": 1.3333333333333333, "tokens_per_function": 61.0, "ccn_per_token": 0.02185792349726776, "functions_per_token": 0.01639344262295082, "loc_per_token": 0.15300546448087432, "ccn_per_loc": 0.14285714285714285, "functions_per_loc": 0.10714285714285714, "tokens_per_loc": 6.535714285714286}, {"date": "2018-01", "loc": 73, "path": "src/ca/mcgill/cs/jetuml/views/nodes/AbstractNodeView.java", "comments": 45, "loc_per_function": 12.17, "blanks_per_loc": 0.12, "num_funs": 6, "comments_per_loc": 0.62, "tokens": 462, "ccn": 12, "ccn_per_function": 2.0, "tokens_per_function": 77.0, "ccn_per_token": 0.025974025974025976, "functions_per_token": 0.012987012987012988, "loc_per_token": 0.15800865800865802, "ccn_per_loc": 0.1643835616438356, "functions_per_loc": 0.0821917808219178, "tokens_per_loc": 6.328767123287672}, {"date": "2018-01", "loc": 100, "path": "src/ca/mcgill/cs/jetuml/views/nodes/InterfaceNodeView.java", "comments": 47, "loc_per_function": 9.09, "blanks_per_loc": 0.17, "num_funs": 11, "comments_per_loc": 0.47, "tokens": 813, "ccn": 17, "ccn_per_function": 1.5454545454545454, "tokens_per_function": 73.9090909090909, "ccn_per_token": 0.020910209102091022, "functions_per_token": 0.013530135301353014, "loc_per_token": 0.12300123001230012, "ccn_per_loc": 0.17, "functions_per_loc": 0.11, "tokens_per_loc": 8.13}, {"date": "2018-01", "loc": 10, "path": "src/ca/mcgill/cs/jetuml/views/nodes/NodeView.java", "comments": 35, "loc_per_function": 10.0, "blanks_per_loc": 0.3, "num_funs": 0, "comments_per_loc": 3.5, "tokens": 86, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 86, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.11627906976744186, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 8.6}, {"date": "2018-01", "loc": 35, "path": "src/ca/mcgill/cs/jetuml/views/nodes/RectangleBoundedNodeView.java", "comments": 31, "loc_per_function": 8.75, "blanks_per_loc": 0.17, "num_funs": 4, "comments_per_loc": 0.89, "tokens": 240, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 60.0, "ccn_per_token": 0.016666666666666666, "functions_per_token": 0.016666666666666666, "loc_per_token": 0.14583333333333334, "ccn_per_loc": 0.11428571428571428, "functions_per_loc": 0.11428571428571428, "tokens_per_loc": 6.857142857142857}, {"date": "2018-01", "loc": 78, "path": "src/ca/mcgill/cs/jetuml/views/nodes/FieldNodeView.java", "comments": 35, "loc_per_function": 8.67, "blanks_per_loc": 0.15, "num_funs": 9, "comments_per_loc": 0.45, "tokens": 736, "ccn": 11, "ccn_per_function": 1.2222222222222223, "tokens_per_function": 81.77777777777777, "ccn_per_token": 0.014945652173913044, "functions_per_token": 0.012228260869565218, "loc_per_token": 0.10597826086956522, "ccn_per_loc": 0.14102564102564102, "functions_per_loc": 0.11538461538461539, "tokens_per_loc": 9.435897435897436}, {"date": "2018-01", "loc": 65, "path": "src/ca/mcgill/cs/jetuml/views/nodes/NoteNodeView.java", "comments": 30, "loc_per_function": 10.83, "blanks_per_loc": 0.12, "num_funs": 6, "comments_per_loc": 0.46, "tokens": 626, "ccn": 6, "ccn_per_function": 1.0, "tokens_per_function": 104.33333333333333, "ccn_per_token": 0.009584664536741214, "functions_per_token": 0.009584664536741214, "loc_per_token": 0.10383386581469649, "ccn_per_loc": 0.09230769230769231, "functions_per_loc": 0.09230769230769231, "tokens_per_loc": 9.63076923076923}, {"date": "2018-01", "loc": 156, "path": "src/ca/mcgill/cs/jetuml/views/nodes/CallNodeView.java", "comments": 45, "loc_per_function": 15.6, "blanks_per_loc": 0.13, "num_funs": 10, "comments_per_loc": 0.29, "tokens": 1173, "ccn": 26, "ccn_per_function": 2.6, "tokens_per_function": 117.3, "ccn_per_token": 0.02216538789428815, "functions_per_token": 0.008525149190110827, "loc_per_token": 0.1329923273657289, "ccn_per_loc": 0.16666666666666666, "functions_per_loc": 0.0641025641025641, "tokens_per_loc": 7.519230769230769}, {"date": "2018-01", "loc": 73, "path": "src/ca/mcgill/cs/jetuml/views/nodes/ImplicitParameterNodeView.java", "comments": 30, "loc_per_function": 9.12, "blanks_per_loc": 0.15, "num_funs": 8, "comments_per_loc": 0.41, "tokens": 630, "ccn": 10, "ccn_per_function": 1.25, "tokens_per_function": 78.75, "ccn_per_token": 0.015873015873015872, "functions_per_token": 0.012698412698412698, "loc_per_token": 0.11587301587301588, "ccn_per_loc": 0.136986301369863, "functions_per_loc": 0.1095890410958904, "tokens_per_loc": 8.63013698630137}, {"date": "2018-01", "loc": 33, "path": "src/ca/mcgill/cs/jetuml/views/nodes/StateNodeView.java", "comments": 26, "loc_per_function": 8.25, "blanks_per_loc": 0.18, "num_funs": 4, "comments_per_loc": 0.79, "tokens": 266, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 66.5, "ccn_per_token": 0.015037593984962405, "functions_per_token": 0.015037593984962405, "loc_per_token": 0.12406015037593984, "ccn_per_loc": 0.12121212121212122, "functions_per_loc": 0.12121212121212122, "tokens_per_loc": 8.06060606060606}, {"date": "2018-01", "loc": 58, "path": "src/ca/mcgill/cs/jetuml/views/nodes/CircularStateNodeView.java", "comments": 27, "loc_per_function": 14.5, "blanks_per_loc": 0.12, "num_funs": 4, "comments_per_loc": 0.47, "tokens": 506, "ccn": 9, "ccn_per_function": 2.25, "tokens_per_function": 126.5, "ccn_per_token": 0.017786561264822136, "functions_per_token": 0.007905138339920948, "loc_per_token": 0.11462450592885376, "ccn_per_loc": 0.15517241379310345, "functions_per_loc": 0.06896551724137931, "tokens_per_loc": 8.724137931034482}, {"date": "2018-01", "loc": 145, "path": "src/ca/mcgill/cs/jetuml/views/nodes/PackageNodeView.java", "comments": 40, "loc_per_function": 11.15, "blanks_per_loc": 0.16, "num_funs": 13, "comments_per_loc": 0.28, "tokens": 1242, "ccn": 21, "ccn_per_function": 1.6153846153846154, "tokens_per_function": 95.53846153846153, "ccn_per_token": 0.016908212560386472, "functions_per_token": 0.010466988727858293, "loc_per_token": 0.11674718196457327, "ccn_per_loc": 0.14482758620689656, "functions_per_loc": 0.0896551724137931, "tokens_per_loc": 8.565517241379311}, {"date": "2018-01", "loc": 85, "path": "src/ca/mcgill/cs/jetuml/views/nodes/ObjectNodeView.java", "comments": 30, "loc_per_function": 12.14, "blanks_per_loc": 0.12, "num_funs": 7, "comments_per_loc": 0.35, "tokens": 658, "ccn": 12, "ccn_per_function": 1.7142857142857142, "tokens_per_function": 94.0, "ccn_per_token": 0.0182370820668693, "functions_per_token": 0.010638297872340425, "loc_per_token": 0.12917933130699089, "ccn_per_loc": 0.1411764705882353, "functions_per_loc": 0.08235294117647059, "tokens_per_loc": 7.741176470588235}, {"date": "2018-01", "loc": 72, "path": "src/ca/mcgill/cs/jetuml/views/nodes/ActorNodeView.java", "comments": 26, "loc_per_function": 14.4, "blanks_per_loc": 0.15, "num_funs": 5, "comments_per_loc": 0.36, "tokens": 714, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 142.8, "ccn_per_token": 0.0070028011204481795, "functions_per_token": 0.0070028011204481795, "loc_per_token": 0.10084033613445378, "ccn_per_loc": 0.06944444444444445, "functions_per_loc": 0.06944444444444445, "tokens_per_loc": 9.916666666666666}, {"date": "2018-01", "loc": 35, "path": "src/ca/mcgill/cs/jetuml/views/nodes/UseCaseNodeView.java", "comments": 26, "loc_per_function": 8.75, "blanks_per_loc": 0.17, "num_funs": 4, "comments_per_loc": 0.74, "tokens": 310, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 77.5, "ccn_per_token": 0.012903225806451613, "functions_per_token": 0.012903225806451613, "loc_per_token": 0.11290322580645161, "ccn_per_loc": 0.11428571428571428, "functions_per_loc": 0.11428571428571428, "tokens_per_loc": 8.857142857142858}, {"date": "2018-01", "loc": 38, "path": "src/ca/mcgill/cs/jetuml/views/nodes/PointNodeView.java", "comments": 28, "loc_per_function": 6.33, "blanks_per_loc": 0.21, "num_funs": 6, "comments_per_loc": 0.74, "tokens": 226, "ccn": 6, "ccn_per_function": 1.0, "tokens_per_function": 37.666666666666664, "ccn_per_token": 0.02654867256637168, "functions_per_token": 0.02654867256637168, "loc_per_token": 0.168141592920354, "ccn_per_loc": 0.15789473684210525, "functions_per_loc": 0.15789473684210525, "tokens_per_loc": 5.947368421052632}, {"date": "2018-01", "loc": 114, "path": "src/ca/mcgill/cs/jetuml/diagram/ClassDiagram.java", "comments": 33, "loc_per_function": 14.25, "blanks_per_loc": 0.18, "num_funs": 8, "comments_per_loc": 0.29, "tokens": 657, "ccn": 21, "ccn_per_function": 2.625, "tokens_per_function": 82.125, "ccn_per_token": 0.0319634703196347, "functions_per_token": 0.0121765601217656, "loc_per_token": 0.1735159817351598, "ccn_per_loc": 0.18421052631578946, "functions_per_loc": 0.07017543859649122, "tokens_per_loc": 5.7631578947368425}, {"date": "2018-01", "loc": 132, "path": "src/ca/mcgill/cs/jetuml/diagram/ObjectDiagram.java", "comments": 34, "loc_per_function": 14.67, "blanks_per_loc": 0.15, "num_funs": 9, "comments_per_loc": 0.26, "tokens": 725, "ccn": 26, "ccn_per_function": 2.888888888888889, "tokens_per_function": 80.55555555555556, "ccn_per_token": 0.03586206896551724, "functions_per_token": 0.012413793103448275, "loc_per_token": 0.1820689655172414, "ccn_per_loc": 0.19696969696969696, "functions_per_loc": 0.06818181818181818, "tokens_per_loc": 5.492424242424242}, {"date": "2018-01", "loc": 52, "path": "src/ca/mcgill/cs/jetuml/diagram/UseCaseDiagram.java", "comments": 23, "loc_per_function": 10.4, "blanks_per_loc": 0.19, "num_funs": 5, "comments_per_loc": 0.44, "tokens": 347, "ccn": 7, "ccn_per_function": 1.4, "tokens_per_function": 69.4, "ccn_per_token": 0.020172910662824207, "functions_per_token": 0.01440922190201729, "loc_per_token": 0.14985590778097982, "ccn_per_loc": 0.1346153846153846, "functions_per_loc": 0.09615384615384616, "tokens_per_loc": 6.673076923076923}, {"date": "2018-01", "loc": 35, "path": "src/ca/mcgill/cs/jetuml/diagram/Property.java", "comments": 53, "loc_per_function": 7.0, "blanks_per_loc": 0.2, "num_funs": 5, "comments_per_loc": 1.51, "tokens": 167, "ccn": 7, "ccn_per_function": 1.4, "tokens_per_function": 33.4, "ccn_per_token": 0.041916167664670656, "functions_per_token": 0.029940119760479042, "loc_per_token": 0.20958083832335328, "ccn_per_loc": 0.2, "functions_per_loc": 0.14285714285714285, "tokens_per_loc": 4.771428571428571}, {"date": "2018-01", "loc": 32, "path": "src/ca/mcgill/cs/jetuml/diagram/AbstractDiagramElement.java", "comments": 38, "loc_per_function": 8.0, "blanks_per_loc": 0.16, "num_funs": 4, "comments_per_loc": 1.19, "tokens": 103, "ccn": 5, "ccn_per_function": 1.25, "tokens_per_function": 25.75, "ccn_per_token": 0.04854368932038835, "functions_per_token": 0.038834951456310676, "loc_per_token": 0.3106796116504854, "ccn_per_loc": 0.15625, "functions_per_loc": 0.125, "tokens_per_loc": 3.21875}, {"date": "2018-01", "loc": 64, "path": "src/ca/mcgill/cs/jetuml/diagram/Properties.java", "comments": 71, "loc_per_function": 10.67, "blanks_per_loc": 0.12, "num_funs": 6, "comments_per_loc": 1.11, "tokens": 382, "ccn": 18, "ccn_per_function": 3.0, "tokens_per_function": 63.666666666666664, "ccn_per_token": 0.04712041884816754, "functions_per_token": 0.015706806282722512, "loc_per_token": 0.16753926701570682, "ccn_per_loc": 0.28125, "functions_per_loc": 0.09375, "tokens_per_loc": 5.96875}, {"date": "2018-01", "loc": 480, "path": "src/ca/mcgill/cs/jetuml/diagram/Diagram.java", "comments": 241, "loc_per_function": 12.31, "blanks_per_loc": 0.12, "num_funs": 39, "comments_per_loc": 0.5, "tokens": 2406, "ccn": 121, "ccn_per_function": 3.1025641025641026, "tokens_per_function": 61.69230769230769, "ccn_per_token": 0.05029093931837074, "functions_per_token": 0.016209476309226933, "loc_per_token": 0.19950124688279303, "ccn_per_loc": 0.2520833333333333, "functions_per_loc": 0.08125, "tokens_per_loc": 5.0125}, {"date": "2018-01", "loc": 318, "path": "src/ca/mcgill/cs/jetuml/diagram/SequenceDiagram.java", "comments": 70, "loc_per_function": 17.67, "blanks_per_loc": 0.11, "num_funs": 18, "comments_per_loc": 0.22, "tokens": 1774, "ccn": 82, "ccn_per_function": 4.555555555555555, "tokens_per_function": 98.55555555555556, "ccn_per_token": 0.046223224351747465, "functions_per_token": 0.010146561443066516, "loc_per_token": 0.17925591882750846, "ccn_per_loc": 0.2578616352201258, "functions_per_loc": 0.05660377358490566, "tokens_per_loc": 5.578616352201258}, {"date": "2018-01", "loc": 84, "path": "src/ca/mcgill/cs/jetuml/diagram/StateDiagram.java", "comments": 24, "loc_per_function": 14.0, "blanks_per_loc": 0.12, "num_funs": 6, "comments_per_loc": 0.29, "tokens": 459, "ccn": 22, "ccn_per_function": 3.6666666666666665, "tokens_per_function": 76.5, "ccn_per_token": 0.04793028322440087, "functions_per_token": 0.013071895424836602, "loc_per_token": 0.1830065359477124, "ccn_per_loc": 0.2619047619047619, "functions_per_loc": 0.07142857142857142, "tokens_per_loc": 5.464285714285714}, {"date": "2018-01", "loc": 7, "path": "src/ca/mcgill/cs/jetuml/diagram/DiagramData.java", "comments": 34, "loc_per_function": 7.0, "blanks_per_loc": 0.43, "num_funs": 0, "comments_per_loc": 4.86, "tokens": 40, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 40, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.175, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 5.714285714285714}, {"date": "2018-01", "loc": 30, "path": "src/ca/mcgill/cs/jetuml/diagram/DiagramType.java", "comments": 31, "loc_per_function": 10.0, "blanks_per_loc": 0.17, "num_funs": 3, "comments_per_loc": 1.03, "tokens": 124, "ccn": 4, "ccn_per_function": 1.3333333333333333, "tokens_per_function": 41.333333333333336, "ccn_per_token": 0.03225806451612903, "functions_per_token": 0.024193548387096774, "loc_per_token": 0.24193548387096775, "ccn_per_loc": 0.13333333333333333, "functions_per_loc": 0.1, "tokens_per_loc": 4.133333333333334}, {"date": "2018-01", "loc": 11, "path": "src/ca/mcgill/cs/jetuml/diagram/Node.java", "comments": 43, "loc_per_function": 11.0, "blanks_per_loc": 0.64, "num_funs": 0, "comments_per_loc": 3.91, "tokens": 78, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 78, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14102564102564102, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.090909090909091}, {"date": "2018-01", "loc": 11, "path": "src/ca/mcgill/cs/jetuml/diagram/Edge.java", "comments": 49, "loc_per_function": 11.0, "blanks_per_loc": 0.82, "num_funs": 0, "comments_per_loc": 4.45, "tokens": 71, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 71, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.15492957746478872, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 6.454545454545454}, {"date": "2018-01", "loc": 7, "path": "src/ca/mcgill/cs/jetuml/diagram/DiagramElement.java", "comments": 29, "loc_per_function": 7.0, "blanks_per_loc": 0.43, "num_funs": 0, "comments_per_loc": 4.14, "tokens": 41, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 41, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.17073170731707318, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 5.857142857142857}, {"date": "2018-01", "loc": 62, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/AssociationEdge.java", "comments": 36, "loc_per_function": 8.86, "blanks_per_loc": 0.19, "num_funs": 7, "comments_per_loc": 0.58, "tokens": 344, "ccn": 11, "ccn_per_function": 1.5714285714285714, "tokens_per_function": 49.142857142857146, "ccn_per_token": 0.03197674418604651, "functions_per_token": 0.020348837209302327, "loc_per_token": 0.18023255813953487, "ccn_per_loc": 0.1774193548387097, "functions_per_loc": 0.11290322580645161, "tokens_per_loc": 5.548387096774194}, {"date": "2018-01", "loc": 29, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/ThreeLabelEdge.java", "comments": 35, "loc_per_function": 5.8, "blanks_per_loc": 0.21, "num_funs": 5, "comments_per_loc": 1.21, "tokens": 142, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 28.4, "ccn_per_token": 0.035211267605633804, "functions_per_token": 0.035211267605633804, "loc_per_token": 0.20422535211267606, "ccn_per_loc": 0.1724137931034483, "functions_per_loc": 0.1724137931034483, "tokens_per_loc": 4.896551724137931}, {"date": "2018-01", "loc": 6, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/ClassRelationshipEdge.java", "comments": 28, "loc_per_function": 6.0, "blanks_per_loc": 0.5, "num_funs": 0, "comments_per_loc": 4.67, "tokens": 43, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 43, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.13953488372093023, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.166666666666667}, {"date": "2018-01", "loc": 16, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/UseCaseGeneralizationEdge.java", "comments": 26, "loc_per_function": 16.0, "blanks_per_loc": 0.25, "num_funs": 1, "comments_per_loc": 1.62, "tokens": 149, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 149.0, "ccn_per_token": 0.006711409395973154, "functions_per_token": 0.006711409395973154, "loc_per_token": 0.10738255033557047, "ccn_per_loc": 0.0625, "functions_per_loc": 0.0625, "tokens_per_loc": 9.3125}, {"date": "2018-01", "loc": 22, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/DependencyEdge.java", "comments": 27, "loc_per_function": 11.0, "blanks_per_loc": 0.23, "num_funs": 2, "comments_per_loc": 1.23, "tokens": 186, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 93.0, "ccn_per_token": 0.010752688172043012, "functions_per_token": 0.010752688172043012, "loc_per_token": 0.11827956989247312, "ccn_per_loc": 0.09090909090909091, "functions_per_loc": 0.09090909090909091, "tokens_per_loc": 8.454545454545455}, {"date": "2018-01", "loc": 11, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/StateTransitionEdge.java", "comments": 25, "loc_per_function": 11.0, "blanks_per_loc": 0.27, "num_funs": 1, "comments_per_loc": 2.27, "tokens": 66, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 66.0, "ccn_per_token": 0.015151515151515152, "functions_per_token": 0.015151515151515152, "loc_per_token": 0.16666666666666666, "ccn_per_loc": 0.09090909090909091, "functions_per_loc": 0.09090909090909091, "tokens_per_loc": 6.0}, {"date": "2018-01", "loc": 115, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/CallEdge.java", "comments": 38, "loc_per_function": 14.38, "blanks_per_loc": 0.16, "num_funs": 8, "comments_per_loc": 0.33, "tokens": 867, "ccn": 13, "ccn_per_function": 1.625, "tokens_per_function": 108.375, "ccn_per_token": 0.014994232987312572, "functions_per_token": 0.00922722029988466, "loc_per_token": 0.13264129181084197, "ccn_per_loc": 0.11304347826086956, "functions_per_loc": 0.06956521739130435, "tokens_per_loc": 7.539130434782609}, {"date": "2018-01", "loc": 22, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/ObjectCollaborationEdge.java", "comments": 27, "loc_per_function": 11.0, "blanks_per_loc": 0.32, "num_funs": 2, "comments_per_loc": 1.23, "tokens": 184, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 92.0, "ccn_per_token": 0.010869565217391304, "functions_per_token": 0.010869565217391304, "loc_per_token": 0.11956521739130435, "ccn_per_loc": 0.09090909090909091, "functions_per_loc": 0.09090909090909091, "tokens_per_loc": 8.363636363636363}, {"date": "2018-01", "loc": 58, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/AbstractEdge.java", "comments": 33, "loc_per_function": 7.25, "blanks_per_loc": 0.19, "num_funs": 8, "comments_per_loc": 0.57, "tokens": 275, "ccn": 9, "ccn_per_function": 1.125, "tokens_per_function": 34.375, "ccn_per_token": 0.03272727272727273, "functions_per_token": 0.02909090909090909, "loc_per_token": 0.2109090909090909, "ccn_per_loc": 0.15517241379310345, "functions_per_loc": 0.13793103448275862, "tokens_per_loc": 4.741379310344827}, {"date": "2018-01", "loc": 19, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/SingleLabelEdge.java", "comments": 31, "loc_per_function": 6.33, "blanks_per_loc": 0.21, "num_funs": 3, "comments_per_loc": 1.63, "tokens": 88, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 29.333333333333332, "ccn_per_token": 0.03409090909090909, "functions_per_token": 0.03409090909090909, "loc_per_token": 0.2159090909090909, "ccn_per_loc": 0.15789473684210525, "functions_per_loc": 0.15789473684210525, "tokens_per_loc": 4.631578947368421}, {"date": "2018-01", "loc": 56, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/AggregationEdge.java", "comments": 44, "loc_per_function": 7.0, "blanks_per_loc": 0.23, "num_funs": 8, "comments_per_loc": 0.79, "tokens": 316, "ccn": 9, "ccn_per_function": 1.125, "tokens_per_function": 39.5, "ccn_per_token": 0.028481012658227847, "functions_per_token": 0.02531645569620253, "loc_per_token": 0.17721518987341772, "ccn_per_loc": 0.16071428571428573, "functions_per_loc": 0.14285714285714285, "tokens_per_loc": 5.642857142857143}, {"date": "2018-01", "loc": 11, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/NoteEdge.java", "comments": 23, "loc_per_function": 11.0, "blanks_per_loc": 0.27, "num_funs": 1, "comments_per_loc": 2.09, "tokens": 66, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 66.0, "ccn_per_token": 0.015151515151515152, "functions_per_token": 0.015151515151515152, "loc_per_token": 0.16666666666666666, "ccn_per_loc": 0.09090909090909091, "functions_per_loc": 0.09090909090909091, "tokens_per_loc": 6.0}, {"date": "2018-01", "loc": 16, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/UseCaseAssociationEdge.java", "comments": 26, "loc_per_function": 16.0, "blanks_per_loc": 0.25, "num_funs": 1, "comments_per_loc": 1.62, "tokens": 149, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 149.0, "ccn_per_token": 0.006711409395973154, "functions_per_token": 0.006711409395973154, "loc_per_token": 0.10738255033557047, "ccn_per_loc": 0.0625, "functions_per_loc": 0.0625, "tokens_per_loc": 9.3125}, {"date": "2018-01", "loc": 11, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/ObjectReferenceEdge.java", "comments": 23, "loc_per_function": 11.0, "blanks_per_loc": 0.27, "num_funs": 1, "comments_per_loc": 2.09, "tokens": 66, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 66.0, "ccn_per_token": 0.015151515151515152, "functions_per_token": 0.015151515151515152, "loc_per_token": 0.16666666666666666, "ccn_per_loc": 0.09090909090909091, "functions_per_loc": 0.09090909090909091, "tokens_per_loc": 6.0}, {"date": "2018-01", "loc": 56, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/GeneralizationEdge.java", "comments": 45, "loc_per_function": 7.0, "blanks_per_loc": 0.23, "num_funs": 8, "comments_per_loc": 0.8, "tokens": 314, "ccn": 9, "ccn_per_function": 1.125, "tokens_per_function": 39.25, "ccn_per_token": 0.028662420382165606, "functions_per_token": 0.025477707006369428, "loc_per_token": 0.17834394904458598, "ccn_per_loc": 0.16071428571428573, "functions_per_loc": 0.14285714285714285, "tokens_per_loc": 5.607142857142857}, {"date": "2018-01", "loc": 67, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/ReturnEdge.java", "comments": 23, "loc_per_function": 22.33, "blanks_per_loc": 0.12, "num_funs": 3, "comments_per_loc": 0.34, "tokens": 545, "ccn": 5, "ccn_per_function": 1.6666666666666667, "tokens_per_function": 181.66666666666666, "ccn_per_token": 0.009174311926605505, "functions_per_token": 0.005504587155963303, "loc_per_token": 0.12293577981651377, "ccn_per_loc": 0.07462686567164178, "functions_per_loc": 0.04477611940298507, "tokens_per_loc": 8.134328358208956}, {"date": "2018-01", "loc": 56, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/UseCaseDependencyEdge.java", "comments": 43, "loc_per_function": 8.0, "blanks_per_loc": 0.23, "num_funs": 7, "comments_per_loc": 0.77, "tokens": 309, "ccn": 9, "ccn_per_function": 1.2857142857142858, "tokens_per_function": 44.142857142857146, "ccn_per_token": 0.02912621359223301, "functions_per_token": 0.022653721682847898, "loc_per_token": 0.18122977346278318, "ccn_per_loc": 0.16071428571428573, "functions_per_loc": 0.125, "tokens_per_loc": 5.517857142857143}, {"date": "2018-01", "loc": 11, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/NoteNode.java", "comments": 24, "loc_per_function": 11.0, "blanks_per_loc": 0.27, "num_funs": 1, "comments_per_loc": 2.18, "tokens": 66, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 66.0, "ccn_per_token": 0.015151515151515152, "functions_per_token": 0.015151515151515152, "loc_per_token": 0.16666666666666666, "ccn_per_loc": 0.09090909090909091, "functions_per_loc": 0.09090909090909091, "tokens_per_loc": 6.0}, {"date": "2018-01", "loc": 10, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/ParentNode.java", "comments": 46, "loc_per_function": 10.0, "blanks_per_loc": 0.6, "num_funs": 0, "comments_per_loc": 4.6, "tokens": 72, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 72, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.1388888888888889, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.2}, {"date": "2018-01", "loc": 30, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/ClassNode.java", "comments": 34, "loc_per_function": 6.0, "blanks_per_loc": 0.27, "num_funs": 5, "comments_per_loc": 1.13, "tokens": 146, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 29.2, "ccn_per_token": 0.03424657534246575, "functions_per_token": 0.03424657534246575, "loc_per_token": 0.2054794520547945, "ccn_per_loc": 0.16666666666666666, "functions_per_loc": 0.16666666666666666, "tokens_per_loc": 4.866666666666666}, {"date": "2018-01", "loc": 111, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/PackageNode.java", "comments": 40, "loc_per_function": 7.4, "blanks_per_loc": 0.18, "num_funs": 15, "comments_per_loc": 0.36, "tokens": 568, "ccn": 20, "ccn_per_function": 1.3333333333333333, "tokens_per_function": 37.86666666666667, "ccn_per_token": 0.035211267605633804, "functions_per_token": 0.02640845070422535, "loc_per_token": 0.1954225352112676, "ccn_per_loc": 0.18018018018018017, "functions_per_loc": 0.13513513513513514, "tokens_per_loc": 5.117117117117117}, {"date": "2018-01", "loc": 54, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/AbstractNode.java", "comments": 34, "loc_per_function": 6.75, "blanks_per_loc": 0.2, "num_funs": 8, "comments_per_loc": 0.63, "tokens": 324, "ccn": 8, "ccn_per_function": 1.0, "tokens_per_function": 40.5, "ccn_per_token": 0.024691358024691357, "functions_per_token": 0.024691358024691357, "loc_per_token": 0.16666666666666666, "ccn_per_loc": 0.14814814814814814, "functions_per_loc": 0.14814814814814814, "tokens_per_loc": 6.0}, {"date": "2018-01", "loc": 11, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/UseCaseNode.java", "comments": 23, "loc_per_function": 11.0, "blanks_per_loc": 0.27, "num_funs": 1, "comments_per_loc": 2.09, "tokens": 66, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 66.0, "ccn_per_token": 0.015151515151515152, "functions_per_token": 0.015151515151515152, "loc_per_token": 0.16666666666666666, "ccn_per_loc": 0.09090909090909091, "functions_per_loc": 0.09090909090909091, "tokens_per_loc": 6.0}, {"date": "2018-01", "loc": 47, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/InterfaceNode.java", "comments": 36, "loc_per_function": 5.88, "blanks_per_loc": 0.23, "num_funs": 8, "comments_per_loc": 0.77, "tokens": 198, "ccn": 9, "ccn_per_function": 1.125, "tokens_per_function": 24.75, "ccn_per_token": 0.045454545454545456, "functions_per_token": 0.04040404040404041, "loc_per_token": 0.23737373737373738, "ccn_per_loc": 0.19148936170212766, "functions_per_loc": 0.1702127659574468, "tokens_per_loc": 4.212765957446808}, {"date": "2018-01", "loc": 11, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/FinalStateNode.java", "comments": 23, "loc_per_function": 11.0, "blanks_per_loc": 0.36, "num_funs": 1, "comments_per_loc": 2.09, "tokens": 68, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 68.0, "ccn_per_token": 0.014705882352941176, "functions_per_token": 0.014705882352941176, "loc_per_token": 0.16176470588235295, "ccn_per_loc": 0.09090909090909091, "functions_per_loc": 0.09090909090909091, "tokens_per_loc": 6.181818181818182}, {"date": "2018-01", "loc": 8, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/ChildNode.java", "comments": 42, "loc_per_function": 8.0, "blanks_per_loc": 0.5, "num_funs": 0, "comments_per_loc": 5.25, "tokens": 50, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 50, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.16, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 6.25}, {"date": "2018-01", "loc": 77, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/ImplicitParameterNode.java", "comments": 40, "loc_per_function": 8.56, "blanks_per_loc": 0.17, "num_funs": 9, "comments_per_loc": 0.52, "tokens": 432, "ccn": 14, "ccn_per_function": 1.5555555555555556, "tokens_per_function": 48.0, "ccn_per_token": 0.032407407407407406, "functions_per_token": 0.020833333333333332, "loc_per_token": 0.17824074074074073, "ccn_per_loc": 0.18181818181818182, "functions_per_loc": 0.11688311688311688, "tokens_per_loc": 5.6103896103896105}, {"date": "2018-01", "loc": 75, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/CallNode.java", "comments": 49, "loc_per_function": 7.5, "blanks_per_loc": 0.19, "num_funs": 10, "comments_per_loc": 0.65, "tokens": 458, "ccn": 17, "ccn_per_function": 1.7, "tokens_per_function": 45.8, "ccn_per_token": 0.03711790393013101, "functions_per_token": 0.021834061135371178, "loc_per_token": 0.16375545851528384, "ccn_per_loc": 0.22666666666666666, "functions_per_loc": 0.13333333333333333, "tokens_per_loc": 6.1066666666666665}, {"date": "2018-01", "loc": 11, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/StateNode.java", "comments": 23, "loc_per_function": 11.0, "blanks_per_loc": 0.27, "num_funs": 1, "comments_per_loc": 2.09, "tokens": 66, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 66.0, "ccn_per_token": 0.015151515151515152, "functions_per_token": 0.015151515151515152, "loc_per_token": 0.16666666666666666, "ccn_per_loc": 0.09090909090909091, "functions_per_loc": 0.09090909090909091, "tokens_per_loc": 6.0}, {"date": "2018-01", "loc": 11, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/PointNode.java", "comments": 25, "loc_per_function": 11.0, "blanks_per_loc": 0.27, "num_funs": 1, "comments_per_loc": 2.27, "tokens": 66, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 66.0, "ccn_per_token": 0.015151515151515152, "functions_per_token": 0.015151515151515152, "loc_per_token": 0.16666666666666666, "ccn_per_loc": 0.09090909090909091, "functions_per_loc": 0.09090909090909091, "tokens_per_loc": 6.0}, {"date": "2018-01", "loc": 43, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/FieldNode.java", "comments": 31, "loc_per_function": 6.14, "blanks_per_loc": 0.26, "num_funs": 7, "comments_per_loc": 0.72, "tokens": 190, "ccn": 8, "ccn_per_function": 1.1428571428571428, "tokens_per_function": 27.142857142857142, "ccn_per_token": 0.042105263157894736, "functions_per_token": 0.03684210526315789, "loc_per_token": 0.22631578947368422, "ccn_per_loc": 0.18604651162790697, "functions_per_loc": 0.16279069767441862, "tokens_per_loc": 4.4186046511627906}, {"date": "2018-01", "loc": 16, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/ActorNode.java", "comments": 26, "loc_per_function": 8.0, "blanks_per_loc": 0.31, "num_funs": 2, "comments_per_loc": 1.62, "tokens": 85, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 42.5, "ccn_per_token": 0.023529411764705882, "functions_per_token": 0.023529411764705882, "loc_per_token": 0.18823529411764706, "ccn_per_loc": 0.125, "functions_per_loc": 0.125, "tokens_per_loc": 5.3125}, {"date": "2018-01", "loc": 11, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/InitialStateNode.java", "comments": 23, "loc_per_function": 11.0, "blanks_per_loc": 0.36, "num_funs": 1, "comments_per_loc": 2.09, "tokens": 68, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 68.0, "ccn_per_token": 0.014705882352941176, "functions_per_token": 0.014705882352941176, "loc_per_token": 0.16176470588235295, "ccn_per_loc": 0.09090909090909091, "functions_per_loc": 0.09090909090909091, "tokens_per_loc": 6.181818181818182}, {"date": "2018-01", "loc": 19, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/NamedNode.java", "comments": 31, "loc_per_function": 6.33, "blanks_per_loc": 0.26, "num_funs": 3, "comments_per_loc": 1.63, "tokens": 88, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 29.333333333333332, "ccn_per_token": 0.03409090909090909, "functions_per_token": 0.03409090909090909, "loc_per_token": 0.2159090909090909, "ccn_per_loc": 0.15789473684210525, "functions_per_loc": 0.15789473684210525, "tokens_per_loc": 4.631578947368421}, {"date": "2018-01", "loc": 69, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/ObjectNode.java", "comments": 29, "loc_per_function": 9.86, "blanks_per_loc": 0.17, "num_funs": 7, "comments_per_loc": 0.42, "tokens": 359, "ccn": 11, "ccn_per_function": 1.5714285714285714, "tokens_per_function": 51.285714285714285, "ccn_per_token": 0.03064066852367688, "functions_per_token": 0.019498607242339833, "loc_per_token": 0.19220055710306408, "ccn_per_loc": 0.15942028985507245, "functions_per_loc": 0.10144927536231885, "tokens_per_loc": 5.202898550724638}, {"date": "2018-01", "loc": 74, "path": "src/ca/mcgill/cs/jetuml/application/UndoManager.java", "comments": 51, "loc_per_function": 12.33, "blanks_per_loc": 0.14, "num_funs": 6, "comments_per_loc": 0.69, "tokens": 336, "ccn": 13, "ccn_per_function": 2.1666666666666665, "tokens_per_function": 56.0, "ccn_per_token": 0.03869047619047619, "functions_per_token": 0.017857142857142856, "loc_per_token": 0.22023809523809523, "ccn_per_loc": 0.17567567567567569, "functions_per_loc": 0.08108108108108109, "tokens_per_loc": 4.54054054054054}, {"date": "2018-01", "loc": 143, "path": "src/ca/mcgill/cs/jetuml/application/JavaVersion.java", "comments": 55, "loc_per_function": 20.43, "blanks_per_loc": 0.09, "num_funs": 7, "comments_per_loc": 0.38, "tokens": 747, "ccn": 25, "ccn_per_function": 3.5714285714285716, "tokens_per_function": 106.71428571428571, "ccn_per_token": 0.03346720214190094, "functions_per_token": 0.009370816599732263, "loc_per_token": 0.19143239625167335, "ccn_per_loc": 0.17482517482517482, "functions_per_loc": 0.04895104895104895, "tokens_per_loc": 5.223776223776224}, {"date": "2018-01", "loc": 51, "path": "src/ca/mcgill/cs/jetuml/application/MoveTracker.java", "comments": 37, "loc_per_function": 25.5, "blanks_per_loc": 0.14, "num_funs": 2, "comments_per_loc": 0.73, "tokens": 410, "ccn": 8, "ccn_per_function": 4.0, "tokens_per_function": 205.0, "ccn_per_token": 0.01951219512195122, "functions_per_token": 0.004878048780487805, "loc_per_token": 0.12439024390243902, "ccn_per_loc": 0.1568627450980392, "functions_per_loc": 0.0392156862745098, "tokens_per_loc": 8.03921568627451}, {"date": "2018-01", "loc": 23, "path": "src/ca/mcgill/cs/jetuml/application/DiagramSizeUtils.java", "comments": 33, "loc_per_function": 7.67, "blanks_per_loc": 0.17, "num_funs": 3, "comments_per_loc": 1.43, "tokens": 92, "ccn": 5, "ccn_per_function": 1.6666666666666667, "tokens_per_function": 30.666666666666668, "ccn_per_token": 0.05434782608695652, "functions_per_token": 0.03260869565217391, "loc_per_token": 0.25, "ccn_per_loc": 0.21739130434782608, "functions_per_loc": 0.13043478260869565, "tokens_per_loc": 4.0}, {"date": "2018-01", "loc": 28, "path": "src/ca/mcgill/cs/jetuml/application/ApplicationResources.java", "comments": 43, "loc_per_function": 9.33, "blanks_per_loc": 0.29, "num_funs": 3, "comments_per_loc": 1.54, "tokens": 143, "ccn": 4, "ccn_per_function": 1.3333333333333333, "tokens_per_function": 47.666666666666664, "ccn_per_token": 0.027972027972027972, "functions_per_token": 0.02097902097902098, "loc_per_token": 0.1958041958041958, "ccn_per_loc": 0.14285714285714285, "functions_per_loc": 0.10714285714285714, "tokens_per_loc": 5.107142857142857}, {"date": "2018-01", "loc": 15, "path": "src/ca/mcgill/cs/jetuml/application/GraphModificationListener.java", "comments": 60, "loc_per_function": 15.0, "blanks_per_loc": 0.53, "num_funs": 0, "comments_per_loc": 4.0, "tokens": 128, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 128, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.1171875, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 8.533333333333333}, {"date": "2018-01", "loc": 77, "path": "src/ca/mcgill/cs/jetuml/application/RecentFilesQueue.java", "comments": 63, "loc_per_function": 12.83, "blanks_per_loc": 0.13, "num_funs": 6, "comments_per_loc": 0.82, "tokens": 405, "ccn": 16, "ccn_per_function": 2.6666666666666665, "tokens_per_function": 67.5, "ccn_per_token": 0.03950617283950617, "functions_per_token": 0.014814814814814815, "loc_per_token": 0.19012345679012346, "ccn_per_loc": 0.2077922077922078, "functions_per_loc": 0.07792207792207792, "tokens_per_loc": 5.259740259740259}, {"date": "2018-01", "loc": 36, "path": "src/ca/mcgill/cs/jetuml/application/PropertyChangeTracker.java", "comments": 41, "loc_per_function": 12.0, "blanks_per_loc": 0.17, "num_funs": 3, "comments_per_loc": 1.14, "tokens": 242, "ccn": 6, "ccn_per_function": 2.0, "tokens_per_function": 80.66666666666667, "ccn_per_token": 0.024793388429752067, "functions_per_token": 0.012396694214876033, "loc_per_token": 0.1487603305785124, "ccn_per_loc": 0.16666666666666666, "functions_per_loc": 0.08333333333333333, "tokens_per_loc": 6.722222222222222}, {"date": "2018-01", "loc": 276, "path": "src/ca/mcgill/cs/jetuml/application/Clipboard.java", "comments": 71, "loc_per_function": 16.24, "blanks_per_loc": 0.11, "num_funs": 17, "comments_per_loc": 0.26, "tokens": 1512, "ccn": 68, "ccn_per_function": 4.0, "tokens_per_function": 88.94117647058823, "ccn_per_token": 0.04497354497354497, "functions_per_token": 0.011243386243386243, "loc_per_token": 0.18253968253968253, "ccn_per_loc": 0.2463768115942029, "functions_per_loc": 0.06159420289855073, "tokens_per_loc": 5.478260869565218}, {"date": "2018-01", "loc": 41, "path": "src/ca/mcgill/cs/jetuml/application/FileExtensions.java", "comments": 34, "loc_per_function": 13.67, "blanks_per_loc": 0.41, "num_funs": 3, "comments_per_loc": 0.83, "tokens": 337, "ccn": 5, "ccn_per_function": 1.6666666666666667, "tokens_per_function": 112.33333333333333, "ccn_per_token": 0.01483679525222552, "functions_per_token": 0.008902077151335312, "loc_per_token": 0.12166172106824925, "ccn_per_loc": 0.12195121951219512, "functions_per_loc": 0.07317073170731707, "tokens_per_loc": 8.21951219512195}, {"date": "2018-01", "loc": 85, "path": "src/ca/mcgill/cs/jetuml/application/UserPreferences.java", "comments": 69, "loc_per_function": 7.08, "blanks_per_loc": 0.25, "num_funs": 12, "comments_per_loc": 0.81, "tokens": 509, "ccn": 14, "ccn_per_function": 1.1666666666666667, "tokens_per_function": 42.416666666666664, "ccn_per_token": 0.0275049115913556, "functions_per_token": 0.023575638506876228, "loc_per_token": 0.16699410609037327, "ccn_per_loc": 0.16470588235294117, "functions_per_loc": 0.1411764705882353, "tokens_per_loc": 5.988235294117647}, {"date": "2018-01", "loc": 101, "path": "src/ca/mcgill/cs/jetuml/gui/MenuFactory.java", "comments": 78, "loc_per_function": 12.62, "blanks_per_loc": 0.15, "num_funs": 8, "comments_per_loc": 0.77, "tokens": 657, "ccn": 18, "ccn_per_function": 2.25, "tokens_per_function": 82.125, "ccn_per_token": 0.0273972602739726, "functions_per_token": 0.0121765601217656, "loc_per_token": 0.1537290715372907, "ccn_per_loc": 0.1782178217821782, "functions_per_loc": 0.07920792079207921, "tokens_per_loc": 6.5049504950495045}, {"date": "2018-01", "loc": 6, "path": "src/ca/mcgill/cs/jetuml/gui/MouseDraggedGestureHandler.java", "comments": 30, "loc_per_function": 6.0, "blanks_per_loc": 0.33, "num_funs": 0, "comments_per_loc": 5.0, "tokens": 36, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 36, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.16666666666666666, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 6.0}, {"date": "2018-01", "loc": 72, "path": "src/ca/mcgill/cs/jetuml/gui/WelcomeTab.java", "comments": 34, "loc_per_function": 14.4, "blanks_per_loc": 0.22, "num_funs": 5, "comments_per_loc": 0.47, "tokens": 585, "ccn": 7, "ccn_per_function": 1.4, "tokens_per_function": 117.0, "ccn_per_token": 0.011965811965811967, "functions_per_token": 0.008547008547008548, "loc_per_token": 0.12307692307692308, "ccn_per_loc": 0.09722222222222222, "functions_per_loc": 0.06944444444444445, "tokens_per_loc": 8.125}, {"date": "2018-01", "loc": 66, "path": "src/ca/mcgill/cs/jetuml/gui/DiagramCanvas.java", "comments": 42, "loc_per_function": 9.43, "blanks_per_loc": 0.15, "num_funs": 7, "comments_per_loc": 0.64, "tokens": 460, "ccn": 9, "ccn_per_function": 1.2857142857142858, "tokens_per_function": 65.71428571428571, "ccn_per_token": 0.01956521739130435, "functions_per_token": 0.015217391304347827, "loc_per_token": 0.14347826086956522, "ccn_per_loc": 0.13636363636363635, "functions_per_loc": 0.10606060606060606, "tokens_per_loc": 6.96969696969697}, {"date": "2018-01", "loc": 76, "path": "src/ca/mcgill/cs/jetuml/gui/AboutDialog.java", "comments": 32, "loc_per_function": 19.0, "blanks_per_loc": 0.22, "num_funs": 4, "comments_per_loc": 0.42, "tokens": 609, "ccn": 5, "ccn_per_function": 1.25, "tokens_per_function": 152.25, "ccn_per_token": 0.008210180623973728, "functions_per_token": 0.006568144499178982, "loc_per_token": 0.12479474548440066, "ccn_per_loc": 0.06578947368421052, "functions_per_loc": 0.05263157894736842, "tokens_per_loc": 8.013157894736842}, {"date": "2018-01", "loc": 41, "path": "src/ca/mcgill/cs/jetuml/gui/SelectableToolButton.java", "comments": 46, "loc_per_function": 13.67, "blanks_per_loc": 0.15, "num_funs": 3, "comments_per_loc": 1.12, "tokens": 285, "ccn": 7, "ccn_per_function": 2.3333333333333335, "tokens_per_function": 95.0, "ccn_per_token": 0.02456140350877193, "functions_per_token": 0.010526315789473684, "loc_per_token": 0.14385964912280702, "ccn_per_loc": 0.17073170731707318, "functions_per_loc": 0.07317073170731707, "tokens_per_loc": 6.951219512195122}, {"date": "2018-01", "loc": 527, "path": "src/ca/mcgill/cs/jetuml/gui/EditorFrame.java", "comments": 109, "loc_per_function": 16.47, "blanks_per_loc": 0.12, "num_funs": 32, "comments_per_loc": 0.21, "tokens": 3980, "ccn": 73, "ccn_per_function": 2.28125, "tokens_per_function": 124.375, "ccn_per_token": 0.018341708542713567, "functions_per_token": 0.008040201005025126, "loc_per_token": 0.13241206030150754, "ccn_per_loc": 0.13851992409867173, "functions_per_loc": 0.06072106261859583, "tokens_per_loc": 7.552182163187855}, {"date": "2018-01", "loc": 5, "path": "src/ca/mcgill/cs/jetuml/gui/SelectionObserver.java", "comments": 26, "loc_per_function": 5.0, "blanks_per_loc": 0.2, "num_funs": 0, "comments_per_loc": 5.2, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.23809523809523808, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 4.2}, {"date": "2018-01", "loc": 477, "path": "src/ca/mcgill/cs/jetuml/gui/DiagramCanvasController.java", "comments": 107, "loc_per_function": 11.93, "blanks_per_loc": 0.12, "num_funs": 40, "comments_per_loc": 0.22, "tokens": 2858, "ccn": 85, "ccn_per_function": 2.125, "tokens_per_function": 71.45, "ccn_per_token": 0.02974107767669699, "functions_per_token": 0.013995801259622114, "loc_per_token": 0.1668999300209937, "ccn_per_loc": 0.17819706498951782, "functions_per_loc": 0.08385744234800839, "tokens_per_loc": 5.9916142557651995}, {"date": "2018-01", "loc": 140, "path": "src/ca/mcgill/cs/jetuml/gui/DiagramTabToolBar.java", "comments": 54, "loc_per_function": 11.67, "blanks_per_loc": 0.11, "num_funs": 12, "comments_per_loc": 0.39, "tokens": 1090, "ccn": 18, "ccn_per_function": 1.5, "tokens_per_function": 90.83333333333333, "ccn_per_token": 0.01651376146788991, "functions_per_token": 0.011009174311926606, "loc_per_token": 0.12844036697247707, "ccn_per_loc": 0.12857142857142856, "functions_per_loc": 0.08571428571428572, "tokens_per_loc": 7.785714285714286}, {"date": "2018-01", "loc": 27, "path": "src/ca/mcgill/cs/jetuml/gui/NamedHandler.java", "comments": 36, "loc_per_function": 6.75, "blanks_per_loc": 0.22, "num_funs": 4, "comments_per_loc": 1.33, "tokens": 125, "ccn": 5, "ccn_per_function": 1.25, "tokens_per_function": 31.25, "ccn_per_token": 0.04, "functions_per_token": 0.032, "loc_per_token": 0.216, "ccn_per_loc": 0.18518518518518517, "functions_per_loc": 0.14814814814814814, "tokens_per_loc": 4.62962962962963}, {"date": "2018-01", "loc": 188, "path": "src/ca/mcgill/cs/jetuml/gui/PropertySheet.java", "comments": 51, "loc_per_function": 20.89, "blanks_per_loc": 0.14, "num_funs": 9, "comments_per_loc": 0.27, "tokens": 1230, "ccn": 30, "ccn_per_function": 3.3333333333333335, "tokens_per_function": 136.66666666666666, "ccn_per_token": 0.024390243902439025, "functions_per_token": 0.007317073170731708, "loc_per_token": 0.15284552845528454, "ccn_per_loc": 0.1595744680851064, "functions_per_loc": 0.047872340425531915, "tokens_per_loc": 6.542553191489362}, {"date": "2018-01", "loc": 24, "path": "src/ca/mcgill/cs/jetuml/gui/NewDiagramHandler.java", "comments": 33, "loc_per_function": 8.0, "blanks_per_loc": 0.21, "num_funs": 3, "comments_per_loc": 1.38, "tokens": 120, "ccn": 4, "ccn_per_function": 1.3333333333333333, "tokens_per_function": 40.0, "ccn_per_token": 0.03333333333333333, "functions_per_token": 0.025, "loc_per_token": 0.2, "ccn_per_loc": 0.16666666666666666, "functions_per_loc": 0.125, "tokens_per_loc": 5.0}, {"date": "2018-01", "loc": 210, "path": "src/ca/mcgill/cs/jetuml/gui/SelectionModel.java", "comments": 131, "loc_per_function": 8.75, "blanks_per_loc": 0.14, "num_funs": 24, "comments_per_loc": 0.62, "tokens": 1092, "ccn": 42, "ccn_per_function": 1.75, "tokens_per_function": 45.5, "ccn_per_token": 0.038461538461538464, "functions_per_token": 0.02197802197802198, "loc_per_token": 0.19230769230769232, "ccn_per_loc": 0.2, "functions_per_loc": 0.11428571428571428, "tokens_per_loc": 5.2}, {"date": "2018-01", "loc": 115, "path": "src/ca/mcgill/cs/jetuml/gui/ViewportProjection.java", "comments": 88, "loc_per_function": 7.19, "blanks_per_loc": 0.15, "num_funs": 16, "comments_per_loc": 0.77, "tokens": 569, "ccn": 30, "ccn_per_function": 1.875, "tokens_per_function": 35.5625, "ccn_per_token": 0.05272407732864675, "functions_per_token": 0.028119507908611598, "loc_per_token": 0.20210896309314588, "ccn_per_loc": 0.2608695652173913, "functions_per_loc": 0.1391304347826087, "tokens_per_loc": 4.947826086956522}, {"date": "2018-01", "loc": 39, "path": "src/ca/mcgill/cs/jetuml/gui/GuiUtils.java", "comments": 35, "loc_per_function": 9.75, "blanks_per_loc": 0.15, "num_funs": 4, "comments_per_loc": 0.9, "tokens": 277, "ccn": 5, "ccn_per_function": 1.25, "tokens_per_function": 69.25, "ccn_per_token": 0.018050541516245487, "functions_per_token": 0.01444043321299639, "loc_per_token": 0.1407942238267148, "ccn_per_loc": 0.1282051282051282, "functions_per_loc": 0.10256410256410256, "tokens_per_loc": 7.102564102564102}, {"date": "2018-01", "loc": 166, "path": "src/ca/mcgill/cs/jetuml/gui/DiagramSizeDialog.java", "comments": 33, "loc_per_function": 18.44, "blanks_per_loc": 0.15, "num_funs": 9, "comments_per_loc": 0.2, "tokens": 1271, "ccn": 15, "ccn_per_function": 1.6666666666666667, "tokens_per_function": 141.22222222222223, "ccn_per_token": 0.011801730920535013, "functions_per_token": 0.007081038552321007, "loc_per_token": 0.13060582218725414, "ccn_per_loc": 0.09036144578313253, "functions_per_loc": 0.05421686746987952, "tokens_per_loc": 7.656626506024097}, {"date": "2018-01", "loc": 176, "path": "src/ca/mcgill/cs/jetuml/gui/DiagramTab.java", "comments": 97, "loc_per_function": 8.38, "blanks_per_loc": 0.18, "num_funs": 21, "comments_per_loc": 0.55, "tokens": 990, "ccn": 26, "ccn_per_function": 1.2380952380952381, "tokens_per_function": 47.142857142857146, "ccn_per_token": 0.026262626262626262, "functions_per_token": 0.021212121212121213, "loc_per_token": 0.17777777777777778, "ccn_per_loc": 0.14772727272727273, "functions_per_loc": 0.11931818181818182, "tokens_per_loc": 5.625}, {"date": "2018-01", "loc": 36, "path": "src/ca/mcgill/cs/jetuml/commands/ChangePropertyCommand.java", "comments": 31, "loc_per_function": 9.0, "blanks_per_loc": 0.17, "num_funs": 4, "comments_per_loc": 0.86, "tokens": 148, "ccn": 7, "ccn_per_function": 1.75, "tokens_per_function": 37.0, "ccn_per_token": 0.0472972972972973, "functions_per_token": 0.02702702702702703, "loc_per_token": 0.24324324324324326, "ccn_per_loc": 0.19444444444444445, "functions_per_loc": 0.1111111111111111, "tokens_per_loc": 4.111111111111111}, {"date": "2018-01", "loc": 22, "path": "src/ca/mcgill/cs/jetuml/commands/AddNodeCommand.java", "comments": 34, "loc_per_function": 7.33, "blanks_per_loc": 0.18, "num_funs": 3, "comments_per_loc": 1.55, "tokens": 118, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 39.333333333333336, "ccn_per_token": 0.025423728813559324, "functions_per_token": 0.025423728813559324, "loc_per_token": 0.1864406779661017, "ccn_per_loc": 0.13636363636363635, "functions_per_loc": 0.13636363636363635, "tokens_per_loc": 5.363636363636363}, {"date": "2018-01", "loc": 20, "path": "src/ca/mcgill/cs/jetuml/commands/RemoveEdgeCommand.java", "comments": 34, "loc_per_function": 6.67, "blanks_per_loc": 0.2, "num_funs": 3, "comments_per_loc": 1.7, "tokens": 106, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 35.333333333333336, "ccn_per_token": 0.02830188679245283, "functions_per_token": 0.02830188679245283, "loc_per_token": 0.18867924528301888, "ccn_per_loc": 0.15, "functions_per_loc": 0.15, "tokens_per_loc": 5.3}, {"date": "2018-01", "loc": 20, "path": "src/ca/mcgill/cs/jetuml/commands/AddEdgeCommand.java", "comments": 34, "loc_per_function": 6.67, "blanks_per_loc": 0.2, "num_funs": 3, "comments_per_loc": 1.7, "tokens": 106, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 35.333333333333336, "ccn_per_token": 0.02830188679245283, "functions_per_token": 0.02830188679245283, "loc_per_token": 0.18867924528301888, "ccn_per_loc": 0.15, "functions_per_loc": 0.15, "tokens_per_loc": 5.3}, {"date": "2018-01", "loc": 13, "path": "src/ca/mcgill/cs/jetuml/commands/GraphElementRelatedCommand.java", "comments": 28, "loc_per_function": 13.0, "blanks_per_loc": 0.23, "num_funs": 1, "comments_per_loc": 2.15, "tokens": 71, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 71.0, "ccn_per_token": 0.014084507042253521, "functions_per_token": 0.014084507042253521, "loc_per_token": 0.18309859154929578, "ccn_per_loc": 0.07692307692307693, "functions_per_loc": 0.07692307692307693, "tokens_per_loc": 5.461538461538462}, {"date": "2018-01", "loc": 18, "path": "src/ca/mcgill/cs/jetuml/commands/DeleteNodeCommand.java", "comments": 34, "loc_per_function": 6.0, "blanks_per_loc": 0.22, "num_funs": 3, "comments_per_loc": 1.89, "tokens": 96, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 32.0, "ccn_per_token": 0.03125, "functions_per_token": 0.03125, "loc_per_token": 0.1875, "ccn_per_loc": 0.16666666666666666, "functions_per_loc": 0.16666666666666666, "tokens_per_loc": 5.333333333333333}, {"date": "2018-01", "loc": 27, "path": "src/ca/mcgill/cs/jetuml/commands/MoveCommand.java", "comments": 36, "loc_per_function": 9.0, "blanks_per_loc": 0.22, "num_funs": 3, "comments_per_loc": 1.33, "tokens": 139, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 46.333333333333336, "ccn_per_token": 0.02158273381294964, "functions_per_token": 0.02158273381294964, "loc_per_token": 0.19424460431654678, "ccn_per_loc": 0.1111111111111111, "functions_per_loc": 0.1111111111111111, "tokens_per_loc": 5.148148148148148}, {"date": "2018-01", "loc": 6, "path": "src/ca/mcgill/cs/jetuml/commands/Command.java", "comments": 29, "loc_per_function": 6.0, "blanks_per_loc": 0.5, "num_funs": 0, "comments_per_loc": 4.83, "tokens": 26, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 26, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.23076923076923078, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 4.333333333333333}, {"date": "2018-01", "loc": 40, "path": "src/ca/mcgill/cs/jetuml/commands/CompoundCommand.java", "comments": 42, "loc_per_function": 8.0, "blanks_per_loc": 0.17, "num_funs": 5, "comments_per_loc": 1.05, "tokens": 194, "ccn": 7, "ccn_per_function": 1.4, "tokens_per_function": 38.8, "ccn_per_token": 0.03608247422680412, "functions_per_token": 0.02577319587628866, "loc_per_token": 0.20618556701030927, "ccn_per_loc": 0.175, "functions_per_loc": 0.125, "tokens_per_loc": 4.85}, {"date": "2018-01", "loc": 35, "path": "src/ca/mcgill/cs/jetuml/persistence/PersistenceService.java", "comments": 41, "loc_per_function": 11.67, "blanks_per_loc": 0.17, "num_funs": 3, "comments_per_loc": 1.17, "tokens": 222, "ccn": 5, "ccn_per_function": 1.6666666666666667, "tokens_per_function": 74.0, "ccn_per_token": 0.02252252252252252, "functions_per_token": 0.013513513513513514, "loc_per_token": 0.15765765765765766, "ccn_per_loc": 0.14285714285714285, "functions_per_loc": 0.08571428571428572, "tokens_per_loc": 6.3428571428571425}, {"date": "2018-01", "loc": 89, "path": "src/ca/mcgill/cs/jetuml/persistence/JsonEncoder.java", "comments": 31, "loc_per_function": 12.71, "blanks_per_loc": 0.13, "num_funs": 7, "comments_per_loc": 0.35, "tokens": 643, "ccn": 16, "ccn_per_function": 2.2857142857142856, "tokens_per_function": 91.85714285714286, "ccn_per_token": 0.024883359253499222, "functions_per_token": 0.01088646967340591, "loc_per_token": 0.13841368584758942, "ccn_per_loc": 0.1797752808988764, "functions_per_loc": 0.07865168539325842, "tokens_per_loc": 7.224719101123595}, {"date": "2018-01", "loc": 40, "path": "src/ca/mcgill/cs/jetuml/persistence/SerializationContext.java", "comments": 41, "loc_per_function": 10.0, "blanks_per_loc": 0.12, "num_funs": 4, "comments_per_loc": 1.02, "tokens": 199, "ccn": 8, "ccn_per_function": 2.0, "tokens_per_function": 49.75, "ccn_per_token": 0.04020100502512563, "functions_per_token": 0.020100502512562814, "loc_per_token": 0.20100502512562815, "ccn_per_loc": 0.2, "functions_per_loc": 0.1, "tokens_per_loc": 4.975}, {"date": "2018-01", "loc": 13, "path": "src/ca/mcgill/cs/jetuml/persistence/DeserializationException.java", "comments": 34, "loc_per_function": 6.5, "blanks_per_loc": 0.15, "num_funs": 2, "comments_per_loc": 2.62, "tokens": 54, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 27.0, "ccn_per_token": 0.037037037037037035, "functions_per_token": 0.037037037037037035, "loc_per_token": 0.24074074074074073, "ccn_per_loc": 0.15384615384615385, "functions_per_loc": 0.15384615384615385, "tokens_per_loc": 4.153846153846154}, {"date": "2018-01", "loc": 107, "path": "src/ca/mcgill/cs/jetuml/persistence/JsonDecoder.java", "comments": 45, "loc_per_function": 17.83, "blanks_per_loc": 0.09, "num_funs": 6, "comments_per_loc": 0.42, "tokens": 765, "ccn": 19, "ccn_per_function": 3.1666666666666665, "tokens_per_function": 127.5, "ccn_per_token": 0.02483660130718954, "functions_per_token": 0.00784313725490196, "loc_per_token": 0.13986928104575164, "ccn_per_loc": 0.17757009345794392, "functions_per_loc": 0.056074766355140186, "tokens_per_loc": 7.149532710280374}, {"date": "2018-01", "loc": 30, "path": "src/ca/mcgill/cs/jetuml/persistence/AbstractContext.java", "comments": 41, "loc_per_function": 7.5, "blanks_per_loc": 0.23, "num_funs": 4, "comments_per_loc": 1.37, "tokens": 164, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 41.0, "ccn_per_token": 0.024390243902439025, "functions_per_token": 0.024390243902439025, "loc_per_token": 0.18292682926829268, "ccn_per_loc": 0.13333333333333333, "functions_per_loc": 0.13333333333333333, "tokens_per_loc": 5.466666666666667}, {"date": "2018-01", "loc": 27, "path": "src/ca/mcgill/cs/jetuml/persistence/DeserializationContext.java", "comments": 44, "loc_per_function": 9.0, "blanks_per_loc": 0.15, "num_funs": 3, "comments_per_loc": 1.63, "tokens": 127, "ccn": 5, "ccn_per_function": 1.6666666666666667, "tokens_per_function": 42.333333333333336, "ccn_per_token": 0.03937007874015748, "functions_per_token": 0.023622047244094488, "loc_per_token": 0.2125984251968504, "ccn_per_loc": 0.18518518518518517, "functions_per_loc": 0.1111111111111111, "tokens_per_loc": 4.703703703703703}, {"date": "2018-01", "loc": 301, "path": "src/org/json/JSONTokener.java", "comments": 181, "loc_per_function": 14.33, "blanks_per_loc": 0.16, "num_funs": 21, "comments_per_loc": 0.6, "tokens": 1664, "ccn": 92, "ccn_per_function": 4.380952380952381, "tokens_per_function": 79.23809523809524, "ccn_per_token": 0.055288461538461536, "functions_per_token": 0.012620192307692308, "loc_per_token": 0.18088942307692307, "ccn_per_loc": 0.30564784053156147, "functions_per_loc": 0.06976744186046512, "tokens_per_loc": 5.528239202657807}, {"date": "2018-01", "loc": 126, "path": "src/org/json/JSONPointer.java", "comments": 123, "loc_per_function": 10.5, "blanks_per_loc": 0.2, "num_funs": 12, "comments_per_loc": 0.98, "tokens": 810, "ccn": 30, "ccn_per_function": 2.5, "tokens_per_function": 67.5, "ccn_per_token": 0.037037037037037035, "functions_per_token": 0.014814814814814815, "loc_per_token": 0.15555555555555556, "ccn_per_loc": 0.23809523809523808, "functions_per_loc": 0.09523809523809523, "tokens_per_loc": 6.428571428571429}, {"date": "2018-01", "loc": 4, "path": "src/org/json/JSONString.java", "comments": 14, "loc_per_function": 4.0, "blanks_per_loc": 0.0, "num_funs": 0, "comments_per_loc": 3.5, "tokens": 16, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 16, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.25, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 4.0}, {"date": "2018-01", "loc": 13, "path": "src/org/json/JSONException.java", "comments": 27, "loc_per_function": 4.33, "blanks_per_loc": 0.38, "num_funs": 3, "comments_per_loc": 2.08, "tokens": 74, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 24.666666666666668, "ccn_per_token": 0.04054054054054054, "functions_per_token": 0.04054054054054054, "loc_per_token": 0.17567567567567569, "ccn_per_loc": 0.23076923076923078, "functions_per_loc": 0.23076923076923078, "tokens_per_loc": 5.6923076923076925}, {"date": "2018-01", "loc": 10, "path": "src/org/json/JSONPointerException.java", "comments": 26, "loc_per_function": 5.0, "blanks_per_loc": 0.9, "num_funs": 2, "comments_per_loc": 2.6, "tokens": 51, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 25.5, "ccn_per_token": 0.0392156862745098, "functions_per_token": 0.0392156862745098, "loc_per_token": 0.19607843137254902, "ccn_per_loc": 0.2, "functions_per_loc": 0.2, "tokens_per_loc": 5.1}, {"date": "2018-01", "loc": 1113, "path": "src/org/json/JSONObject.java", "comments": 1115, "loc_per_function": 11.84, "blanks_per_loc": 0.12, "num_funs": 94, "comments_per_loc": 1.0, "tokens": 7586, "ccn": 389, "ccn_per_function": 4.138297872340425, "tokens_per_function": 80.70212765957447, "ccn_per_token": 0.05127867123648827, "functions_per_token": 0.012391247034010018, "loc_per_token": 0.14671763775375693, "ccn_per_loc": 0.3495058400718778, "functions_per_loc": 0.08445642407906559, "tokens_per_loc": 6.81581311769991}, {"date": "2018-01", "loc": 189, "path": "src/org/json/JSONWriter.java", "comments": 198, "loc_per_function": 12.6, "blanks_per_loc": 0.16, "num_funs": 15, "comments_per_loc": 1.05, "tokens": 1198, "ccn": 62, "ccn_per_function": 4.133333333333334, "tokens_per_function": 79.86666666666666, "ccn_per_token": 0.05175292153589316, "functions_per_token": 0.012520868113522538, "loc_per_token": 0.15776293823038398, "ccn_per_loc": 0.328042328042328, "functions_per_loc": 0.07936507936507936, "tokens_per_loc": 6.338624338624339}, {"date": "2018-01", "loc": 631, "path": "src/org/json/JSONArray.java", "comments": 785, "loc_per_function": 9.14, "blanks_per_loc": 0.13, "num_funs": 69, "comments_per_loc": 1.24, "tokens": 4149, "ccn": 197, "ccn_per_function": 2.8550724637681157, "tokens_per_function": 60.130434782608695, "ccn_per_token": 0.047481320800192815, "functions_per_token": 0.016630513376717282, "loc_per_token": 0.15208483972041456, "ccn_per_loc": 0.312202852614897, "functions_per_loc": 0.10935023771790808, "tokens_per_loc": 6.575277337559429},{"date": "2021-01", "loc": 9, "path": "test/ca/mcgill/cs/jetuml/JavaFXLoader.java", "comments": 24, "loc_per_function": 4.5, "blanks_per_loc": 0.44, "num_funs": 2, "comments_per_loc": 2.67, "tokens": 53, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 26.5, "ccn_per_token": 0.03773584905660377, "functions_per_token": 0.03773584905660377, "loc_per_token": 0.16981132075471697, "ccn_per_loc": 0.2222222222222222, "functions_per_loc": 0.2222222222222222, "tokens_per_loc": 5.888888888888889}, {"date": "2021-01", "loc": 83, "path": "test/ca/mcgill/cs/jetuml/geom/TestDimension.java", "comments": 21, "loc_per_function": 7.55, "blanks_per_loc": 0.18, "num_funs": 11, "comments_per_loc": 0.25, "tokens": 560, "ccn": 11, "ccn_per_function": 1.0, "tokens_per_function": 50.90909090909091, "ccn_per_token": 0.019642857142857142, "functions_per_token": 0.019642857142857142, "loc_per_token": 0.14821428571428572, "ccn_per_loc": 0.13253012048192772, "functions_per_loc": 0.13253012048192772, "tokens_per_loc": 6.746987951807229}, {"date": "2021-01", "loc": 98, "path": "test/ca/mcgill/cs/jetuml/geom/TestDirection.java", "comments": 27, "loc_per_function": 7.54, "blanks_per_loc": 0.17, "num_funs": 13, "comments_per_loc": 0.28, "tokens": 924, "ccn": 13, "ccn_per_function": 1.0, "tokens_per_function": 71.07692307692308, "ccn_per_token": 0.01406926406926407, "functions_per_token": 0.01406926406926407, "loc_per_token": 0.10606060606060606, "ccn_per_loc": 0.1326530612244898, "functions_per_loc": 0.1326530612244898, "tokens_per_loc": 9.428571428571429}, {"date": "2021-01", "loc": 22, "path": "test/ca/mcgill/cs/jetuml/geom/TestLine.java", "comments": 45, "loc_per_function": 11.0, "blanks_per_loc": 0.36, "num_funs": 2, "comments_per_loc": 2.05, "tokens": 156, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 78.0, "ccn_per_token": 0.01282051282051282, "functions_per_token": 0.01282051282051282, "loc_per_token": 0.14102564102564102, "ccn_per_loc": 0.09090909090909091, "functions_per_loc": 0.09090909090909091, "tokens_per_loc": 7.090909090909091}, {"date": "2021-01", "loc": 55, "path": "test/ca/mcgill/cs/jetuml/geom/TestPoint.java", "comments": 20, "loc_per_function": 11.0, "blanks_per_loc": 0.15, "num_funs": 5, "comments_per_loc": 0.36, "tokens": 466, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 93.2, "ccn_per_token": 0.01072961373390558, "functions_per_token": 0.01072961373390558, "loc_per_token": 0.11802575107296137, "ccn_per_loc": 0.09090909090909091, "functions_per_loc": 0.09090909090909091, "tokens_per_loc": 8.472727272727273}, {"date": "2021-01", "loc": 224, "path": "test/ca/mcgill/cs/jetuml/geom/TestGeomUtils.java", "comments": 20, "loc_per_function": 5.21, "blanks_per_loc": 0.21, "num_funs": 43, "comments_per_loc": 0.09, "tokens": 1414, "ccn": 43, "ccn_per_function": 1.0, "tokens_per_function": 32.883720930232556, "ccn_per_token": 0.03041018387553041, "functions_per_token": 0.03041018387553041, "loc_per_token": 0.15841584158415842, "ccn_per_loc": 0.19196428571428573, "functions_per_loc": 0.19196428571428573, "tokens_per_loc": 6.3125}, {"date": "2021-01", "loc": 85, "path": "test/ca/mcgill/cs/jetuml/geom/TestRectangle.java", "comments": 20, "loc_per_function": 9.44, "blanks_per_loc": 0.14, "num_funs": 9, "comments_per_loc": 0.24, "tokens": 737, "ccn": 9, "ccn_per_function": 1.0, "tokens_per_function": 81.88888888888889, "ccn_per_token": 0.012211668928086838, "functions_per_token": 0.012211668928086838, "loc_per_token": 0.11533242876526459, "ccn_per_loc": 0.10588235294117647, "functions_per_loc": 0.10588235294117647, "tokens_per_loc": 8.670588235294117}, {"date": "2021-01", "loc": 484, "path": "test/ca/mcgill/cs/jetuml/viewers/edges/TestSegmentationStrategies.java", "comments": 44, "loc_per_function": 21.04, "blanks_per_loc": 0.1, "num_funs": 23, "comments_per_loc": 0.09, "tokens": 4860, "ccn": 23, "ccn_per_function": 1.0, "tokens_per_function": 211.30434782608697, "ccn_per_token": 0.004732510288065843, "functions_per_token": 0.004732510288065843, "loc_per_token": 0.09958847736625515, "ccn_per_loc": 0.047520661157024795, "functions_per_loc": 0.047520661157024795, "tokens_per_loc": 10.041322314049587}, {"date": "2021-01", "loc": 41, "path": "test/ca/mcgill/cs/jetuml/viewers/edges/TestDependencyEdgeViewer.java", "comments": 20, "loc_per_function": 13.67, "blanks_per_loc": 0.24, "num_funs": 3, "comments_per_loc": 0.49, "tokens": 289, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 96.33333333333333, "ccn_per_token": 0.010380622837370242, "functions_per_token": 0.010380622837370242, "loc_per_token": 0.14186851211072665, "ccn_per_loc": 0.07317073170731707, "functions_per_loc": 0.07317073170731707, "tokens_per_loc": 7.048780487804878}, {"date": "2021-01", "loc": 72, "path": "test/ca/mcgill/cs/jetuml/viewers/edges/TestNoteEdgeViewer.java", "comments": 25, "loc_per_function": 18.0, "blanks_per_loc": 0.25, "num_funs": 4, "comments_per_loc": 0.35, "tokens": 631, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 157.75, "ccn_per_token": 0.006339144215530904, "functions_per_token": 0.006339144215530904, "loc_per_token": 0.11410459587955626, "ccn_per_loc": 0.05555555555555555, "functions_per_loc": 0.05555555555555555, "tokens_per_loc": 8.76388888888889}, {"date": "2021-01", "loc": 120, "path": "test/ca/mcgill/cs/jetuml/viewers/nodes/TestFieldNodeViewer.java", "comments": 35, "loc_per_function": 9.23, "blanks_per_loc": 0.16, "num_funs": 13, "comments_per_loc": 0.29, "tokens": 1005, "ccn": 13, "ccn_per_function": 1.0, "tokens_per_function": 77.3076923076923, "ccn_per_token": 0.012935323383084577, "functions_per_token": 0.012935323383084577, "loc_per_token": 0.11940298507462686, "ccn_per_loc": 0.10833333333333334, "functions_per_loc": 0.10833333333333334, "tokens_per_loc": 8.375}, {"date": "2021-01", "loc": 75, "path": "test/ca/mcgill/cs/jetuml/viewers/nodes/TestCircularNodeViewer.java", "comments": 20, "loc_per_function": 6.82, "blanks_per_loc": 0.2, "num_funs": 11, "comments_per_loc": 0.27, "tokens": 519, "ccn": 11, "ccn_per_function": 1.0, "tokens_per_function": 47.18181818181818, "ccn_per_token": 0.02119460500963391, "functions_per_token": 0.02119460500963391, "loc_per_token": 0.14450867052023122, "ccn_per_loc": 0.14666666666666667, "functions_per_loc": 0.14666666666666667, "tokens_per_loc": 6.92}, {"date": "2021-01", "loc": 126, "path": "test/ca/mcgill/cs/jetuml/viewers/nodes/TestTypeNodeViewer.java", "comments": 26, "loc_per_function": 8.4, "blanks_per_loc": 0.16, "num_funs": 15, "comments_per_loc": 0.21, "tokens": 831, "ccn": 16, "ccn_per_function": 1.0666666666666667, "tokens_per_function": 55.4, "ccn_per_token": 0.019253910950661854, "functions_per_token": 0.018050541516245487, "loc_per_token": 0.15162454873646208, "ccn_per_loc": 0.12698412698412698, "functions_per_loc": 0.11904761904761904, "tokens_per_loc": 6.595238095238095}, {"date": "2021-01", "loc": 48, "path": "test/ca/mcgill/cs/jetuml/viewers/nodes/TestUseCaseNodeViewer.java", "comments": 20, "loc_per_function": 9.6, "blanks_per_loc": 0.19, "num_funs": 5, "comments_per_loc": 0.42, "tokens": 374, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 74.8, "ccn_per_token": 0.013368983957219251, "functions_per_token": 0.013368983957219251, "loc_per_token": 0.12834224598930483, "ccn_per_loc": 0.10416666666666667, "functions_per_loc": 0.10416666666666667, "tokens_per_loc": 7.791666666666667}, {"date": "2021-01", "loc": 117, "path": "test/ca/mcgill/cs/jetuml/viewers/nodes/TestObjectNodeViewer.java", "comments": 20, "loc_per_function": 9.75, "blanks_per_loc": 0.14, "num_funs": 12, "comments_per_loc": 0.17, "tokens": 870, "ccn": 12, "ccn_per_function": 1.0, "tokens_per_function": 72.5, "ccn_per_token": 0.013793103448275862, "functions_per_token": 0.013793103448275862, "loc_per_token": 0.13448275862068965, "ccn_per_loc": 0.10256410256410256, "functions_per_loc": 0.10256410256410256, "tokens_per_loc": 7.435897435897436}, {"date": "2021-01", "loc": 77, "path": "test/ca/mcgill/cs/jetuml/viewers/nodes/TestCallNodeViewer.java", "comments": 20, "loc_per_function": 19.25, "blanks_per_loc": 0.17, "num_funs": 4, "comments_per_loc": 0.26, "tokens": 591, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 147.75, "ccn_per_token": 0.00676818950930626, "functions_per_token": 0.00676818950930626, "loc_per_token": 0.13028764805414553, "ccn_per_loc": 0.05194805194805195, "functions_per_loc": 0.05194805194805195, "tokens_per_loc": 7.675324675324675}, {"date": "2021-01", "loc": 111, "path": "test/ca/mcgill/cs/jetuml/viewers/nodes/TestPackageNodeViewer.java", "comments": 20, "loc_per_function": 8.54, "blanks_per_loc": 0.16, "num_funs": 13, "comments_per_loc": 0.18, "tokens": 682, "ccn": 15, "ccn_per_function": 1.1538461538461537, "tokens_per_function": 52.46153846153846, "ccn_per_token": 0.021994134897360705, "functions_per_token": 0.01906158357771261, "loc_per_token": 0.1627565982404692, "ccn_per_loc": 0.13513513513513514, "functions_per_loc": 0.11711711711711711, "tokens_per_loc": 6.1441441441441444}, {"date": "2021-01", "loc": 113, "path": "test/ca/mcgill/cs/jetuml/viewers/nodes/TestImplicitParameterNodeViewer.java", "comments": 27, "loc_per_function": 16.14, "blanks_per_loc": 0.21, "num_funs": 7, "comments_per_loc": 0.24, "tokens": 874, "ccn": 7, "ccn_per_function": 1.0, "tokens_per_function": 124.85714285714286, "ccn_per_token": 0.008009153318077803, "functions_per_token": 0.008009153318077803, "loc_per_token": 0.12929061784897025, "ccn_per_loc": 0.061946902654867256, "functions_per_loc": 0.061946902654867256, "tokens_per_loc": 7.734513274336283}, {"date": "2021-01", "loc": 48, "path": "test/ca/mcgill/cs/jetuml/viewers/nodes/TestActorNodeViewer.java", "comments": 20, "loc_per_function": 9.6, "blanks_per_loc": 0.19, "num_funs": 5, "comments_per_loc": 0.42, "tokens": 385, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 77.0, "ccn_per_token": 0.012987012987012988, "functions_per_token": 0.012987012987012988, "loc_per_token": 0.12467532467532468, "ccn_per_loc": 0.10416666666666667, "functions_per_loc": 0.10416666666666667, "tokens_per_loc": 8.020833333333334}, {"date": "2021-01", "loc": 84, "path": "test/ca/mcgill/cs/jetuml/viewers/nodes/TestNoteNodeViewer.java", "comments": 24, "loc_per_function": 6.0, "blanks_per_loc": 0.23, "num_funs": 14, "comments_per_loc": 0.29, "tokens": 547, "ccn": 14, "ccn_per_function": 1.0, "tokens_per_function": 39.07142857142857, "ccn_per_token": 0.025594149908592323, "functions_per_token": 0.025594149908592323, "loc_per_token": 0.15356489945155394, "ccn_per_loc": 0.16666666666666666, "functions_per_loc": 0.16666666666666666, "tokens_per_loc": 6.511904761904762}, {"date": "2021-01", "loc": 48, "path": "test/ca/mcgill/cs/jetuml/viewers/nodes/TestStateNodeViewer.java", "comments": 20, "loc_per_function": 9.6, "blanks_per_loc": 0.19, "num_funs": 5, "comments_per_loc": 0.42, "tokens": 374, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 74.8, "ccn_per_token": 0.013368983957219251, "functions_per_token": 0.013368983957219251, "loc_per_token": 0.12834224598930483, "ccn_per_loc": 0.10416666666666667, "functions_per_loc": 0.10416666666666667, "tokens_per_loc": 7.791666666666667}, {"date": "2021-01", "loc": 85, "path": "test/ca/mcgill/cs/jetuml/views/TestGrid.java", "comments": 20, "loc_per_function": 17.0, "blanks_per_loc": 0.09, "num_funs": 5, "comments_per_loc": 0.24, "tokens": 1233, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 246.6, "ccn_per_token": 0.0040551500405515, "functions_per_token": 0.0040551500405515, "loc_per_token": 0.0689375506893755, "ccn_per_loc": 0.058823529411764705, "functions_per_loc": 0.058823529411764705, "tokens_per_loc": 14.505882352941176}, {"date": "2021-01", "loc": 36, "path": "test/ca/mcgill/cs/jetuml/views/TestFontMetrics.java", "comments": 1, "loc_per_function": 12.0, "blanks_per_loc": 0.25, "num_funs": 3, "comments_per_loc": 0.03, "tokens": 354, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 118.0, "ccn_per_token": 0.00847457627118644, "functions_per_token": 0.00847457627118644, "loc_per_token": 0.1016949152542373, "ccn_per_loc": 0.08333333333333333, "functions_per_loc": 0.08333333333333333, "tokens_per_loc": 9.833333333333334}, {"date": "2021-01", "loc": 41, "path": "test/ca/mcgill/cs/jetuml/views/TestStringViewer.java", "comments": 0, "loc_per_function": 13.67, "blanks_per_loc": 0.29, "num_funs": 3, "comments_per_loc": 0.0, "tokens": 403, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 134.33333333333334, "ccn_per_token": 0.007444168734491315, "functions_per_token": 0.007444168734491315, "loc_per_token": 0.10173697270471464, "ccn_per_loc": 0.07317073170731707, "functions_per_loc": 0.07317073170731707, "tokens_per_loc": 9.829268292682928}, {"date": "2021-01", "loc": 134, "path": "test/ca/mcgill/cs/jetuml/diagram/AbstractTestUsageScenarios.java", "comments": 24, "loc_per_function": 7.44, "blanks_per_loc": 0.16, "num_funs": 18, "comments_per_loc": 0.18, "tokens": 793, "ccn": 23, "ccn_per_function": 1.2777777777777777, "tokens_per_function": 44.05555555555556, "ccn_per_token": 0.029003783102143757, "functions_per_token": 0.02269861286254729, "loc_per_token": 0.16897856242118536, "ccn_per_loc": 0.17164179104477612, "functions_per_loc": 0.13432835820895522, "tokens_per_loc": 5.917910447761194}, {"date": "2021-01", "loc": 287, "path": "test/ca/mcgill/cs/jetuml/diagram/TestUsageScenariosObjectDiagram.java", "comments": 34, "loc_per_function": 17.94, "blanks_per_loc": 0.21, "num_funs": 16, "comments_per_loc": 0.12, "tokens": 2699, "ccn": 16, "ccn_per_function": 1.0, "tokens_per_function": 168.6875, "ccn_per_token": 0.005928121526491293, "functions_per_token": 0.005928121526491293, "loc_per_token": 0.10633567988143756, "ccn_per_loc": 0.05574912891986063, "functions_per_loc": 0.05574912891986063, "tokens_per_loc": 9.404181184668989}, {"date": "2021-01", "loc": 244, "path": "test/ca/mcgill/cs/jetuml/diagram/TestClassDiagram.java", "comments": 24, "loc_per_function": 13.56, "blanks_per_loc": 0.11, "num_funs": 18, "comments_per_loc": 0.1, "tokens": 1859, "ccn": 18, "ccn_per_function": 1.0, "tokens_per_function": 103.27777777777777, "ccn_per_token": 0.009682625067240451, "functions_per_token": 0.009682625067240451, "loc_per_token": 0.1312533620225928, "ccn_per_loc": 0.07377049180327869, "functions_per_loc": 0.07377049180327869, "tokens_per_loc": 7.618852459016393}, {"date": "2021-01", "loc": 100, "path": "test/ca/mcgill/cs/jetuml/diagram/TestDiagram.java", "comments": 22, "loc_per_function": 12.5, "blanks_per_loc": 0.17, "num_funs": 8, "comments_per_loc": 0.22, "tokens": 737, "ccn": 8, "ccn_per_function": 1.0, "tokens_per_function": 92.125, "ccn_per_token": 0.010854816824966078, "functions_per_token": 0.010854816824966078, "loc_per_token": 0.13568521031207598, "ccn_per_loc": 0.08, "functions_per_loc": 0.08, "tokens_per_loc": 7.37}, {"date": "2021-01", "loc": 327, "path": "test/ca/mcgill/cs/jetuml/diagram/TestUsageScenariosStateDiagram.java", "comments": 26, "loc_per_function": 20.44, "blanks_per_loc": 0.2, "num_funs": 16, "comments_per_loc": 0.08, "tokens": 3510, "ccn": 16, "ccn_per_function": 1.0, "tokens_per_function": 219.375, "ccn_per_token": 0.004558404558404558, "functions_per_token": 0.004558404558404558, "loc_per_token": 0.09316239316239316, "ccn_per_loc": 0.04892966360856269, "functions_per_loc": 0.04892966360856269, "tokens_per_loc": 10.73394495412844}, {"date": "2021-01", "loc": 43, "path": "test/ca/mcgill/cs/jetuml/diagram/DiagramAccessor.java", "comments": 23, "loc_per_function": 8.6, "blanks_per_loc": 0.16, "num_funs": 5, "comments_per_loc": 0.53, "tokens": 221, "ccn": 8, "ccn_per_function": 1.6, "tokens_per_function": 44.2, "ccn_per_token": 0.03619909502262444, "functions_per_token": 0.02262443438914027, "loc_per_token": 0.19457013574660634, "ccn_per_loc": 0.18604651162790697, "functions_per_loc": 0.11627906976744186, "tokens_per_loc": 5.1395348837209305}, {"date": "2021-01", "loc": 186, "path": "test/ca/mcgill/cs/jetuml/diagram/TestProperties.java", "comments": 21, "loc_per_function": 10.33, "blanks_per_loc": 0.13, "num_funs": 18, "comments_per_loc": 0.11, "tokens": 1809, "ccn": 19, "ccn_per_function": 1.0555555555555556, "tokens_per_function": 100.5, "ccn_per_token": 0.010503040353786623, "functions_per_token": 0.009950248756218905, "loc_per_token": 0.10281923714759536, "ccn_per_loc": 0.10215053763440861, "functions_per_loc": 0.0967741935483871, "tokens_per_loc": 9.725806451612904}, {"date": "2021-01", "loc": 396, "path": "test/ca/mcgill/cs/jetuml/diagram/TestControlFlow.java", "comments": 33, "loc_per_function": 9.43, "blanks_per_loc": 0.14, "num_funs": 42, "comments_per_loc": 0.08, "tokens": 2598, "ccn": 42, "ccn_per_function": 1.0, "tokens_per_function": 61.857142857142854, "ccn_per_token": 0.016166281755196306, "functions_per_token": 0.016166281755196306, "loc_per_token": 0.15242494226327943, "ccn_per_loc": 0.10606060606060606, "functions_per_loc": 0.10606060606060606, "tokens_per_loc": 6.5606060606060606}, {"date": "2021-01", "loc": 19, "path": "test/ca/mcgill/cs/jetuml/diagram/TestProperty.java", "comments": 20, "loc_per_function": 19.0, "blanks_per_loc": 0.21, "num_funs": 1, "comments_per_loc": 1.05, "tokens": 159, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 159.0, "ccn_per_token": 0.006289308176100629, "functions_per_token": 0.006289308176100629, "loc_per_token": 0.11949685534591195, "ccn_per_loc": 0.05263157894736842, "functions_per_loc": 0.05263157894736842, "tokens_per_loc": 8.368421052631579}, {"date": "2021-01", "loc": 469, "path": "test/ca/mcgill/cs/jetuml/diagram/TestUsageScenariosClassDiagram.java", "comments": 28, "loc_per_function": 16.75, "blanks_per_loc": 0.19, "num_funs": 28, "comments_per_loc": 0.06, "tokens": 4287, "ccn": 30, "ccn_per_function": 1.0714285714285714, "tokens_per_function": 153.10714285714286, "ccn_per_token": 0.006997900629811057, "functions_per_token": 0.006531373921156987, "loc_per_token": 0.10940051317937952, "ccn_per_loc": 0.06396588486140725, "functions_per_loc": 0.05970149253731343, "tokens_per_loc": 9.140724946695096}, {"date": "2021-01", "loc": 313, "path": "test/ca/mcgill/cs/jetuml/diagram/TestUsageScenariosUseCaseDiagram.java", "comments": 26, "loc_per_function": 24.08, "blanks_per_loc": 0.2, "num_funs": 13, "comments_per_loc": 0.08, "tokens": 3086, "ccn": 13, "ccn_per_function": 1.0, "tokens_per_function": 237.3846153846154, "ccn_per_token": 0.004212572909915748, "functions_per_token": 0.004212572909915748, "loc_per_token": 0.10142579390797149, "ccn_per_loc": 0.04153354632587859, "functions_per_loc": 0.04153354632587859, "tokens_per_loc": 9.859424920127795}, {"date": "2021-01", "loc": 333, "path": "test/ca/mcgill/cs/jetuml/diagram/TestUsageScenariosSequenceDiagram.java", "comments": 26, "loc_per_function": 19.59, "blanks_per_loc": 0.23, "num_funs": 17, "comments_per_loc": 0.08, "tokens": 2881, "ccn": 17, "ccn_per_function": 1.0, "tokens_per_function": 169.47058823529412, "ccn_per_token": 0.005900728913571677, "functions_per_token": 0.005900728913571677, "loc_per_token": 0.1155848663658452, "ccn_per_loc": 0.05105105105105105, "functions_per_loc": 0.05105105105105105, "tokens_per_loc": 8.651651651651651}, {"date": "2021-01", "loc": 115, "path": "test/ca/mcgill/cs/jetuml/diagram/TestDiagramDuplicate.java", "comments": 23, "loc_per_function": 16.43, "blanks_per_loc": 0.1, "num_funs": 7, "comments_per_loc": 0.2, "tokens": 1064, "ccn": 7, "ccn_per_function": 1.0, "tokens_per_function": 152.0, "ccn_per_token": 0.006578947368421052, "functions_per_token": 0.006578947368421052, "loc_per_token": 0.1080827067669173, "ccn_per_loc": 0.06086956521739131, "functions_per_loc": 0.06086956521739131, "tokens_per_loc": 9.252173913043478}, {"date": "2021-01", "loc": 47, "path": "test/ca/mcgill/cs/jetuml/diagram/TestDiagramType.java", "comments": 20, "loc_per_function": 9.4, "blanks_per_loc": 0.17, "num_funs": 5, "comments_per_loc": 0.43, "tokens": 458, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 91.6, "ccn_per_token": 0.010917030567685589, "functions_per_token": 0.010917030567685589, "loc_per_token": 0.10262008733624454, "ccn_per_loc": 0.10638297872340426, "functions_per_loc": 0.10638297872340426, "tokens_per_loc": 9.74468085106383}, {"date": "2021-01", "loc": 42, "path": "test/ca/mcgill/cs/jetuml/diagram/edges/TestNoteEdge.java", "comments": 24, "loc_per_function": 14.0, "blanks_per_loc": 0.24, "num_funs": 3, "comments_per_loc": 0.57, "tokens": 310, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 103.33333333333333, "ccn_per_token": 0.00967741935483871, "functions_per_token": 0.00967741935483871, "loc_per_token": 0.13548387096774195, "ccn_per_loc": 0.07142857142857142, "functions_per_loc": 0.07142857142857142, "tokens_per_loc": 7.380952380952381}, {"date": "2021-01", "loc": 31, "path": "test/ca/mcgill/cs/jetuml/diagram/edges/TestCallEdge.java", "comments": 20, "loc_per_function": 15.5, "blanks_per_loc": 0.23, "num_funs": 2, "comments_per_loc": 0.65, "tokens": 292, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 146.0, "ccn_per_token": 0.00684931506849315, "functions_per_token": 0.00684931506849315, "loc_per_token": 0.10616438356164383, "ccn_per_loc": 0.06451612903225806, "functions_per_loc": 0.06451612903225806, "tokens_per_loc": 9.419354838709678}, {"date": "2021-01", "loc": 17, "path": "test/ca/mcgill/cs/jetuml/diagram/edges/TestUseCaseDependencyEdge.java", "comments": 20, "loc_per_function": 17.0, "blanks_per_loc": 0.24, "num_funs": 1, "comments_per_loc": 1.18, "tokens": 167, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 167.0, "ccn_per_token": 0.005988023952095809, "functions_per_token": 0.005988023952095809, "loc_per_token": 0.10179640718562874, "ccn_per_loc": 0.058823529411764705, "functions_per_loc": 0.058823529411764705, "tokens_per_loc": 9.823529411764707}, {"date": "2021-01", "loc": 46, "path": "test/ca/mcgill/cs/jetuml/diagram/edges/TestEdgeProperties.java", "comments": 23, "loc_per_function": 15.33, "blanks_per_loc": 0.15, "num_funs": 3, "comments_per_loc": 0.5, "tokens": 506, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 168.66666666666666, "ccn_per_token": 0.005928853754940711, "functions_per_token": 0.005928853754940711, "loc_per_token": 0.09090909090909091, "ccn_per_loc": 0.06521739130434782, "functions_per_loc": 0.06521739130434782, "tokens_per_loc": 11.0}, {"date": "2021-01", "loc": 111, "path": "test/ca/mcgill/cs/jetuml/diagram/nodes/TestActorNode.java", "comments": 29, "loc_per_function": 7.93, "blanks_per_loc": 0.18, "num_funs": 14, "comments_per_loc": 0.26, "tokens": 759, "ccn": 14, "ccn_per_function": 1.0, "tokens_per_function": 54.214285714285715, "ccn_per_token": 0.01844532279314888, "functions_per_token": 0.01844532279314888, "loc_per_token": 0.14624505928853754, "ccn_per_loc": 0.12612612612612611, "functions_per_loc": 0.12612612612612611, "tokens_per_loc": 6.837837837837838}, {"date": "2021-01", "loc": 41, "path": "test/ca/mcgill/cs/jetuml/diagram/nodes/TestInterfaceNode.java", "comments": 20, "loc_per_function": 10.25, "blanks_per_loc": 0.17, "num_funs": 4, "comments_per_loc": 0.49, "tokens": 250, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 62.5, "ccn_per_token": 0.016, "functions_per_token": 0.016, "loc_per_token": 0.164, "ccn_per_loc": 0.0975609756097561, "functions_per_loc": 0.0975609756097561, "tokens_per_loc": 6.097560975609756}, {"date": "2021-01", "loc": 129, "path": "test/ca/mcgill/cs/jetuml/diagram/nodes/TestObjectNode.java", "comments": 21, "loc_per_function": 16.12, "blanks_per_loc": 0.15, "num_funs": 8, "comments_per_loc": 0.16, "tokens": 1259, "ccn": 8, "ccn_per_function": 1.0, "tokens_per_function": 157.375, "ccn_per_token": 0.006354249404289118, "functions_per_token": 0.006354249404289118, "loc_per_token": 0.10246227164416204, "ccn_per_loc": 0.06201550387596899, "functions_per_loc": 0.06201550387596899, "tokens_per_loc": 9.75968992248062}, {"date": "2021-01", "loc": 107, "path": "test/ca/mcgill/cs/jetuml/diagram/nodes/TestPackageNode.java", "comments": 21, "loc_per_function": 21.4, "blanks_per_loc": 0.16, "num_funs": 5, "comments_per_loc": 0.2, "tokens": 971, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 194.2, "ccn_per_token": 0.005149330587023687, "functions_per_token": 0.005149330587023687, "loc_per_token": 0.1101956745623069, "ccn_per_loc": 0.04672897196261682, "functions_per_loc": 0.04672897196261682, "tokens_per_loc": 9.074766355140186}, {"date": "2021-01", "loc": 82, "path": "test/ca/mcgill/cs/jetuml/diagram/nodes/TestCallNode.java", "comments": 20, "loc_per_function": 9.11, "blanks_per_loc": 0.18, "num_funs": 9, "comments_per_loc": 0.24, "tokens": 558, "ccn": 9, "ccn_per_function": 1.0, "tokens_per_function": 62.0, "ccn_per_token": 0.016129032258064516, "functions_per_token": 0.016129032258064516, "loc_per_token": 0.14695340501792115, "ccn_per_loc": 0.10975609756097561, "functions_per_loc": 0.10975609756097561, "tokens_per_loc": 6.804878048780488}, {"date": "2021-01", "loc": 67, "path": "test/ca/mcgill/cs/jetuml/diagram/nodes/TestPackageDescriptionNode.java", "comments": 20, "loc_per_function": 8.38, "blanks_per_loc": 0.18, "num_funs": 8, "comments_per_loc": 0.3, "tokens": 388, "ccn": 8, "ccn_per_function": 1.0, "tokens_per_function": 48.5, "ccn_per_token": 0.020618556701030927, "functions_per_token": 0.020618556701030927, "loc_per_token": 0.17268041237113402, "ccn_per_loc": 0.11940298507462686, "functions_per_loc": 0.11940298507462686, "tokens_per_loc": 5.791044776119403}, {"date": "2021-01", "loc": 49, "path": "test/ca/mcgill/cs/jetuml/diagram/nodes/TestImplicitParameterNode.java", "comments": 21, "loc_per_function": 16.33, "blanks_per_loc": 0.2, "num_funs": 3, "comments_per_loc": 0.43, "tokens": 393, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 131.0, "ccn_per_token": 0.007633587786259542, "functions_per_token": 0.007633587786259542, "loc_per_token": 0.12468193384223919, "ccn_per_loc": 0.061224489795918366, "functions_per_loc": 0.061224489795918366, "tokens_per_loc": 8.020408163265307}, {"date": "2021-01", "loc": 68, "path": "test/ca/mcgill/cs/jetuml/diagram/nodes/TestClassNode.java", "comments": 23, "loc_per_function": 9.71, "blanks_per_loc": 0.15, "num_funs": 7, "comments_per_loc": 0.34, "tokens": 431, "ccn": 7, "ccn_per_function": 1.0, "tokens_per_function": 61.57142857142857, "ccn_per_token": 0.016241299303944315, "functions_per_token": 0.016241299303944315, "loc_per_token": 0.15777262180974477, "ccn_per_loc": 0.10294117647058823, "functions_per_loc": 0.10294117647058823, "tokens_per_loc": 6.338235294117647}, {"date": "2021-01", "loc": 21, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/TestSimpleOperation.java", "comments": 20, "loc_per_function": 21.0, "blanks_per_loc": 0.24, "num_funs": 1, "comments_per_loc": 0.95, "tokens": 135, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 135.0, "ccn_per_token": 0.007407407407407408, "functions_per_token": 0.007407407407407408, "loc_per_token": 0.15555555555555556, "ccn_per_loc": 0.047619047619047616, "functions_per_loc": 0.047619047619047616, "tokens_per_loc": 6.428571428571429}, {"date": "2021-01", "loc": 188, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/TestStateDiagramBuilder.java", "comments": 20, "loc_per_function": 11.75, "blanks_per_loc": 0.13, "num_funs": 16, "comments_per_loc": 0.11, "tokens": 1869, "ccn": 16, "ccn_per_function": 1.0, "tokens_per_function": 116.8125, "ccn_per_token": 0.008560727661851257, "functions_per_token": 0.008560727661851257, "loc_per_token": 0.10058855002675228, "ccn_per_loc": 0.0851063829787234, "functions_per_loc": 0.0851063829787234, "tokens_per_loc": 9.941489361702128}, {"date": "2021-01", "loc": 140, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/TestUseCaseDiagramBuilder.java", "comments": 20, "loc_per_function": 12.73, "blanks_per_loc": 0.17, "num_funs": 11, "comments_per_loc": 0.14, "tokens": 1562, "ccn": 11, "ccn_per_function": 1.0, "tokens_per_function": 142.0, "ccn_per_token": 0.007042253521126761, "functions_per_token": 0.007042253521126761, "loc_per_token": 0.08962868117797695, "ccn_per_loc": 0.07857142857142857, "functions_per_loc": 0.07857142857142857, "tokens_per_loc": 11.157142857142857}, {"date": "2021-01", "loc": 106, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/TestCompoundOperation.java", "comments": 21, "loc_per_function": 13.25, "blanks_per_loc": 0.11, "num_funs": 8, "comments_per_loc": 0.2, "tokens": 1081, "ccn": 8, "ccn_per_function": 1.0, "tokens_per_function": 135.125, "ccn_per_token": 0.0074005550416281225, "functions_per_token": 0.0074005550416281225, "loc_per_token": 0.09805735430157261, "ccn_per_loc": 0.07547169811320754, "functions_per_loc": 0.07547169811320754, "tokens_per_loc": 10.19811320754717}, {"date": "2021-01", "loc": 217, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/TestDiagramOperationProcessor.java", "comments": 33, "loc_per_function": 13.56, "blanks_per_loc": 0.15, "num_funs": 16, "comments_per_loc": 0.15, "tokens": 1486, "ccn": 16, "ccn_per_function": 1.0, "tokens_per_function": 92.875, "ccn_per_token": 0.010767160161507403, "functions_per_token": 0.010767160161507403, "loc_per_token": 0.14602960969044415, "ccn_per_loc": 0.07373271889400922, "functions_per_loc": 0.07373271889400922, "tokens_per_loc": 6.847926267281106}, {"date": "2021-01", "loc": 169, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/TestObjectDiagramBuilder.java", "comments": 20, "loc_per_function": 18.78, "blanks_per_loc": 0.19, "num_funs": 9, "comments_per_loc": 0.12, "tokens": 1534, "ccn": 9, "ccn_per_function": 1.0, "tokens_per_function": 170.44444444444446, "ccn_per_token": 0.005867014341590613, "functions_per_token": 0.005867014341590613, "loc_per_token": 0.11016949152542373, "ccn_per_loc": 0.05325443786982249, "functions_per_loc": 0.05325443786982249, "tokens_per_loc": 9.076923076923077}, {"date": "2021-01", "loc": 457, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/TestClassDiagramBuilder.java", "comments": 28, "loc_per_function": 11.72, "blanks_per_loc": 0.12, "num_funs": 39, "comments_per_loc": 0.06, "tokens": 3647, "ccn": 39, "ccn_per_function": 1.0, "tokens_per_function": 93.51282051282051, "ccn_per_token": 0.010693720866465589, "functions_per_token": 0.010693720866465589, "loc_per_token": 0.1253084727173019, "ccn_per_loc": 0.08533916849015317, "functions_per_loc": 0.08533916849015317, "tokens_per_loc": 7.980306345733042}, {"date": "2021-01", "loc": 210, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/TestSequenceDiagramBuilder.java", "comments": 20, "loc_per_function": 15.0, "blanks_per_loc": 0.14, "num_funs": 14, "comments_per_loc": 0.1, "tokens": 1768, "ccn": 15, "ccn_per_function": 1.0714285714285714, "tokens_per_function": 126.28571428571429, "ccn_per_token": 0.008484162895927601, "functions_per_token": 0.007918552036199095, "loc_per_token": 0.11877828054298642, "ccn_per_loc": 0.07142857142857142, "functions_per_loc": 0.06666666666666667, "tokens_per_loc": 8.41904761904762}, {"date": "2021-01", "loc": 87, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/constraints/TestClassDiagramEdgeConstraints.java", "comments": 20, "loc_per_function": 9.67, "blanks_per_loc": 0.16, "num_funs": 9, "comments_per_loc": 0.23, "tokens": 647, "ccn": 9, "ccn_per_function": 1.0, "tokens_per_function": 71.88888888888889, "ccn_per_token": 0.013910355486862442, "functions_per_token": 0.013910355486862442, "loc_per_token": 0.13446676970633695, "ccn_per_loc": 0.10344827586206896, "functions_per_loc": 0.10344827586206896, "tokens_per_loc": 7.436781609195402}, {"date": "2021-01", "loc": 57, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/constraints/TestConstraintSet.java", "comments": 20, "loc_per_function": 9.5, "blanks_per_loc": 0.21, "num_funs": 6, "comments_per_loc": 0.35, "tokens": 565, "ccn": 6, "ccn_per_function": 1.0, "tokens_per_function": 94.16666666666667, "ccn_per_token": 0.010619469026548672, "functions_per_token": 0.010619469026548672, "loc_per_token": 0.10088495575221239, "ccn_per_loc": 0.10526315789473684, "functions_per_loc": 0.10526315789473684, "tokens_per_loc": 9.912280701754385}, {"date": "2021-01", "loc": 166, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/constraints/TestSequenceDiagramEdgeConstraints.java", "comments": 20, "loc_per_function": 7.9, "blanks_per_loc": 0.16, "num_funs": 21, "comments_per_loc": 0.12, "tokens": 1122, "ccn": 21, "ccn_per_function": 1.0, "tokens_per_function": 53.42857142857143, "ccn_per_token": 0.01871657754010695, "functions_per_token": 0.01871657754010695, "loc_per_token": 0.14795008912655971, "ccn_per_loc": 0.12650602409638553, "functions_per_loc": 0.12650602409638553, "tokens_per_loc": 6.759036144578313}, {"date": "2021-01", "loc": 179, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/constraints/TestEdgeConstraints.java", "comments": 20, "loc_per_function": 8.95, "blanks_per_loc": 0.15, "num_funs": 20, "comments_per_loc": 0.11, "tokens": 1354, "ccn": 20, "ccn_per_function": 1.0, "tokens_per_function": 67.7, "ccn_per_token": 0.014771048744460856, "functions_per_token": 0.014771048744460856, "loc_per_token": 0.13220088626292467, "ccn_per_loc": 0.11173184357541899, "functions_per_loc": 0.11173184357541899, "tokens_per_loc": 7.564245810055866}, {"date": "2021-01", "loc": 75, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/constraints/TestStateDiagramEdgeConstraints.java", "comments": 20, "loc_per_function": 9.38, "blanks_per_loc": 0.17, "num_funs": 8, "comments_per_loc": 0.27, "tokens": 519, "ccn": 8, "ccn_per_function": 1.0, "tokens_per_function": 64.875, "ccn_per_token": 0.015414258188824663, "functions_per_token": 0.015414258188824663, "loc_per_token": 0.14450867052023122, "ccn_per_loc": 0.10666666666666667, "functions_per_loc": 0.10666666666666667, "tokens_per_loc": 6.92}, {"date": "2021-01", "loc": 95, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/constraints/TestObjectDiagramEdgeConstraints.java", "comments": 20, "loc_per_function": 8.64, "blanks_per_loc": 0.19, "num_funs": 11, "comments_per_loc": 0.21, "tokens": 636, "ccn": 11, "ccn_per_function": 1.0, "tokens_per_function": 57.81818181818182, "ccn_per_token": 0.01729559748427673, "functions_per_token": 0.01729559748427673, "loc_per_token": 0.14937106918238993, "ccn_per_loc": 0.11578947368421053, "functions_per_loc": 0.11578947368421053, "tokens_per_loc": 6.6947368421052635}, {"date": "2021-01", "loc": 118, "path": "test/ca/mcgill/cs/jetuml/application/TestVersion.java", "comments": 20, "loc_per_function": 5.9, "blanks_per_loc": 0.19, "num_funs": 20, "comments_per_loc": 0.17, "tokens": 705, "ccn": 20, "ccn_per_function": 1.0, "tokens_per_function": 35.25, "ccn_per_token": 0.028368794326241134, "functions_per_token": 0.028368794326241134, "loc_per_token": 0.1673758865248227, "ccn_per_loc": 0.1694915254237288, "functions_per_loc": 0.1694915254237288, "tokens_per_loc": 5.97457627118644}, {"date": "2021-01", "loc": 17, "path": "test/ca/mcgill/cs/jetuml/application/TestApplicationResources.java", "comments": 20, "loc_per_function": 8.5, "blanks_per_loc": 0.24, "num_funs": 2, "comments_per_loc": 1.18, "tokens": 99, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 49.5, "ccn_per_token": 0.020202020202020204, "functions_per_token": 0.020202020202020204, "loc_per_token": 0.1717171717171717, "ccn_per_loc": 0.11764705882352941, "functions_per_loc": 0.11764705882352941, "tokens_per_loc": 5.823529411764706}, {"date": "2021-01", "loc": 109, "path": "test/ca/mcgill/cs/jetuml/application/TestPropertyChangeTracker.java", "comments": 23, "loc_per_function": 13.62, "blanks_per_loc": 0.18, "num_funs": 8, "comments_per_loc": 0.21, "tokens": 745, "ccn": 10, "ccn_per_function": 1.25, "tokens_per_function": 93.125, "ccn_per_token": 0.013422818791946308, "functions_per_token": 0.010738255033557046, "loc_per_token": 0.14630872483221477, "ccn_per_loc": 0.09174311926605505, "functions_per_loc": 0.07339449541284404, "tokens_per_loc": 6.834862385321101}, {"date": "2021-01", "loc": 61, "path": "test/ca/mcgill/cs/jetuml/application/TestFileExtensions.java", "comments": 20, "loc_per_function": 10.17, "blanks_per_loc": 0.16, "num_funs": 6, "comments_per_loc": 0.33, "tokens": 532, "ccn": 7, "ccn_per_function": 1.1666666666666667, "tokens_per_function": 88.66666666666667, "ccn_per_token": 0.013157894736842105, "functions_per_token": 0.011278195488721804, "loc_per_token": 0.11466165413533834, "ccn_per_loc": 0.11475409836065574, "functions_per_loc": 0.09836065573770492, "tokens_per_loc": 8.721311475409836}, {"date": "2021-01", "loc": 183, "path": "test/ca/mcgill/cs/jetuml/application/TestClipboard.java", "comments": 20, "loc_per_function": 13.07, "blanks_per_loc": 0.17, "num_funs": 14, "comments_per_loc": 0.11, "tokens": 1428, "ccn": 16, "ccn_per_function": 1.1428571428571428, "tokens_per_function": 102.0, "ccn_per_token": 0.011204481792717087, "functions_per_token": 0.00980392156862745, "loc_per_token": 0.12815126050420167, "ccn_per_loc": 0.08743169398907104, "functions_per_loc": 0.07650273224043716, "tokens_per_loc": 7.80327868852459}, {"date": "2021-01", "loc": 166, "path": "test/ca/mcgill/cs/jetuml/application/TestMoveTracker.java", "comments": 24, "loc_per_function": 33.2, "blanks_per_loc": 0.13, "num_funs": 5, "comments_per_loc": 0.14, "tokens": 1586, "ccn": 6, "ccn_per_function": 1.2, "tokens_per_function": 317.2, "ccn_per_token": 0.0037831021437578815, "functions_per_token": 0.0031525851197982345, "loc_per_token": 0.10466582597730138, "ccn_per_loc": 0.03614457831325301, "functions_per_loc": 0.030120481927710843, "tokens_per_loc": 9.55421686746988}, {"date": "2021-01", "loc": 139, "path": "test/ca/mcgill/cs/jetuml/application/TestRecentFilesQueue.java", "comments": 20, "loc_per_function": 27.8, "blanks_per_loc": 0.17, "num_funs": 5, "comments_per_loc": 0.14, "tokens": 1506, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 301.2, "ccn_per_token": 0.0033200531208499337, "functions_per_token": 0.0033200531208499337, "loc_per_token": 0.09229747675962816, "ccn_per_loc": 0.03597122302158273, "functions_per_loc": 0.03597122302158273, "tokens_per_loc": 10.83453237410072}, {"date": "2021-01", "loc": 249, "path": "test/ca/mcgill/cs/jetuml/gui/TestViewportProjection.java", "comments": 20, "loc_per_function": 13.83, "blanks_per_loc": 0.12, "num_funs": 18, "comments_per_loc": 0.08, "tokens": 2665, "ccn": 18, "ccn_per_function": 1.0, "tokens_per_function": 148.05555555555554, "ccn_per_token": 0.00675422138836773, "functions_per_token": 0.00675422138836773, "loc_per_token": 0.09343339587242026, "ccn_per_loc": 0.07228915662650602, "functions_per_loc": 0.07228915662650602, "tokens_per_loc": 10.70281124497992}, {"date": "2021-01", "loc": 94, "path": "test/ca/mcgill/cs/jetuml/gui/TestMenuFactory.java", "comments": 21, "loc_per_function": 11.75, "blanks_per_loc": 0.14, "num_funs": 8, "comments_per_loc": 0.22, "tokens": 619, "ccn": 10, "ccn_per_function": 1.25, "tokens_per_function": 77.375, "ccn_per_token": 0.01615508885298869, "functions_per_token": 0.012924071082390954, "loc_per_token": 0.1518578352180937, "ccn_per_loc": 0.10638297872340426, "functions_per_loc": 0.0851063829787234, "tokens_per_loc": 6.585106382978723}, {"date": "2021-01", "loc": 56, "path": "test/ca/mcgill/cs/jetuml/gui/TestDiagramCanvasController.java", "comments": 20, "loc_per_function": 9.33, "blanks_per_loc": 0.18, "num_funs": 6, "comments_per_loc": 0.36, "tokens": 388, "ccn": 7, "ccn_per_function": 1.1666666666666667, "tokens_per_function": 64.66666666666667, "ccn_per_token": 0.01804123711340206, "functions_per_token": 0.015463917525773196, "loc_per_token": 0.14432989690721648, "ccn_per_loc": 0.125, "functions_per_loc": 0.10714285714285714, "tokens_per_loc": 6.928571428571429}, {"date": "2021-01", "loc": 485, "path": "test/ca/mcgill/cs/jetuml/gui/TestSelectionModel.java", "comments": 41, "loc_per_function": 12.12, "blanks_per_loc": 0.11, "num_funs": 40, "comments_per_loc": 0.08, "tokens": 3504, "ccn": 42, "ccn_per_function": 1.05, "tokens_per_function": 87.6, "ccn_per_token": 0.011986301369863013, "functions_per_token": 0.01141552511415525, "loc_per_token": 0.1384132420091324, "ccn_per_loc": 0.0865979381443299, "functions_per_loc": 0.08247422680412371, "tokens_per_loc": 7.224742268041237}, {"date": "2021-01", "loc": 75, "path": "test/ca/mcgill/cs/jetuml/gui/TestDiagramTabToolBar.java", "comments": 28, "loc_per_function": 12.5, "blanks_per_loc": 0.15, "num_funs": 6, "comments_per_loc": 0.37, "tokens": 457, "ccn": 8, "ccn_per_function": 1.3333333333333333, "tokens_per_function": 76.16666666666667, "ccn_per_token": 0.0175054704595186, "functions_per_token": 0.01312910284463895, "loc_per_token": 0.16411378555798686, "ccn_per_loc": 0.10666666666666667, "functions_per_loc": 0.08, "tokens_per_loc": 6.093333333333334}, {"date": "2021-01", "loc": 70, "path": "test/ca/mcgill/cs/jetuml/gui/tips/TestViewedTips.java", "comments": 24, "loc_per_function": 8.75, "blanks_per_loc": 0.29, "num_funs": 8, "comments_per_loc": 0.34, "tokens": 381, "ccn": 9, "ccn_per_function": 1.125, "tokens_per_function": 47.625, "ccn_per_token": 0.023622047244094488, "functions_per_token": 0.02099737532808399, "loc_per_token": 0.1837270341207349, "ccn_per_loc": 0.12857142857142856, "functions_per_loc": 0.11428571428571428, "tokens_per_loc": 5.442857142857143}, {"date": "2021-01", "loc": 82, "path": "test/ca/mcgill/cs/jetuml/gui/tips/TestTipLoader.java", "comments": 20, "loc_per_function": 11.71, "blanks_per_loc": 0.2, "num_funs": 7, "comments_per_loc": 0.24, "tokens": 552, "ccn": 8, "ccn_per_function": 1.1428571428571428, "tokens_per_function": 78.85714285714286, "ccn_per_token": 0.014492753623188406, "functions_per_token": 0.012681159420289856, "loc_per_token": 0.14855072463768115, "ccn_per_loc": 0.0975609756097561, "functions_per_loc": 0.08536585365853659, "tokens_per_loc": 6.7317073170731705}, {"date": "2021-01", "loc": 357, "path": "test/ca/mcgill/cs/jetuml/gui/tips/TestTipDialog.java", "comments": 24, "loc_per_function": 12.31, "blanks_per_loc": 0.2, "num_funs": 29, "comments_per_loc": 0.07, "tokens": 2195, "ccn": 44, "ccn_per_function": 1.5172413793103448, "tokens_per_function": 75.6896551724138, "ccn_per_token": 0.020045558086560365, "functions_per_token": 0.013211845102505695, "loc_per_token": 0.16264236902050114, "ccn_per_loc": 0.12324929971988796, "functions_per_loc": 0.08123249299719888, "tokens_per_loc": 6.148459383753502}, {"date": "2021-01", "loc": 152, "path": "test/ca/mcgill/cs/jetuml/gui/tips/TestTipJsons.java", "comments": 23, "loc_per_function": 12.67, "blanks_per_loc": 0.13, "num_funs": 12, "comments_per_loc": 0.15, "tokens": 949, "ccn": 22, "ccn_per_function": 1.8333333333333333, "tokens_per_function": 79.08333333333333, "ccn_per_token": 0.023182297154899896, "functions_per_token": 0.012644889357218124, "loc_per_token": 0.1601685985247629, "ccn_per_loc": 0.14473684210526316, "functions_per_loc": 0.07894736842105263, "tokens_per_loc": 6.243421052631579}, {"date": "2021-01", "loc": 165, "path": "test/ca/mcgill/cs/jetuml/testutils/CollectionAssertions.java", "comments": 56, "loc_per_function": 12.69, "blanks_per_loc": 0.15, "num_funs": 13, "comments_per_loc": 0.34, "tokens": 1058, "ccn": 49, "ccn_per_function": 3.769230769230769, "tokens_per_function": 81.38461538461539, "ccn_per_token": 0.046313799621928164, "functions_per_token": 0.012287334593572778, "loc_per_token": 0.15595463137996218, "ccn_per_loc": 0.296969696969697, "functions_per_loc": 0.07878787878787878, "tokens_per_loc": 6.412121212121212}, {"date": "2021-01", "loc": 45, "path": "test/ca/mcgill/cs/jetuml/testutils/GeometryUtils.java", "comments": 32, "loc_per_function": 15.0, "blanks_per_loc": 0.13, "num_funs": 3, "comments_per_loc": 0.71, "tokens": 190, "ccn": 9, "ccn_per_function": 3.0, "tokens_per_function": 63.333333333333336, "ccn_per_token": 0.04736842105263158, "functions_per_token": 0.015789473684210527, "loc_per_token": 0.23684210526315788, "ccn_per_loc": 0.2, "functions_per_loc": 0.06666666666666667, "tokens_per_loc": 4.222222222222222}, {"date": "2021-01", "loc": 28, "path": "test/ca/mcgill/cs/jetuml/persistence/TestJsonDecoder.java", "comments": 28, "loc_per_function": 9.33, "blanks_per_loc": 0.21, "num_funs": 3, "comments_per_loc": 1.0, "tokens": 172, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 57.333333333333336, "ccn_per_token": 0.01744186046511628, "functions_per_token": 0.01744186046511628, "loc_per_token": 0.16279069767441862, "ccn_per_loc": 0.10714285714285714, "functions_per_loc": 0.10714285714285714, "tokens_per_loc": 6.142857142857143}, {"date": "2021-01", "loc": 555, "path": "test/ca/mcgill/cs/jetuml/persistence/TestPersistenceService.java", "comments": 20, "loc_per_function": 37.0, "blanks_per_loc": 0.24, "num_funs": 15, "comments_per_loc": 0.04, "tokens": 7594, "ccn": 17, "ccn_per_function": 1.1333333333333333, "tokens_per_function": 506.26666666666665, "ccn_per_token": 0.002238609428496181, "functions_per_token": 0.0019752436133789832, "loc_per_token": 0.07308401369502239, "ccn_per_loc": 0.03063063063063063, "functions_per_loc": 0.02702702702702703, "tokens_per_loc": 13.682882882882883}, {"date": "2021-01", "loc": 64, "path": "test/ca/mcgill/cs/jetuml/persistence/TestJsonEncodingClassDiagram.java", "comments": 23, "loc_per_function": 12.8, "blanks_per_loc": 0.22, "num_funs": 5, "comments_per_loc": 0.36, "tokens": 534, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 106.8, "ccn_per_token": 0.009363295880149813, "functions_per_token": 0.009363295880149813, "loc_per_token": 0.1198501872659176, "ccn_per_loc": 0.078125, "functions_per_loc": 0.078125, "tokens_per_loc": 8.34375}, {"date": "2021-01", "loc": 92, "path": "test/ca/mcgill/cs/jetuml/persistence/TestSerializationContext.java", "comments": 20, "loc_per_function": 13.14, "blanks_per_loc": 0.13, "num_funs": 7, "comments_per_loc": 0.22, "tokens": 518, "ccn": 10, "ccn_per_function": 1.4285714285714286, "tokens_per_function": 74.0, "ccn_per_token": 0.019305019305019305, "functions_per_token": 0.013513513513513514, "loc_per_token": 0.1776061776061776, "ccn_per_loc": 0.10869565217391304, "functions_per_loc": 0.07608695652173914, "tokens_per_loc": 5.630434782608695}, {"date": "2021-01", "loc": 75, "path": "test/ca/mcgill/cs/jetuml/persistence/TestDeserializationContext.java", "comments": 22, "loc_per_function": 15.0, "blanks_per_loc": 0.15, "num_funs": 5, "comments_per_loc": 0.29, "tokens": 538, "ccn": 6, "ccn_per_function": 1.2, "tokens_per_function": 107.6, "ccn_per_token": 0.011152416356877323, "functions_per_token": 0.00929368029739777, "loc_per_token": 0.13940520446096655, "ccn_per_loc": 0.08, "functions_per_loc": 0.06666666666666667, "tokens_per_loc": 7.173333333333333}, {"date": "2021-01", "loc": 192, "path": "test/ca/mcgill/cs/jetuml/persistence/TestJsonEncodingStateDiagram.java", "comments": 31, "loc_per_function": 17.45, "blanks_per_loc": 0.15, "num_funs": 11, "comments_per_loc": 0.16, "tokens": 1887, "ccn": 11, "ccn_per_function": 1.0, "tokens_per_function": 171.54545454545453, "ccn_per_token": 0.005829358770535241, "functions_per_token": 0.005829358770535241, "loc_per_token": 0.10174880763116058, "ccn_per_loc": 0.057291666666666664, "functions_per_loc": 0.057291666666666664, "tokens_per_loc": 9.828125}, {"date": "2021-01", "loc": 112, "path": "test/ca/mcgill/cs/jetuml/persistence/PersistenceTestUtils.java", "comments": 30, "loc_per_function": 18.67, "blanks_per_loc": 0.08, "num_funs": 6, "comments_per_loc": 0.27, "tokens": 614, "ccn": 23, "ccn_per_function": 3.8333333333333335, "tokens_per_function": 102.33333333333333, "ccn_per_token": 0.03745928338762215, "functions_per_token": 0.009771986970684038, "loc_per_token": 0.18241042345276873, "ccn_per_loc": 0.20535714285714285, "functions_per_loc": 0.05357142857142857, "tokens_per_loc": 5.482142857142857}, {"date": "2021-01", "loc": 124, "path": "test/ca/mcgill/cs/jetuml/persistence/TestJsonEncodingUseCaseDiagram.java", "comments": 27, "loc_per_function": 13.78, "blanks_per_loc": 0.24, "num_funs": 9, "comments_per_loc": 0.22, "tokens": 1153, "ccn": 9, "ccn_per_function": 1.0, "tokens_per_function": 128.11111111111111, "ccn_per_token": 0.007805724197745013, "functions_per_token": 0.007805724197745013, "loc_per_token": 0.10754553339115351, "ccn_per_loc": 0.07258064516129033, "functions_per_loc": 0.07258064516129033, "tokens_per_loc": 9.298387096774194}, {"date": "2021-01", "loc": 10, "path": "src/module-info.java", "comments": 20, "loc_per_function": 10.0, "blanks_per_loc": 0.0, "num_funs": 0, "comments_per_loc": 2.0, "tokens": 59, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 59, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.1694915254237288, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 5.9}, {"date": "2021-01", "loc": 77, "path": "src/ca/mcgill/cs/jetuml/JetUML.java", "comments": 33, "loc_per_function": 15.4, "blanks_per_loc": 0.19, "num_funs": 5, "comments_per_loc": 0.43, "tokens": 576, "ccn": 9, "ccn_per_function": 1.8, "tokens_per_function": 115.2, "ccn_per_token": 0.015625, "functions_per_token": 0.008680555555555556, "loc_per_token": 0.13368055555555555, "ccn_per_loc": 0.11688311688311688, "functions_per_loc": 0.06493506493506493, "tokens_per_loc": 7.48051948051948}, {"date": "2021-01", "loc": 58, "path": "src/ca/mcgill/cs/jetuml/geom/Dimension.java", "comments": 43, "loc_per_function": 8.29, "blanks_per_loc": 0.21, "num_funs": 7, "comments_per_loc": 0.74, "tokens": 271, "ccn": 13, "ccn_per_function": 1.8571428571428572, "tokens_per_function": 38.714285714285715, "ccn_per_token": 0.04797047970479705, "functions_per_token": 0.025830258302583026, "loc_per_token": 0.2140221402214022, "ccn_per_loc": 0.22413793103448276, "functions_per_loc": 0.1206896551724138, "tokens_per_loc": 4.672413793103448}, {"date": "2021-01", "loc": 70, "path": "src/ca/mcgill/cs/jetuml/geom/Point.java", "comments": 54, "loc_per_function": 7.0, "blanks_per_loc": 0.16, "num_funs": 10, "comments_per_loc": 0.77, "tokens": 283, "ccn": 14, "ccn_per_function": 1.4, "tokens_per_function": 28.3, "ccn_per_token": 0.04946996466431095, "functions_per_token": 0.0353356890459364, "loc_per_token": 0.24734982332155478, "ccn_per_loc": 0.2, "functions_per_loc": 0.14285714285714285, "tokens_per_loc": 4.042857142857143}, {"date": "2021-01", "loc": 164, "path": "src/ca/mcgill/cs/jetuml/geom/GeomUtils.java", "comments": 74, "loc_per_function": 20.5, "blanks_per_loc": 0.16, "num_funs": 8, "comments_per_loc": 0.45, "tokens": 1842, "ccn": 29, "ccn_per_function": 3.625, "tokens_per_function": 230.25, "ccn_per_token": 0.015743756786102063, "functions_per_token": 0.004343105320304018, "loc_per_token": 0.08903365906623235, "ccn_per_loc": 0.17682926829268292, "functions_per_loc": 0.04878048780487805, "tokens_per_loc": 11.231707317073171}, {"date": "2021-01", "loc": 72, "path": "src/ca/mcgill/cs/jetuml/geom/Direction.java", "comments": 81, "loc_per_function": 7.2, "blanks_per_loc": 0.29, "num_funs": 10, "comments_per_loc": 1.12, "tokens": 477, "ccn": 18, "ccn_per_function": 1.8, "tokens_per_function": 47.7, "ccn_per_token": 0.03773584905660377, "functions_per_token": 0.020964360587002098, "loc_per_token": 0.1509433962264151, "ccn_per_loc": 0.25, "functions_per_loc": 0.1388888888888889, "tokens_per_loc": 6.625}, {"date": "2021-01", "loc": 31, "path": "src/ca/mcgill/cs/jetuml/geom/Conversions.java", "comments": 45, "loc_per_function": 6.2, "blanks_per_loc": 0.19, "num_funs": 5, "comments_per_loc": 1.45, "tokens": 256, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 51.2, "ccn_per_token": 0.01953125, "functions_per_token": 0.01953125, "loc_per_token": 0.12109375, "ccn_per_loc": 0.16129032258064516, "functions_per_loc": 0.16129032258064516, "tokens_per_loc": 8.258064516129032}, {"date": "2021-01", "loc": 50, "path": "src/ca/mcgill/cs/jetuml/geom/Line.java", "comments": 52, "loc_per_function": 5.56, "blanks_per_loc": 0.26, "num_funs": 9, "comments_per_loc": 1.04, "tokens": 242, "ccn": 10, "ccn_per_function": 1.1111111111111112, "tokens_per_function": 26.88888888888889, "ccn_per_token": 0.04132231404958678, "functions_per_token": 0.0371900826446281, "loc_per_token": 0.2066115702479339, "ccn_per_loc": 0.2, "functions_per_loc": 0.18, "tokens_per_loc": 4.84}, {"date": "2021-01", "loc": 137, "path": "src/ca/mcgill/cs/jetuml/geom/Rectangle.java", "comments": 83, "loc_per_function": 8.06, "blanks_per_loc": 0.14, "num_funs": 17, "comments_per_loc": 0.61, "tokens": 741, "ccn": 34, "ccn_per_function": 2.0, "tokens_per_function": 43.588235294117645, "ccn_per_token": 0.04588394062078273, "functions_per_token": 0.022941970310391364, "loc_per_token": 0.18488529014844804, "ccn_per_loc": 0.24817518248175183, "functions_per_loc": 0.12408759124087591, "tokens_per_loc": 5.408759124087592}, {"date": "2021-01", "loc": 12, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/ObjectCollaborationEdgeViewer.java", "comments": 26, "loc_per_function": 12.0, "blanks_per_loc": 0.17, "num_funs": 1, "comments_per_loc": 2.17, "tokens": 92, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 92.0, "ccn_per_token": 0.010869565217391304, "functions_per_token": 0.010869565217391304, "loc_per_token": 0.13043478260869565, "ccn_per_loc": 0.08333333333333333, "functions_per_loc": 0.08333333333333333, "tokens_per_loc": 7.666666666666667}, {"date": "2021-01", "loc": 220, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/SegmentedEdgeViewer.java", "comments": 56, "loc_per_function": 20.0, "blanks_per_loc": 0.08, "num_funs": 11, "comments_per_loc": 0.25, "tokens": 1944, "ccn": 26, "ccn_per_function": 2.3636363636363638, "tokens_per_function": 176.72727272727272, "ccn_per_token": 0.013374485596707819, "functions_per_token": 0.00565843621399177, "loc_per_token": 0.11316872427983539, "ccn_per_loc": 0.11818181818181818, "functions_per_loc": 0.05, "tokens_per_loc": 8.836363636363636}, {"date": "2021-01", "loc": 31, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/UseCaseDependencyEdgeViewer.java", "comments": 27, "loc_per_function": 10.33, "blanks_per_loc": 0.13, "num_funs": 3, "comments_per_loc": 0.87, "tokens": 294, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 98.0, "ccn_per_token": 0.01020408163265306, "functions_per_token": 0.01020408163265306, "loc_per_token": 0.1054421768707483, "ccn_per_loc": 0.0967741935483871, "functions_per_loc": 0.0967741935483871, "tokens_per_loc": 9.483870967741936}, {"date": "2021-01", "loc": 74, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/EdgeViewerRegistry.java", "comments": 68, "loc_per_function": 9.25, "blanks_per_loc": 0.16, "num_funs": 8, "comments_per_loc": 0.92, "tokens": 728, "ccn": 9, "ccn_per_function": 1.125, "tokens_per_function": 91.0, "ccn_per_token": 0.012362637362637362, "functions_per_token": 0.01098901098901099, "loc_per_token": 0.10164835164835165, "ccn_per_loc": 0.12162162162162163, "functions_per_loc": 0.10810810810810811, "tokens_per_loc": 9.837837837837839}, {"date": "2021-01", "loc": 10, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/UseCaseGeneralizationEdgeViewer.java", "comments": 26, "loc_per_function": 10.0, "blanks_per_loc": 0.2, "num_funs": 1, "comments_per_loc": 2.6, "tokens": 64, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 64.0, "ccn_per_token": 0.015625, "functions_per_token": 0.015625, "loc_per_token": 0.15625, "ccn_per_loc": 0.1, "functions_per_loc": 0.1, "tokens_per_loc": 6.4}, {"date": "2021-01", "loc": 10, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/NoteEdgeViewer.java", "comments": 26, "loc_per_function": 10.0, "blanks_per_loc": 0.2, "num_funs": 1, "comments_per_loc": 2.6, "tokens": 64, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 64.0, "ccn_per_token": 0.015625, "functions_per_token": 0.015625, "loc_per_token": 0.15625, "ccn_per_loc": 0.1, "functions_per_loc": 0.1, "tokens_per_loc": 6.4}, {"date": "2021-01", "loc": 55, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/ReturnEdgeViewer.java", "comments": 27, "loc_per_function": 18.33, "blanks_per_loc": 0.09, "num_funs": 3, "comments_per_loc": 0.49, "tokens": 579, "ccn": 5, "ccn_per_function": 1.6666666666666667, "tokens_per_function": 193.0, "ccn_per_token": 0.008635578583765112, "functions_per_token": 0.0051813471502590676, "loc_per_token": 0.09499136442141623, "ccn_per_loc": 0.09090909090909091, "functions_per_loc": 0.05454545454545454, "tokens_per_loc": 10.527272727272727}, {"date": "2021-01", "loc": 54, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/StraightEdgeViewer.java", "comments": 32, "loc_per_function": 13.5, "blanks_per_loc": 0.11, "num_funs": 4, "comments_per_loc": 0.59, "tokens": 456, "ccn": 5, "ccn_per_function": 1.25, "tokens_per_function": 114.0, "ccn_per_token": 0.010964912280701754, "functions_per_token": 0.008771929824561403, "loc_per_token": 0.11842105263157894, "ccn_per_loc": 0.09259259259259259, "functions_per_loc": 0.07407407407407407, "tokens_per_loc": 8.444444444444445}, {"date": "2021-01", "loc": 53, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/LabeledStraightEdgeViewer.java", "comments": 30, "loc_per_function": 13.25, "blanks_per_loc": 0.15, "num_funs": 4, "comments_per_loc": 0.57, "tokens": 452, "ccn": 7, "ccn_per_function": 1.75, "tokens_per_function": 113.0, "ccn_per_token": 0.015486725663716814, "functions_per_token": 0.008849557522123894, "loc_per_token": 0.1172566371681416, "ccn_per_loc": 0.1320754716981132, "functions_per_loc": 0.07547169811320754, "tokens_per_loc": 8.528301886792454}, {"date": "2021-01", "loc": 177, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/CallEdgeViewer.java", "comments": 26, "loc_per_function": 19.67, "blanks_per_loc": 0.09, "num_funs": 9, "comments_per_loc": 0.15, "tokens": 1553, "ccn": 19, "ccn_per_function": 2.111111111111111, "tokens_per_function": 172.55555555555554, "ccn_per_token": 0.012234385061171926, "functions_per_token": 0.005795235028976175, "loc_per_token": 0.11397295556986478, "ccn_per_loc": 0.10734463276836158, "functions_per_loc": 0.05084745762711865, "tokens_per_loc": 8.774011299435028}, {"date": "2021-01", "loc": 26, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/GeneralizationEdgeViewer.java", "comments": 29, "loc_per_function": 13.0, "blanks_per_loc": 0.12, "num_funs": 2, "comments_per_loc": 1.12, "tokens": 165, "ccn": 3, "ccn_per_function": 1.5, "tokens_per_function": 82.5, "ccn_per_token": 0.01818181818181818, "functions_per_token": 0.012121212121212121, "loc_per_token": 0.15757575757575756, "ccn_per_loc": 0.11538461538461539, "functions_per_loc": 0.07692307692307693, "tokens_per_loc": 6.346153846153846}, {"date": "2021-01", "loc": 40, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/AssociationEdgeViewer.java", "comments": 32, "loc_per_function": 13.33, "blanks_per_loc": 0.1, "num_funs": 3, "comments_per_loc": 0.8, "tokens": 243, "ccn": 6, "ccn_per_function": 2.0, "tokens_per_function": 81.0, "ccn_per_token": 0.024691358024691357, "functions_per_token": 0.012345679012345678, "loc_per_token": 0.1646090534979424, "ccn_per_loc": 0.15, "functions_per_loc": 0.075, "tokens_per_loc": 6.075}, {"date": "2021-01", "loc": 570, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/SegmentationStyleFactory.java", "comments": 95, "loc_per_function": 17.27, "blanks_per_loc": 0.1, "num_funs": 33, "comments_per_loc": 0.17, "tokens": 3842, "ccn": 120, "ccn_per_function": 3.6363636363636362, "tokens_per_function": 116.42424242424242, "ccn_per_token": 0.031233732431025507, "functions_per_token": 0.008589276418532014, "loc_per_token": 0.14836022904737117, "ccn_per_loc": 0.21052631578947367, "functions_per_loc": 0.05789473684210526, "tokens_per_loc": 6.7403508771929825}, {"date": "2021-01", "loc": 72, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/AbstractEdgeViewer.java", "comments": 44, "loc_per_function": 12.0, "blanks_per_loc": 0.14, "num_funs": 6, "comments_per_loc": 0.61, "tokens": 631, "ccn": 8, "ccn_per_function": 1.3333333333333333, "tokens_per_function": 105.16666666666667, "ccn_per_token": 0.012678288431061807, "functions_per_token": 0.009508716323296355, "loc_per_token": 0.11410459587955626, "ccn_per_loc": 0.1111111111111111, "functions_per_loc": 0.08333333333333333, "tokens_per_loc": 8.76388888888889}, {"date": "2021-01", "loc": 114, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/ObjectReferenceEdgeViewer.java", "comments": 27, "loc_per_function": 16.29, "blanks_per_loc": 0.12, "num_funs": 7, "comments_per_loc": 0.24, "tokens": 1045, "ccn": 10, "ccn_per_function": 1.4285714285714286, "tokens_per_function": 149.28571428571428, "ccn_per_token": 0.009569377990430622, "functions_per_token": 0.0066985645933014355, "loc_per_token": 0.10909090909090909, "ccn_per_loc": 0.08771929824561403, "functions_per_loc": 0.06140350877192982, "tokens_per_loc": 9.166666666666666}, {"date": "2021-01", "loc": 48, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/SegmentationStyle.java", "comments": 49, "loc_per_function": 16.0, "blanks_per_loc": 0.19, "num_funs": 3, "comments_per_loc": 1.02, "tokens": 207, "ccn": 12, "ccn_per_function": 4.0, "tokens_per_function": 69.0, "ccn_per_token": 0.057971014492753624, "functions_per_token": 0.014492753623188406, "loc_per_token": 0.2318840579710145, "ccn_per_loc": 0.25, "functions_per_loc": 0.0625, "tokens_per_loc": 4.3125}, {"date": "2021-01", "loc": 357, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/StateTransitionEdgeViewer.java", "comments": 62, "loc_per_function": 17.0, "blanks_per_loc": 0.1, "num_funs": 21, "comments_per_loc": 0.17, "tokens": 2924, "ccn": 48, "ccn_per_function": 2.2857142857142856, "tokens_per_function": 139.23809523809524, "ccn_per_token": 0.016415868673050615, "functions_per_token": 0.007181942544459644, "loc_per_token": 0.12209302325581395, "ccn_per_loc": 0.13445378151260504, "functions_per_loc": 0.058823529411764705, "tokens_per_loc": 8.19047619047619}, {"date": "2021-01", "loc": 25, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/DependencyEdgeViewer.java", "comments": 26, "loc_per_function": 12.5, "blanks_per_loc": 0.12, "num_funs": 2, "comments_per_loc": 1.04, "tokens": 219, "ccn": 3, "ccn_per_function": 1.5, "tokens_per_function": 109.5, "ccn_per_token": 0.0136986301369863, "functions_per_token": 0.0091324200913242, "loc_per_token": 0.1141552511415525, "ccn_per_loc": 0.12, "functions_per_loc": 0.08, "tokens_per_loc": 8.76}, {"date": "2021-01", "loc": 10, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/UseCaseAssociationEdgeViewer.java", "comments": 26, "loc_per_function": 10.0, "blanks_per_loc": 0.2, "num_funs": 1, "comments_per_loc": 2.6, "tokens": 64, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 64.0, "ccn_per_token": 0.015625, "functions_per_token": 0.015625, "loc_per_token": 0.15625, "ccn_per_loc": 0.1, "functions_per_loc": 0.1, "tokens_per_loc": 6.4}, {"date": "2021-01", "loc": 16, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/EdgeViewer.java", "comments": 63, "loc_per_function": 16.0, "blanks_per_loc": 0.44, "num_funs": 0, "comments_per_loc": 3.94, "tokens": 139, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 139, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.11510791366906475, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 8.6875}, {"date": "2021-01", "loc": 27, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/AggregationEdgeViewer.java", "comments": 29, "loc_per_function": 13.5, "blanks_per_loc": 0.11, "num_funs": 2, "comments_per_loc": 1.07, "tokens": 192, "ccn": 3, "ccn_per_function": 1.5, "tokens_per_function": 96.0, "ccn_per_token": 0.015625, "functions_per_token": 0.010416666666666666, "loc_per_token": 0.140625, "ccn_per_loc": 0.1111111111111111, "functions_per_loc": 0.07407407407407407, "tokens_per_loc": 7.111111111111111}, {"date": "2021-01", "loc": 9, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/InterfaceNodeViewer.java", "comments": 30, "loc_per_function": 9.0, "blanks_per_loc": 0.22, "num_funs": 1, "comments_per_loc": 3.33, "tokens": 54, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 54.0, "ccn_per_token": 0.018518518518518517, "functions_per_token": 0.018518518518518517, "loc_per_token": 0.16666666666666666, "ccn_per_loc": 0.1111111111111111, "functions_per_loc": 0.1111111111111111, "tokens_per_loc": 6.0}, {"date": "2021-01", "loc": 62, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/NoteNodeViewer.java", "comments": 27, "loc_per_function": 15.5, "blanks_per_loc": 0.1, "num_funs": 4, "comments_per_loc": 0.44, "tokens": 667, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 166.75, "ccn_per_token": 0.005997001499250375, "functions_per_token": 0.005997001499250375, "loc_per_token": 0.09295352323838081, "ccn_per_loc": 0.06451612903225806, "functions_per_loc": 0.06451612903225806, "tokens_per_loc": 10.758064516129032}, {"date": "2021-01", "loc": 130, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/ImplicitParameterNodeViewer.java", "comments": 39, "loc_per_function": 14.44, "blanks_per_loc": 0.1, "num_funs": 9, "comments_per_loc": 0.3, "tokens": 1083, "ccn": 18, "ccn_per_function": 2.0, "tokens_per_function": 120.33333333333333, "ccn_per_token": 0.01662049861495845, "functions_per_token": 0.008310249307479225, "loc_per_token": 0.12003693444136658, "ccn_per_loc": 0.13846153846153847, "functions_per_loc": 0.06923076923076923, "tokens_per_loc": 8.330769230769231}, {"date": "2021-01", "loc": 64, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/PackageNodeViewer.java", "comments": 30, "loc_per_function": 16.0, "blanks_per_loc": 0.19, "num_funs": 4, "comments_per_loc": 0.47, "tokens": 525, "ccn": 9, "ccn_per_function": 2.25, "tokens_per_function": 131.25, "ccn_per_token": 0.017142857142857144, "functions_per_token": 0.007619047619047619, "loc_per_token": 0.1219047619047619, "ccn_per_loc": 0.140625, "functions_per_loc": 0.0625, "tokens_per_loc": 8.203125}, {"date": "2021-01", "loc": 90, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/ObjectNodeViewer.java", "comments": 32, "loc_per_function": 18.0, "blanks_per_loc": 0.08, "num_funs": 5, "comments_per_loc": 0.36, "tokens": 827, "ccn": 11, "ccn_per_function": 2.2, "tokens_per_function": 165.4, "ccn_per_token": 0.013301088270858524, "functions_per_token": 0.006045949214026602, "loc_per_token": 0.10882708585247884, "ccn_per_loc": 0.12222222222222222, "functions_per_loc": 0.05555555555555555, "tokens_per_loc": 9.188888888888888}, {"date": "2021-01", "loc": 70, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/AbstractNodeViewer.java", "comments": 33, "loc_per_function": 14.0, "blanks_per_loc": 0.11, "num_funs": 5, "comments_per_loc": 0.47, "tokens": 582, "ccn": 9, "ccn_per_function": 1.8, "tokens_per_function": 116.4, "ccn_per_token": 0.015463917525773196, "functions_per_token": 0.00859106529209622, "loc_per_token": 0.12027491408934708, "ccn_per_loc": 0.12857142857142856, "functions_per_loc": 0.07142857142857142, "tokens_per_loc": 8.314285714285715}, {"date": "2021-01", "loc": 42, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/PackageDescriptionNodeViewer.java", "comments": 26, "loc_per_function": 14.0, "blanks_per_loc": 0.19, "num_funs": 3, "comments_per_loc": 0.62, "tokens": 444, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 148.0, "ccn_per_token": 0.006756756756756757, "functions_per_token": 0.006756756756756757, "loc_per_token": 0.0945945945945946, "ccn_per_loc": 0.07142857142857142, "functions_per_loc": 0.07142857142857142, "tokens_per_loc": 10.571428571428571}, {"date": "2021-01", "loc": 40, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/UseCaseNodeViewer.java", "comments": 23, "loc_per_function": 13.33, "blanks_per_loc": 0.12, "num_funs": 3, "comments_per_loc": 0.57, "tokens": 419, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 139.66666666666666, "ccn_per_token": 0.007159904534606206, "functions_per_token": 0.007159904534606206, "loc_per_token": 0.0954653937947494, "ccn_per_loc": 0.075, "functions_per_loc": 0.075, "tokens_per_loc": 10.475}, {"date": "2021-01", "loc": 111, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/TypeNodeViewer.java", "comments": 34, "loc_per_function": 13.88, "blanks_per_loc": 0.12, "num_funs": 8, "comments_per_loc": 0.31, "tokens": 967, "ccn": 15, "ccn_per_function": 1.875, "tokens_per_function": 120.875, "ccn_per_token": 0.015511892450879007, "functions_per_token": 0.008273009307135471, "loc_per_token": 0.11478800413650465, "ccn_per_loc": 0.13513513513513514, "functions_per_loc": 0.07207207207207207, "tokens_per_loc": 8.711711711711711}, {"date": "2021-01", "loc": 82, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/AbstractPackageNodeViewer.java", "comments": 33, "loc_per_function": 13.67, "blanks_per_loc": 0.15, "num_funs": 6, "comments_per_loc": 0.4, "tokens": 718, "ccn": 9, "ccn_per_function": 1.5, "tokens_per_function": 119.66666666666667, "ccn_per_token": 0.012534818941504178, "functions_per_token": 0.008356545961002786, "loc_per_token": 0.11420612813370473, "ccn_per_loc": 0.10975609756097561, "functions_per_loc": 0.07317073170731707, "tokens_per_loc": 8.75609756097561}, {"date": "2021-01", "loc": 16, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/NodeViewer.java", "comments": 66, "loc_per_function": 16.0, "blanks_per_loc": 0.44, "num_funs": 0, "comments_per_loc": 4.12, "tokens": 142, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 142, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.11267605633802817, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 8.875}, {"date": "2021-01", "loc": 44, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/CircularStateNodeViewer.java", "comments": 26, "loc_per_function": 11.0, "blanks_per_loc": 0.14, "num_funs": 4, "comments_per_loc": 0.59, "tokens": 337, "ccn": 5, "ccn_per_function": 1.25, "tokens_per_function": 84.25, "ccn_per_token": 0.01483679525222552, "functions_per_token": 0.011869436201780416, "loc_per_token": 0.13056379821958458, "ccn_per_loc": 0.11363636363636363, "functions_per_loc": 0.09090909090909091, "tokens_per_loc": 7.659090909090909}, {"date": "2021-01", "loc": 38, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/StateNodeViewer.java", "comments": 23, "loc_per_function": 12.67, "blanks_per_loc": 0.13, "num_funs": 3, "comments_per_loc": 0.61, "tokens": 374, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 124.66666666666667, "ccn_per_token": 0.008021390374331552, "functions_per_token": 0.008021390374331552, "loc_per_token": 0.10160427807486631, "ccn_per_loc": 0.07894736842105263, "functions_per_loc": 0.07894736842105263, "tokens_per_loc": 9.842105263157896}, {"date": "2021-01", "loc": 168, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/CallNodeViewer.java", "comments": 37, "loc_per_function": 18.67, "blanks_per_loc": 0.07, "num_funs": 9, "comments_per_loc": 0.22, "tokens": 1148, "ccn": 26, "ccn_per_function": 2.888888888888889, "tokens_per_function": 127.55555555555556, "ccn_per_token": 0.02264808362369338, "functions_per_token": 0.0078397212543554, "loc_per_token": 0.14634146341463414, "ccn_per_loc": 0.15476190476190477, "functions_per_loc": 0.05357142857142857, "tokens_per_loc": 6.833333333333333}, {"date": "2021-01", "loc": 76, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/NodeViewerRegistry.java", "comments": 69, "loc_per_function": 9.5, "blanks_per_loc": 0.16, "num_funs": 8, "comments_per_loc": 0.91, "tokens": 764, "ccn": 9, "ccn_per_function": 1.125, "tokens_per_function": 95.5, "ccn_per_token": 0.011780104712041885, "functions_per_token": 0.010471204188481676, "loc_per_token": 0.09947643979057591, "ccn_per_loc": 0.11842105263157894, "functions_per_loc": 0.10526315789473684, "tokens_per_loc": 10.052631578947368}, {"date": "2021-01", "loc": 108, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/FieldNodeViewer.java", "comments": 38, "loc_per_function": 13.5, "blanks_per_loc": 0.09, "num_funs": 8, "comments_per_loc": 0.35, "tokens": 1036, "ccn": 11, "ccn_per_function": 1.375, "tokens_per_function": 129.5, "ccn_per_token": 0.010617760617760617, "functions_per_token": 0.007722007722007722, "loc_per_token": 0.10424710424710425, "ccn_per_loc": 0.10185185185185185, "functions_per_loc": 0.07407407407407407, "tokens_per_loc": 9.592592592592593}, {"date": "2021-01", "loc": 72, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/ActorNodeViewer.java", "comments": 23, "loc_per_function": 24.0, "blanks_per_loc": 0.11, "num_funs": 3, "comments_per_loc": 0.32, "tokens": 770, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 256.6666666666667, "ccn_per_token": 0.003896103896103896, "functions_per_token": 0.003896103896103896, "loc_per_token": 0.09350649350649351, "ccn_per_loc": 0.041666666666666664, "functions_per_loc": 0.041666666666666664, "tokens_per_loc": 10.694444444444445}, {"date": "2021-01", "loc": 29, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/PointNodeViewer.java", "comments": 24, "loc_per_function": 7.25, "blanks_per_loc": 0.21, "num_funs": 4, "comments_per_loc": 0.83, "tokens": 193, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 48.25, "ccn_per_token": 0.02072538860103627, "functions_per_token": 0.02072538860103627, "loc_per_token": 0.15025906735751296, "ccn_per_loc": 0.13793103448275862, "functions_per_loc": 0.13793103448275862, "tokens_per_loc": 6.655172413793103}, {"date": "2021-01", "loc": 55, "path": "src/ca/mcgill/cs/jetuml/views/SequenceDiagramViewer.java", "comments": 32, "loc_per_function": 27.5, "blanks_per_loc": 0.07, "num_funs": 2, "comments_per_loc": 0.58, "tokens": 321, "ccn": 12, "ccn_per_function": 6.0, "tokens_per_function": 160.5, "ccn_per_token": 0.037383177570093455, "functions_per_token": 0.006230529595015576, "loc_per_token": 0.17133956386292834, "ccn_per_loc": 0.21818181818181817, "functions_per_loc": 0.03636363636363636, "tokens_per_loc": 5.836363636363636}, {"date": "2021-01", "loc": 117, "path": "src/ca/mcgill/cs/jetuml/views/DiagramViewer.java", "comments": 75, "loc_per_function": 16.71, "blanks_per_loc": 0.09, "num_funs": 7, "comments_per_loc": 0.64, "tokens": 694, "ccn": 26, "ccn_per_function": 3.7142857142857144, "tokens_per_function": 99.14285714285714, "ccn_per_token": 0.037463976945244955, "functions_per_token": 0.010086455331412104, "loc_per_token": 0.1685878962536023, "ccn_per_loc": 0.2222222222222222, "functions_per_loc": 0.05982905982905983, "tokens_per_loc": 5.931623931623932}, {"date": "2021-01", "loc": 179, "path": "src/ca/mcgill/cs/jetuml/views/StringViewer.java", "comments": 52, "loc_per_function": 12.79, "blanks_per_loc": 0.18, "num_funs": 14, "comments_per_loc": 0.29, "tokens": 1114, "ccn": 40, "ccn_per_function": 2.857142857142857, "tokens_per_function": 79.57142857142857, "ccn_per_token": 0.03590664272890485, "functions_per_token": 0.012567324955116697, "loc_per_token": 0.1606822262118492, "ccn_per_loc": 0.22346368715083798, "functions_per_loc": 0.0782122905027933, "tokens_per_loc": 6.223463687150838}, {"date": "2021-01", "loc": 10, "path": "src/ca/mcgill/cs/jetuml/views/ArrowHead.java", "comments": 26, "loc_per_function": 10.0, "blanks_per_loc": 0.4, "num_funs": 1, "comments_per_loc": 2.6, "tokens": 51, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 51.0, "ccn_per_token": 0.0196078431372549, "functions_per_token": 0.0196078431372549, "loc_per_token": 0.19607843137254902, "ccn_per_loc": 0.1, "functions_per_loc": 0.1, "tokens_per_loc": 5.1}, {"date": "2021-01", "loc": 32, "path": "src/ca/mcgill/cs/jetuml/views/ImageCreator.java", "comments": 30, "loc_per_function": 16.0, "blanks_per_loc": 0.12, "num_funs": 2, "comments_per_loc": 0.94, "tokens": 283, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 141.5, "ccn_per_token": 0.007067137809187279, "functions_per_token": 0.007067137809187279, "loc_per_token": 0.11307420494699646, "ccn_per_loc": 0.0625, "functions_per_loc": 0.0625, "tokens_per_loc": 8.84375}, {"date": "2021-01", "loc": 110, "path": "src/ca/mcgill/cs/jetuml/views/ToolGraphics.java", "comments": 91, "loc_per_function": 11.0, "blanks_per_loc": 0.12, "num_funs": 10, "comments_per_loc": 0.83, "tokens": 1069, "ccn": 15, "ccn_per_function": 1.5, "tokens_per_function": 106.9, "ccn_per_token": 0.01403180542563143, "functions_per_token": 0.009354536950420954, "loc_per_token": 0.1028999064546305, "ccn_per_loc": 0.13636363636363635, "functions_per_loc": 0.09090909090909091, "tokens_per_loc": 9.718181818181819}, {"date": "2021-01", "loc": 25, "path": "src/ca/mcgill/cs/jetuml/views/FontMetrics.java", "comments": 52, "loc_per_function": 12.5, "blanks_per_loc": 0.32, "num_funs": 2, "comments_per_loc": 2.08, "tokens": 178, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 89.0, "ccn_per_token": 0.011235955056179775, "functions_per_token": 0.011235955056179775, "loc_per_token": 0.1404494382022472, "ccn_per_loc": 0.08, "functions_per_loc": 0.08, "tokens_per_loc": 7.12}, {"date": "2021-01", "loc": 76, "path": "src/ca/mcgill/cs/jetuml/views/Grid.java", "comments": 56, "loc_per_function": 12.67, "blanks_per_loc": 0.14, "num_funs": 6, "comments_per_loc": 0.74, "tokens": 575, "ccn": 10, "ccn_per_function": 1.6666666666666667, "tokens_per_function": 95.83333333333333, "ccn_per_token": 0.017391304347826087, "functions_per_token": 0.010434782608695653, "loc_per_token": 0.13217391304347825, "ccn_per_loc": 0.13157894736842105, "functions_per_loc": 0.07894736842105263, "tokens_per_loc": 7.565789473684211}, {"date": "2021-01", "loc": 78, "path": "src/ca/mcgill/cs/jetuml/views/ViewUtils.java", "comments": 94, "loc_per_function": 9.75, "blanks_per_loc": 0.13, "num_funs": 8, "comments_per_loc": 1.21, "tokens": 790, "ccn": 14, "ccn_per_function": 1.75, "tokens_per_function": 98.75, "ccn_per_token": 0.017721518987341773, "functions_per_token": 0.010126582278481013, "loc_per_token": 0.09873417721518987, "ccn_per_loc": 0.1794871794871795, "functions_per_loc": 0.10256410256410256, "tokens_per_loc": 10.128205128205128}, {"date": "2021-01", "loc": 52, "path": "src/ca/mcgill/cs/jetuml/views/ViewerUtilities.java", "comments": 46, "loc_per_function": 13.0, "blanks_per_loc": 0.1, "num_funs": 4, "comments_per_loc": 0.88, "tokens": 291, "ccn": 8, "ccn_per_function": 2.0, "tokens_per_function": 72.75, "ccn_per_token": 0.027491408934707903, "functions_per_token": 0.013745704467353952, "loc_per_token": 0.17869415807560138, "ccn_per_loc": 0.15384615384615385, "functions_per_loc": 0.07692307692307693, "tokens_per_loc": 5.596153846153846}, {"date": "2021-01", "loc": 14, "path": "src/ca/mcgill/cs/jetuml/views/LineStyle.java", "comments": 27, "loc_per_function": 7.0, "blanks_per_loc": 0.36, "num_funs": 2, "comments_per_loc": 1.93, "tokens": 71, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 35.5, "ccn_per_token": 0.028169014084507043, "functions_per_token": 0.028169014084507043, "loc_per_token": 0.19718309859154928, "ccn_per_loc": 0.14285714285714285, "functions_per_loc": 0.14285714285714285, "tokens_per_loc": 5.071428571428571}, {"date": "2021-01", "loc": 74, "path": "src/ca/mcgill/cs/jetuml/views/ArrowHeadView.java", "comments": 40, "loc_per_function": 24.67, "blanks_per_loc": 0.14, "num_funs": 3, "comments_per_loc": 0.54, "tokens": 741, "ccn": 11, "ccn_per_function": 3.6666666666666665, "tokens_per_function": 247.0, "ccn_per_token": 0.014844804318488529, "functions_per_token": 0.004048582995951417, "loc_per_token": 0.09986504723346828, "ccn_per_loc": 0.14864864864864866, "functions_per_loc": 0.04054054054054054, "tokens_per_loc": 10.013513513513514}, {"date": "2021-01", "loc": 35, "path": "src/ca/mcgill/cs/jetuml/diagram/Property.java", "comments": 53, "loc_per_function": 7.0, "blanks_per_loc": 0.2, "num_funs": 5, "comments_per_loc": 1.51, "tokens": 167, "ccn": 7, "ccn_per_function": 1.4, "tokens_per_function": 33.4, "ccn_per_token": 0.041916167664670656, "functions_per_token": 0.029940119760479042, "loc_per_token": 0.20958083832335328, "ccn_per_loc": 0.2, "functions_per_loc": 0.14285714285714285, "tokens_per_loc": 4.771428571428571}, {"date": "2021-01", "loc": 32, "path": "src/ca/mcgill/cs/jetuml/diagram/AbstractDiagramElement.java", "comments": 38, "loc_per_function": 8.0, "blanks_per_loc": 0.16, "num_funs": 4, "comments_per_loc": 1.19, "tokens": 103, "ccn": 5, "ccn_per_function": 1.25, "tokens_per_function": 25.75, "ccn_per_token": 0.04854368932038835, "functions_per_token": 0.038834951456310676, "loc_per_token": 0.3106796116504854, "ccn_per_loc": 0.15625, "functions_per_loc": 0.125, "tokens_per_loc": 3.21875}, {"date": "2021-01", "loc": 64, "path": "src/ca/mcgill/cs/jetuml/diagram/Properties.java", "comments": 71, "loc_per_function": 10.67, "blanks_per_loc": 0.12, "num_funs": 6, "comments_per_loc": 1.11, "tokens": 382, "ccn": 18, "ccn_per_function": 3.0, "tokens_per_function": 63.666666666666664, "ccn_per_token": 0.04712041884816754, "functions_per_token": 0.015706806282722512, "loc_per_token": 0.16753926701570682, "ccn_per_loc": 0.28125, "functions_per_loc": 0.09375, "tokens_per_loc": 5.96875}, {"date": "2021-01", "loc": 200, "path": "src/ca/mcgill/cs/jetuml/diagram/Diagram.java", "comments": 135, "loc_per_function": 8.7, "blanks_per_loc": 0.14, "num_funs": 23, "comments_per_loc": 0.68, "tokens": 1079, "ccn": 51, "ccn_per_function": 2.217391304347826, "tokens_per_function": 46.91304347826087, "ccn_per_token": 0.047265987025023166, "functions_per_token": 0.021316033364226137, "loc_per_token": 0.18535681186283595, "ccn_per_loc": 0.255, "functions_per_loc": 0.115, "tokens_per_loc": 5.395}, {"date": "2021-01", "loc": 99, "path": "src/ca/mcgill/cs/jetuml/diagram/Prototypes.java", "comments": 32, "loc_per_function": 24.75, "blanks_per_loc": 0.14, "num_funs": 4, "comments_per_loc": 0.32, "tokens": 1080, "ccn": 7, "ccn_per_function": 1.75, "tokens_per_function": 270.0, "ccn_per_token": 0.006481481481481481, "functions_per_token": 0.003703703703703704, "loc_per_token": 0.09166666666666666, "ccn_per_loc": 0.0707070707070707, "functions_per_loc": 0.04040404040404041, "tokens_per_loc": 10.909090909090908}, {"date": "2021-01", "loc": 7, "path": "src/ca/mcgill/cs/jetuml/diagram/DiagramData.java", "comments": 31, "loc_per_function": 7.0, "blanks_per_loc": 0.43, "num_funs": 0, "comments_per_loc": 4.43, "tokens": 39, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 39, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.1794871794871795, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 5.571428571428571}, {"date": "2021-01", "loc": 135, "path": "src/ca/mcgill/cs/jetuml/diagram/DiagramType.java", "comments": 62, "loc_per_function": 16.88, "blanks_per_loc": 0.13, "num_funs": 8, "comments_per_loc": 0.46, "tokens": 684, "ccn": 10, "ccn_per_function": 1.25, "tokens_per_function": 85.5, "ccn_per_token": 0.014619883040935672, "functions_per_token": 0.011695906432748537, "loc_per_token": 0.19736842105263158, "ccn_per_loc": 0.07407407407407407, "functions_per_loc": 0.05925925925925926, "tokens_per_loc": 5.066666666666666}, {"date": "2021-01", "loc": 334, "path": "src/ca/mcgill/cs/jetuml/diagram/ControlFlow.java", "comments": 124, "loc_per_function": 14.52, "blanks_per_loc": 0.09, "num_funs": 23, "comments_per_loc": 0.37, "tokens": 2141, "ccn": 95, "ccn_per_function": 4.130434782608695, "tokens_per_function": 93.08695652173913, "ccn_per_token": 0.044371788883699206, "functions_per_token": 0.010742643624474545, "loc_per_token": 0.15600186828584772, "ccn_per_loc": 0.2844311377245509, "functions_per_loc": 0.0688622754491018, "tokens_per_loc": 6.410179640718563}, {"date": "2021-01", "loc": 25, "path": "src/ca/mcgill/cs/jetuml/diagram/Node.java", "comments": 134, "loc_per_function": 25.0, "blanks_per_loc": 0.84, "num_funs": 0, "comments_per_loc": 5.36, "tokens": 163, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 163, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.15337423312883436, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 6.52}, {"date": "2021-01", "loc": 9, "path": "src/ca/mcgill/cs/jetuml/diagram/Edge.java", "comments": 44, "loc_per_function": 9.0, "blanks_per_loc": 0.78, "num_funs": 0, "comments_per_loc": 4.89, "tokens": 51, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 51, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.17647058823529413, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 5.666666666666667}, {"date": "2021-01", "loc": 5, "path": "src/ca/mcgill/cs/jetuml/diagram/DiagramElement.java", "comments": 26, "loc_per_function": 5.0, "blanks_per_loc": 0.2, "num_funs": 0, "comments_per_loc": 5.2, "tokens": 23, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 23, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.21739130434782608, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 4.6}, {"date": "2021-01", "loc": 22, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/AssociationEdge.java", "comments": 35, "loc_per_function": 7.33, "blanks_per_loc": 0.27, "num_funs": 3, "comments_per_loc": 1.59, "tokens": 105, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 35.0, "ccn_per_token": 0.02857142857142857, "functions_per_token": 0.02857142857142857, "loc_per_token": 0.20952380952380953, "ccn_per_loc": 0.13636363636363635, "functions_per_loc": 0.13636363636363635, "tokens_per_loc": 4.7727272727272725}, {"date": "2021-01", "loc": 29, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/ThreeLabelEdge.java", "comments": 35, "loc_per_function": 5.8, "blanks_per_loc": 0.21, "num_funs": 5, "comments_per_loc": 1.21, "tokens": 142, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 28.4, "ccn_per_token": 0.035211267605633804, "functions_per_token": 0.035211267605633804, "loc_per_token": 0.20422535211267606, "ccn_per_loc": 0.1724137931034483, "functions_per_loc": 0.1724137931034483, "tokens_per_loc": 4.896551724137931}, {"date": "2021-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/UseCaseGeneralizationEdge.java", "comments": 23, "loc_per_function": 3.0, "blanks_per_loc": 0.67, "num_funs": 0, "comments_per_loc": 7.67, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2021-01", "loc": 25, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/DependencyEdge.java", "comments": 35, "loc_per_function": 8.33, "blanks_per_loc": 0.2, "num_funs": 3, "comments_per_loc": 1.4, "tokens": 108, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 36.0, "ccn_per_token": 0.027777777777777776, "functions_per_token": 0.027777777777777776, "loc_per_token": 0.23148148148148148, "ccn_per_loc": 0.12, "functions_per_loc": 0.12, "tokens_per_loc": 4.32}, {"date": "2021-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/StateTransitionEdge.java", "comments": 25, "loc_per_function": 3.0, "blanks_per_loc": 0.67, "num_funs": 0, "comments_per_loc": 8.33, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2021-01", "loc": 27, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/CallEdge.java", "comments": 40, "loc_per_function": 5.4, "blanks_per_loc": 0.3, "num_funs": 5, "comments_per_loc": 1.48, "tokens": 141, "ccn": 6, "ccn_per_function": 1.2, "tokens_per_function": 28.2, "ccn_per_token": 0.0425531914893617, "functions_per_token": 0.03546099290780142, "loc_per_token": 0.19148936170212766, "ccn_per_loc": 0.2222222222222222, "functions_per_loc": 0.18518518518518517, "tokens_per_loc": 5.222222222222222}, {"date": "2021-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/ObjectCollaborationEdge.java", "comments": 24, "loc_per_function": 3.0, "blanks_per_loc": 0.33, "num_funs": 0, "comments_per_loc": 8.0, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2021-01", "loc": 50, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/AbstractEdge.java", "comments": 23, "loc_per_function": 8.33, "blanks_per_loc": 0.16, "num_funs": 6, "comments_per_loc": 0.46, "tokens": 238, "ccn": 9, "ccn_per_function": 1.5, "tokens_per_function": 39.666666666666664, "ccn_per_token": 0.037815126050420166, "functions_per_token": 0.025210084033613446, "loc_per_token": 0.21008403361344538, "ccn_per_loc": 0.18, "functions_per_loc": 0.12, "tokens_per_loc": 4.76}, {"date": "2021-01", "loc": 19, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/SingleLabelEdge.java", "comments": 31, "loc_per_function": 6.33, "blanks_per_loc": 0.21, "num_funs": 3, "comments_per_loc": 1.63, "tokens": 88, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 29.333333333333332, "ccn_per_token": 0.03409090909090909, "functions_per_token": 0.03409090909090909, "loc_per_token": 0.2159090909090909, "ccn_per_loc": 0.15789473684210525, "functions_per_loc": 0.15789473684210525, "tokens_per_loc": 4.631578947368421}, {"date": "2021-01", "loc": 27, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/AggregationEdge.java", "comments": 41, "loc_per_function": 5.4, "blanks_per_loc": 0.26, "num_funs": 5, "comments_per_loc": 1.52, "tokens": 121, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 24.2, "ccn_per_token": 0.04132231404958678, "functions_per_token": 0.04132231404958678, "loc_per_token": 0.2231404958677686, "ccn_per_loc": 0.18518518518518517, "functions_per_loc": 0.18518518518518517, "tokens_per_loc": 4.481481481481482}, {"date": "2021-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/NoteEdge.java", "comments": 23, "loc_per_function": 3.0, "blanks_per_loc": 0.67, "num_funs": 0, "comments_per_loc": 7.67, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2021-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/UseCaseAssociationEdge.java", "comments": 23, "loc_per_function": 3.0, "blanks_per_loc": 0.33, "num_funs": 0, "comments_per_loc": 7.67, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2021-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/ObjectReferenceEdge.java", "comments": 23, "loc_per_function": 3.0, "blanks_per_loc": 0.67, "num_funs": 0, "comments_per_loc": 7.67, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2021-01", "loc": 8, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/ConstructorEdge.java", "comments": 26, "loc_per_function": 8.0, "blanks_per_loc": 0.25, "num_funs": 1, "comments_per_loc": 3.25, "tokens": 34, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 34.0, "ccn_per_token": 0.029411764705882353, "functions_per_token": 0.029411764705882353, "loc_per_token": 0.23529411764705882, "ccn_per_loc": 0.125, "functions_per_loc": 0.125, "tokens_per_loc": 4.25}, {"date": "2021-01", "loc": 27, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/GeneralizationEdge.java", "comments": 42, "loc_per_function": 5.4, "blanks_per_loc": 0.26, "num_funs": 5, "comments_per_loc": 1.56, "tokens": 121, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 24.2, "ccn_per_token": 0.04132231404958678, "functions_per_token": 0.04132231404958678, "loc_per_token": 0.2231404958677686, "ccn_per_loc": 0.18518518518518517, "functions_per_loc": 0.18518518518518517, "tokens_per_loc": 4.481481481481482}, {"date": "2021-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/ReturnEdge.java", "comments": 23, "loc_per_function": 3.0, "blanks_per_loc": 0.67, "num_funs": 0, "comments_per_loc": 7.67, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2021-01", "loc": 30, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/UseCaseDependencyEdge.java", "comments": 37, "loc_per_function": 5.0, "blanks_per_loc": 0.3, "num_funs": 6, "comments_per_loc": 1.23, "tokens": 146, "ccn": 6, "ccn_per_function": 1.0, "tokens_per_function": 24.333333333333332, "ccn_per_token": 0.0410958904109589, "functions_per_token": 0.0410958904109589, "loc_per_token": 0.2054794520547945, "ccn_per_loc": 0.2, "functions_per_loc": 0.2, "tokens_per_loc": 4.866666666666666}, {"date": "2021-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/NoteNode.java", "comments": 24, "loc_per_function": 3.0, "blanks_per_loc": 0.67, "num_funs": 0, "comments_per_loc": 8.0, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2021-01", "loc": 24, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/ClassNode.java", "comments": 36, "loc_per_function": 6.0, "blanks_per_loc": 0.25, "num_funs": 4, "comments_per_loc": 1.5, "tokens": 106, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 26.5, "ccn_per_token": 0.03773584905660377, "functions_per_token": 0.03773584905660377, "loc_per_token": 0.22641509433962265, "ccn_per_loc": 0.16666666666666666, "functions_per_loc": 0.16666666666666666, "tokens_per_loc": 4.416666666666667}, {"date": "2021-01", "loc": 64, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/PackageNode.java", "comments": 24, "loc_per_function": 9.14, "blanks_per_loc": 0.17, "num_funs": 7, "comments_per_loc": 0.38, "tokens": 348, "ccn": 10, "ccn_per_function": 1.4285714285714286, "tokens_per_function": 49.714285714285715, "ccn_per_token": 0.028735632183908046, "functions_per_token": 0.020114942528735632, "loc_per_token": 0.1839080459770115, "ccn_per_loc": 0.15625, "functions_per_loc": 0.109375, "tokens_per_loc": 5.4375}, {"date": "2021-01", "loc": 122, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/AbstractNode.java", "comments": 25, "loc_per_function": 6.1, "blanks_per_loc": 0.2, "num_funs": 20, "comments_per_loc": 0.2, "tokens": 569, "ccn": 20, "ccn_per_function": 1.0, "tokens_per_function": 28.45, "ccn_per_token": 0.0351493848857645, "functions_per_token": 0.0351493848857645, "loc_per_token": 0.21441124780316345, "ccn_per_loc": 0.16393442622950818, "functions_per_loc": 0.16393442622950818, "tokens_per_loc": 4.663934426229508}, {"date": "2021-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/UseCaseNode.java", "comments": 23, "loc_per_function": 3.0, "blanks_per_loc": 0.67, "num_funs": 0, "comments_per_loc": 7.67, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2021-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/InterfaceNode.java", "comments": 23, "loc_per_function": 3.0, "blanks_per_loc": 0.67, "num_funs": 0, "comments_per_loc": 7.67, "tokens": 20, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 20, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.15, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 6.666666666666667}, {"date": "2021-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/FinalStateNode.java", "comments": 23, "loc_per_function": 3.0, "blanks_per_loc": 1.0, "num_funs": 0, "comments_per_loc": 7.67, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2021-01", "loc": 25, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/PackageDescriptionNode.java", "comments": 32, "loc_per_function": 6.25, "blanks_per_loc": 0.24, "num_funs": 4, "comments_per_loc": 1.28, "tokens": 112, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 28.0, "ccn_per_token": 0.03571428571428571, "functions_per_token": 0.03571428571428571, "loc_per_token": 0.22321428571428573, "ccn_per_loc": 0.16, "functions_per_loc": 0.16, "tokens_per_loc": 4.48}, {"date": "2021-01", "loc": 55, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/ImplicitParameterNode.java", "comments": 29, "loc_per_function": 9.17, "blanks_per_loc": 0.18, "num_funs": 6, "comments_per_loc": 0.53, "tokens": 278, "ccn": 8, "ccn_per_function": 1.3333333333333333, "tokens_per_function": 46.333333333333336, "ccn_per_token": 0.02877697841726619, "functions_per_token": 0.02158273381294964, "loc_per_token": 0.19784172661870503, "ccn_per_loc": 0.14545454545454545, "functions_per_loc": 0.10909090909090909, "tokens_per_loc": 5.054545454545455}, {"date": "2021-01", "loc": 56, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/CallNode.java", "comments": 42, "loc_per_function": 6.22, "blanks_per_loc": 0.25, "num_funs": 9, "comments_per_loc": 0.75, "tokens": 250, "ccn": 9, "ccn_per_function": 1.0, "tokens_per_function": 27.77777777777778, "ccn_per_token": 0.036, "functions_per_token": 0.036, "loc_per_token": 0.224, "ccn_per_loc": 0.16071428571428573, "functions_per_loc": 0.16071428571428573, "tokens_per_loc": 4.464285714285714}, {"date": "2021-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/StateNode.java", "comments": 23, "loc_per_function": 3.0, "blanks_per_loc": 0.67, "num_funs": 0, "comments_per_loc": 7.67, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2021-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/PointNode.java", "comments": 25, "loc_per_function": 3.0, "blanks_per_loc": 0.67, "num_funs": 0, "comments_per_loc": 8.33, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2021-01", "loc": 54, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/FieldNode.java", "comments": 34, "loc_per_function": 6.0, "blanks_per_loc": 0.26, "num_funs": 9, "comments_per_loc": 0.63, "tokens": 235, "ccn": 10, "ccn_per_function": 1.1111111111111112, "tokens_per_function": 26.11111111111111, "ccn_per_token": 0.0425531914893617, "functions_per_token": 0.03829787234042553, "loc_per_token": 0.2297872340425532, "ccn_per_loc": 0.18518518518518517, "functions_per_loc": 0.16666666666666666, "tokens_per_loc": 4.351851851851852}, {"date": "2021-01", "loc": 45, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/AbstractPackageNode.java", "comments": 32, "loc_per_function": 6.43, "blanks_per_loc": 0.24, "num_funs": 7, "comments_per_loc": 0.71, "tokens": 208, "ccn": 8, "ccn_per_function": 1.1428571428571428, "tokens_per_function": 29.714285714285715, "ccn_per_token": 0.038461538461538464, "functions_per_token": 0.03365384615384615, "loc_per_token": 0.21634615384615385, "ccn_per_loc": 0.17777777777777778, "functions_per_loc": 0.15555555555555556, "tokens_per_loc": 4.622222222222222}, {"date": "2021-01", "loc": 9, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/ActorNode.java", "comments": 26, "loc_per_function": 9.0, "blanks_per_loc": 0.33, "num_funs": 1, "comments_per_loc": 2.89, "tokens": 40, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 40.0, "ccn_per_token": 0.025, "functions_per_token": 0.025, "loc_per_token": 0.225, "ccn_per_loc": 0.1111111111111111, "functions_per_loc": 0.1111111111111111, "tokens_per_loc": 4.444444444444445}, {"date": "2021-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/InitialStateNode.java", "comments": 23, "loc_per_function": 3.0, "blanks_per_loc": 1.0, "num_funs": 0, "comments_per_loc": 7.67, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2021-01", "loc": 55, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/TypeNode.java", "comments": 38, "loc_per_function": 6.11, "blanks_per_loc": 0.24, "num_funs": 9, "comments_per_loc": 0.69, "tokens": 236, "ccn": 10, "ccn_per_function": 1.1111111111111112, "tokens_per_function": 26.22222222222222, "ccn_per_token": 0.0423728813559322, "functions_per_token": 0.038135593220338986, "loc_per_token": 0.2330508474576271, "ccn_per_loc": 0.18181818181818182, "functions_per_loc": 0.16363636363636364, "tokens_per_loc": 4.290909090909091}, {"date": "2021-01", "loc": 19, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/NamedNode.java", "comments": 31, "loc_per_function": 6.33, "blanks_per_loc": 0.26, "num_funs": 3, "comments_per_loc": 1.63, "tokens": 88, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 29.333333333333332, "ccn_per_token": 0.03409090909090909, "functions_per_token": 0.03409090909090909, "loc_per_token": 0.2159090909090909, "ccn_per_loc": 0.15789473684210525, "functions_per_loc": 0.15789473684210525, "tokens_per_loc": 4.631578947368421}, {"date": "2021-01", "loc": 61, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/ObjectNode.java", "comments": 29, "loc_per_function": 8.71, "blanks_per_loc": 0.2, "num_funs": 7, "comments_per_loc": 0.48, "tokens": 327, "ccn": 9, "ccn_per_function": 1.2857142857142858, "tokens_per_function": 46.714285714285715, "ccn_per_token": 0.027522935779816515, "functions_per_token": 0.021406727828746176, "loc_per_token": 0.18654434250764526, "ccn_per_loc": 0.14754098360655737, "functions_per_loc": 0.11475409836065574, "tokens_per_loc": 5.360655737704918}, {"date": "2021-01", "loc": 26, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/StateDiagramBuilder.java", "comments": 35, "loc_per_function": 13.0, "blanks_per_loc": 0.23, "num_funs": 2, "comments_per_loc": 1.35, "tokens": 174, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 87.0, "ccn_per_token": 0.011494252873563218, "functions_per_token": 0.011494252873563218, "loc_per_token": 0.14942528735632185, "ccn_per_loc": 0.07692307692307693, "functions_per_loc": 0.07692307692307693, "tokens_per_loc": 6.6923076923076925}, {"date": "2021-01", "loc": 122, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/ObjectDiagramBuilder.java", "comments": 35, "loc_per_function": 17.43, "blanks_per_loc": 0.11, "num_funs": 7, "comments_per_loc": 0.29, "tokens": 707, "ccn": 21, "ccn_per_function": 3.0, "tokens_per_function": 101.0, "ccn_per_token": 0.0297029702970297, "functions_per_token": 0.009900990099009901, "loc_per_token": 0.17256011315417255, "ccn_per_loc": 0.1721311475409836, "functions_per_loc": 0.05737704918032787, "tokens_per_loc": 5.795081967213115}, {"date": "2021-01", "loc": 6, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/DiagramOperation.java", "comments": 31, "loc_per_function": 6.0, "blanks_per_loc": 0.33, "num_funs": 0, "comments_per_loc": 5.17, "tokens": 28, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 28, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.21428571428571427, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 4.666666666666667}, {"date": "2021-01", "loc": 348, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/DiagramBuilder.java", "comments": 143, "loc_per_function": 19.33, "blanks_per_loc": 0.09, "num_funs": 18, "comments_per_loc": 0.41, "tokens": 2468, "ccn": 63, "ccn_per_function": 3.5, "tokens_per_function": 137.11111111111111, "ccn_per_token": 0.025526742301458672, "functions_per_token": 0.007293354943273906, "loc_per_token": 0.14100486223662884, "ccn_per_loc": 0.1810344827586207, "functions_per_loc": 0.05172413793103448, "tokens_per_loc": 7.091954022988506}, {"date": "2021-01", "loc": 261, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/ClassDiagramBuilder.java", "comments": 104, "loc_per_function": 17.4, "blanks_per_loc": 0.08, "num_funs": 15, "comments_per_loc": 0.4, "tokens": 1492, "ccn": 49, "ccn_per_function": 3.2666666666666666, "tokens_per_function": 99.46666666666667, "ccn_per_token": 0.03284182305630027, "functions_per_token": 0.010053619302949061, "loc_per_token": 0.17493297587131368, "ccn_per_loc": 0.18773946360153257, "functions_per_loc": 0.05747126436781609, "tokens_per_loc": 5.716475095785441}, {"date": "2021-01", "loc": 73, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/DiagramOperationProcessor.java", "comments": 61, "loc_per_function": 8.11, "blanks_per_loc": 0.16, "num_funs": 9, "comments_per_loc": 0.84, "tokens": 356, "ccn": 12, "ccn_per_function": 1.3333333333333333, "tokens_per_function": 39.55555555555556, "ccn_per_token": 0.033707865168539325, "functions_per_token": 0.025280898876404494, "loc_per_token": 0.2050561797752809, "ccn_per_loc": 0.1643835616438356, "functions_per_loc": 0.1232876712328767, "tokens_per_loc": 4.876712328767123}, {"date": "2021-01", "loc": 22, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/SimpleOperation.java", "comments": 34, "loc_per_function": 7.33, "blanks_per_loc": 0.18, "num_funs": 3, "comments_per_loc": 1.55, "tokens": 88, "ccn": 4, "ccn_per_function": 1.3333333333333333, "tokens_per_function": 29.333333333333332, "ccn_per_token": 0.045454545454545456, "functions_per_token": 0.03409090909090909, "loc_per_token": 0.25, "ccn_per_loc": 0.18181818181818182, "functions_per_loc": 0.13636363636363635, "tokens_per_loc": 4.0}, {"date": "2021-01", "loc": 199, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/SequenceDiagramBuilder.java", "comments": 42, "loc_per_function": 22.11, "blanks_per_loc": 0.08, "num_funs": 9, "comments_per_loc": 0.21, "tokens": 1339, "ccn": 32, "ccn_per_function": 3.5555555555555554, "tokens_per_function": 148.77777777777777, "ccn_per_token": 0.02389843166542196, "functions_per_token": 0.006721433905899925, "loc_per_token": 0.1486183719193428, "ccn_per_loc": 0.16080402010050251, "functions_per_loc": 0.04522613065326633, "tokens_per_loc": 6.728643216080402}, {"date": "2021-01", "loc": 34, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/CompoundOperation.java", "comments": 39, "loc_per_function": 8.5, "blanks_per_loc": 0.18, "num_funs": 4, "comments_per_loc": 1.15, "tokens": 154, "ccn": 6, "ccn_per_function": 1.5, "tokens_per_function": 38.5, "ccn_per_token": 0.03896103896103896, "functions_per_token": 0.025974025974025976, "loc_per_token": 0.22077922077922077, "ccn_per_loc": 0.17647058823529413, "functions_per_loc": 0.11764705882352941, "tokens_per_loc": 4.529411764705882}, {"date": "2021-01", "loc": 24, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/UseCaseDiagramBuilder.java", "comments": 29, "loc_per_function": 12.0, "blanks_per_loc": 0.29, "num_funs": 2, "comments_per_loc": 1.21, "tokens": 151, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 75.5, "ccn_per_token": 0.013245033112582781, "functions_per_token": 0.013245033112582781, "loc_per_token": 0.15894039735099338, "ccn_per_loc": 0.08333333333333333, "functions_per_loc": 0.08333333333333333, "tokens_per_loc": 6.291666666666667}, {"date": "2021-01", "loc": 26, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/constraints/StateDiagramEdgeConstraints.java", "comments": 30, "loc_per_function": 8.67, "blanks_per_loc": 0.19, "num_funs": 3, "comments_per_loc": 1.15, "tokens": 223, "ccn": 4, "ccn_per_function": 1.3333333333333333, "tokens_per_function": 74.33333333333333, "ccn_per_token": 0.017937219730941704, "functions_per_token": 0.013452914798206279, "loc_per_token": 0.11659192825112108, "ccn_per_loc": 0.15384615384615385, "functions_per_loc": 0.11538461538461539, "tokens_per_loc": 8.576923076923077}, {"date": "2021-01", "loc": 61, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/constraints/SequenceDiagramEdgeConstraints.java", "comments": 40, "loc_per_function": 10.17, "blanks_per_loc": 0.15, "num_funs": 6, "comments_per_loc": 0.66, "tokens": 539, "ccn": 19, "ccn_per_function": 3.1666666666666665, "tokens_per_function": 89.83333333333333, "ccn_per_token": 0.03525046382189239, "functions_per_token": 0.011131725417439703, "loc_per_token": 0.11317254174397032, "ccn_per_loc": 0.3114754098360656, "functions_per_loc": 0.09836065573770492, "tokens_per_loc": 8.836065573770492}, {"date": "2021-01", "loc": 55, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/constraints/EdgeConstraints.java", "comments": 41, "loc_per_function": 9.17, "blanks_per_loc": 0.16, "num_funs": 6, "comments_per_loc": 0.75, "tokens": 462, "ccn": 18, "ccn_per_function": 3.0, "tokens_per_function": 77.0, "ccn_per_token": 0.03896103896103896, "functions_per_token": 0.012987012987012988, "loc_per_token": 0.11904761904761904, "ccn_per_loc": 0.32727272727272727, "functions_per_loc": 0.10909090909090909, "tokens_per_loc": 8.4}, {"date": "2021-01", "loc": 29, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/constraints/ObjectDiagramEdgeConstraints.java", "comments": 30, "loc_per_function": 9.67, "blanks_per_loc": 0.17, "num_funs": 3, "comments_per_loc": 1.03, "tokens": 275, "ccn": 7, "ccn_per_function": 2.3333333333333335, "tokens_per_function": 91.66666666666667, "ccn_per_token": 0.025454545454545455, "functions_per_token": 0.01090909090909091, "loc_per_token": 0.10545454545454545, "ccn_per_loc": 0.2413793103448276, "functions_per_loc": 0.10344827586206896, "tokens_per_loc": 9.482758620689655}, {"date": "2021-01", "loc": 30, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/constraints/ConstraintSet.java", "comments": 41, "loc_per_function": 15.0, "blanks_per_loc": 0.2, "num_funs": 2, "comments_per_loc": 1.37, "tokens": 210, "ccn": 4, "ccn_per_function": 2.0, "tokens_per_function": 105.0, "ccn_per_token": 0.01904761904761905, "functions_per_token": 0.009523809523809525, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.13333333333333333, "functions_per_loc": 0.06666666666666667, "tokens_per_loc": 7.0}, {"date": "2021-01", "loc": 66, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/constraints/ClassDiagramEdgeConstraints.java", "comments": 36, "loc_per_function": 13.2, "blanks_per_loc": 0.11, "num_funs": 5, "comments_per_loc": 0.55, "tokens": 509, "ccn": 21, "ccn_per_function": 4.2, "tokens_per_function": 101.8, "ccn_per_token": 0.0412573673870334, "functions_per_token": 0.009823182711198428, "loc_per_token": 0.12966601178781925, "ccn_per_loc": 0.3181818181818182, "functions_per_loc": 0.07575757575757576, "tokens_per_loc": 7.712121212121212}, {"date": "2021-01", "loc": 9, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/constraints/Constraint.java", "comments": 32, "loc_per_function": 9.0, "blanks_per_loc": 0.33, "num_funs": 0, "comments_per_loc": 3.56, "tokens": 94, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 94, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.09574468085106383, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 10.444444444444445}, {"date": "2021-01", "loc": 51, "path": "src/ca/mcgill/cs/jetuml/application/MoveTracker.java", "comments": 38, "loc_per_function": 25.5, "blanks_per_loc": 0.14, "num_funs": 2, "comments_per_loc": 0.75, "tokens": 385, "ccn": 8, "ccn_per_function": 4.0, "tokens_per_function": 192.5, "ccn_per_token": 0.02077922077922078, "functions_per_token": 0.005194805194805195, "loc_per_token": 0.13246753246753246, "ccn_per_loc": 0.1568627450980392, "functions_per_loc": 0.0392156862745098, "tokens_per_loc": 7.549019607843137}, {"date": "2021-01", "loc": 23, "path": "src/ca/mcgill/cs/jetuml/application/DiagramSizeUtils.java", "comments": 33, "loc_per_function": 7.67, "blanks_per_loc": 0.17, "num_funs": 3, "comments_per_loc": 1.43, "tokens": 92, "ccn": 5, "ccn_per_function": 1.6666666666666667, "tokens_per_function": 30.666666666666668, "ccn_per_token": 0.05434782608695652, "functions_per_token": 0.03260869565217391, "loc_per_token": 0.25, "ccn_per_loc": 0.21739130434782608, "functions_per_loc": 0.13043478260869565, "tokens_per_loc": 4.0}, {"date": "2021-01", "loc": 28, "path": "src/ca/mcgill/cs/jetuml/application/ApplicationResources.java", "comments": 43, "loc_per_function": 9.33, "blanks_per_loc": 0.29, "num_funs": 3, "comments_per_loc": 1.54, "tokens": 143, "ccn": 4, "ccn_per_function": 1.3333333333333333, "tokens_per_function": 47.666666666666664, "ccn_per_token": 0.027972027972027972, "functions_per_token": 0.02097902097902098, "loc_per_token": 0.1958041958041958, "ccn_per_loc": 0.14285714285714285, "functions_per_loc": 0.10714285714285714, "tokens_per_loc": 5.107142857142857}, {"date": "2021-01", "loc": 77, "path": "src/ca/mcgill/cs/jetuml/application/RecentFilesQueue.java", "comments": 63, "loc_per_function": 12.83, "blanks_per_loc": 0.13, "num_funs": 6, "comments_per_loc": 0.82, "tokens": 405, "ccn": 16, "ccn_per_function": 2.6666666666666665, "tokens_per_function": 67.5, "ccn_per_token": 0.03950617283950617, "functions_per_token": 0.014814814814814815, "loc_per_token": 0.19012345679012346, "ccn_per_loc": 0.2077922077922078, "functions_per_loc": 0.07792207792207792, "tokens_per_loc": 5.259740259740259}, {"date": "2021-01", "loc": 41, "path": "src/ca/mcgill/cs/jetuml/application/PropertyChangeTracker.java", "comments": 40, "loc_per_function": 13.67, "blanks_per_loc": 0.15, "num_funs": 3, "comments_per_loc": 0.98, "tokens": 279, "ccn": 6, "ccn_per_function": 2.0, "tokens_per_function": 93.0, "ccn_per_token": 0.021505376344086023, "functions_per_token": 0.010752688172043012, "loc_per_token": 0.14695340501792115, "ccn_per_loc": 0.14634146341463414, "functions_per_loc": 0.07317073170731707, "tokens_per_loc": 6.804878048780488}, {"date": "2021-01", "loc": 177, "path": "src/ca/mcgill/cs/jetuml/application/Clipboard.java", "comments": 86, "loc_per_function": 11.8, "blanks_per_loc": 0.11, "num_funs": 15, "comments_per_loc": 0.49, "tokens": 987, "ccn": 40, "ccn_per_function": 2.6666666666666665, "tokens_per_function": 65.8, "ccn_per_token": 0.040526849037487336, "functions_per_token": 0.015197568389057751, "loc_per_token": 0.17933130699088146, "ccn_per_loc": 0.22598870056497175, "functions_per_loc": 0.0847457627118644, "tokens_per_loc": 5.576271186440678}, {"date": "2021-01", "loc": 56, "path": "src/ca/mcgill/cs/jetuml/application/FileExtensions.java", "comments": 43, "loc_per_function": 11.2, "blanks_per_loc": 0.23, "num_funs": 5, "comments_per_loc": 0.77, "tokens": 419, "ccn": 7, "ccn_per_function": 1.4, "tokens_per_function": 83.8, "ccn_per_token": 0.016706443914081145, "functions_per_token": 0.011933174224343675, "loc_per_token": 0.13365155131264916, "ccn_per_loc": 0.125, "functions_per_loc": 0.08928571428571429, "tokens_per_loc": 7.482142857142857}, {"date": "2021-01", "loc": 88, "path": "src/ca/mcgill/cs/jetuml/application/UserPreferences.java", "comments": 69, "loc_per_function": 7.33, "blanks_per_loc": 0.24, "num_funs": 12, "comments_per_loc": 0.78, "tokens": 529, "ccn": 14, "ccn_per_function": 1.1666666666666667, "tokens_per_function": 44.083333333333336, "ccn_per_token": 0.026465028355387523, "functions_per_token": 0.022684310018903593, "loc_per_token": 0.166351606805293, "ccn_per_loc": 0.1590909090909091, "functions_per_loc": 0.13636363636363635, "tokens_per_loc": 6.011363636363637}, {"date": "2021-01", "loc": 107, "path": "src/ca/mcgill/cs/jetuml/application/Version.java", "comments": 54, "loc_per_function": 11.89, "blanks_per_loc": 0.11, "num_funs": 9, "comments_per_loc": 0.5, "tokens": 583, "ccn": 22, "ccn_per_function": 2.4444444444444446, "tokens_per_function": 64.77777777777777, "ccn_per_token": 0.03773584905660377, "functions_per_token": 0.015437392795883362, "loc_per_token": 0.1835334476843911, "ccn_per_loc": 0.205607476635514, "functions_per_loc": 0.08411214953271028, "tokens_per_loc": 5.4485981308411215}, {"date": "2021-01", "loc": 102, "path": "src/ca/mcgill/cs/jetuml/gui/MenuFactory.java", "comments": 81, "loc_per_function": 12.75, "blanks_per_loc": 0.15, "num_funs": 8, "comments_per_loc": 0.79, "tokens": 657, "ccn": 18, "ccn_per_function": 2.25, "tokens_per_function": 82.125, "ccn_per_token": 0.0273972602739726, "functions_per_token": 0.0121765601217656, "loc_per_token": 0.1552511415525114, "ccn_per_loc": 0.17647058823529413, "functions_per_loc": 0.0784313725490196, "tokens_per_loc": 6.4411764705882355}, {"date": "2021-01", "loc": 76, "path": "src/ca/mcgill/cs/jetuml/gui/TipDialog.java", "comments": 33, "loc_per_function": 19.0, "blanks_per_loc": 0.24, "num_funs": 4, "comments_per_loc": 0.43, "tokens": 610, "ccn": 5, "ccn_per_function": 1.25, "tokens_per_function": 152.5, "ccn_per_token": 0.00819672131147541, "functions_per_token": 0.006557377049180328, "loc_per_token": 0.12459016393442623, "ccn_per_loc": 0.06578947368421052, "functions_per_loc": 0.05263157894736842, "tokens_per_loc": 8.026315789473685}, {"date": "2021-01", "loc": 6, "path": "src/ca/mcgill/cs/jetuml/gui/MouseDraggedGestureHandler.java", "comments": 30, "loc_per_function": 6.0, "blanks_per_loc": 0.33, "num_funs": 0, "comments_per_loc": 5.0, "tokens": 36, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 36, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.16666666666666666, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 6.0}, {"date": "2021-01", "loc": 72, "path": "src/ca/mcgill/cs/jetuml/gui/WelcomeTab.java", "comments": 34, "loc_per_function": 14.4, "blanks_per_loc": 0.22, "num_funs": 5, "comments_per_loc": 0.47, "tokens": 589, "ccn": 7, "ccn_per_function": 1.4, "tokens_per_function": 117.8, "ccn_per_token": 0.011884550084889643, "functions_per_token": 0.008488964346349746, "loc_per_token": 0.12224108658743633, "ccn_per_loc": 0.09722222222222222, "functions_per_loc": 0.06944444444444445, "tokens_per_loc": 8.180555555555555}, {"date": "2021-01", "loc": 109, "path": "src/ca/mcgill/cs/jetuml/gui/DiagramCanvas.java", "comments": 49, "loc_per_function": 10.9, "blanks_per_loc": 0.13, "num_funs": 10, "comments_per_loc": 0.45, "tokens": 743, "ccn": 14, "ccn_per_function": 1.4, "tokens_per_function": 74.3, "ccn_per_token": 0.018842530282637954, "functions_per_token": 0.013458950201884253, "loc_per_token": 0.14670255720053835, "ccn_per_loc": 0.12844036697247707, "functions_per_loc": 0.09174311926605505, "tokens_per_loc": 6.81651376146789}, {"date": "2021-01", "loc": 77, "path": "src/ca/mcgill/cs/jetuml/gui/AboutDialog.java", "comments": 32, "loc_per_function": 19.25, "blanks_per_loc": 0.23, "num_funs": 4, "comments_per_loc": 0.42, "tokens": 624, "ccn": 5, "ccn_per_function": 1.25, "tokens_per_function": 156.0, "ccn_per_token": 0.008012820512820512, "functions_per_token": 0.00641025641025641, "loc_per_token": 0.1233974358974359, "ccn_per_loc": 0.06493506493506493, "functions_per_loc": 0.05194805194805195, "tokens_per_loc": 8.103896103896103}, {"date": "2021-01", "loc": 52, "path": "src/ca/mcgill/cs/jetuml/gui/SelectableToolButton.java", "comments": 44, "loc_per_function": 13.0, "blanks_per_loc": 0.15, "num_funs": 4, "comments_per_loc": 0.85, "tokens": 398, "ccn": 8, "ccn_per_function": 2.0, "tokens_per_function": 99.5, "ccn_per_token": 0.020100502512562814, "functions_per_token": 0.010050251256281407, "loc_per_token": 0.1306532663316583, "ccn_per_loc": 0.15384615384615385, "functions_per_loc": 0.07692307692307693, "tokens_per_loc": 7.653846153846154}, {"date": "2021-01", "loc": 567, "path": "src/ca/mcgill/cs/jetuml/gui/EditorFrame.java", "comments": 100, "loc_per_function": 16.68, "blanks_per_loc": 0.12, "num_funs": 34, "comments_per_loc": 0.18, "tokens": 4266, "ccn": 79, "ccn_per_function": 2.323529411764706, "tokens_per_function": 125.47058823529412, "ccn_per_token": 0.018518518518518517, "functions_per_token": 0.007969995311767463, "loc_per_token": 0.13291139240506328, "ccn_per_loc": 0.13932980599647266, "functions_per_loc": 0.059964726631393295, "tokens_per_loc": 7.523809523809524}, {"date": "2021-01", "loc": 5, "path": "src/ca/mcgill/cs/jetuml/gui/SelectionObserver.java", "comments": 26, "loc_per_function": 5.0, "blanks_per_loc": 0.2, "num_funs": 0, "comments_per_loc": 5.2, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.23809523809523808, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 4.2}, {"date": "2021-01", "loc": 448, "path": "src/ca/mcgill/cs/jetuml/gui/DiagramCanvasController.java", "comments": 97, "loc_per_function": 14.0, "blanks_per_loc": 0.1, "num_funs": 32, "comments_per_loc": 0.22, "tokens": 2813, "ccn": 87, "ccn_per_function": 2.71875, "tokens_per_function": 87.90625, "ccn_per_token": 0.030927835051546393, "functions_per_token": 0.011375755421258443, "loc_per_token": 0.1592605758976182, "ccn_per_loc": 0.19419642857142858, "functions_per_loc": 0.07142857142857142, "tokens_per_loc": 6.279017857142857}, {"date": "2021-01", "loc": 193, "path": "src/ca/mcgill/cs/jetuml/gui/DiagramTabToolBar.java", "comments": 71, "loc_per_function": 12.06, "blanks_per_loc": 0.1, "num_funs": 16, "comments_per_loc": 0.37, "tokens": 1426, "ccn": 26, "ccn_per_function": 1.625, "tokens_per_function": 89.125, "ccn_per_token": 0.0182328190743338, "functions_per_token": 0.011220196353436185, "loc_per_token": 0.135343618513324, "ccn_per_loc": 0.13471502590673576, "functions_per_loc": 0.08290155440414508, "tokens_per_loc": 7.38860103626943}, {"date": "2021-01", "loc": 6, "path": "src/ca/mcgill/cs/jetuml/gui/KeyEventHandler.java", "comments": 31, "loc_per_function": 6.0, "blanks_per_loc": 0.5, "num_funs": 0, "comments_per_loc": 5.17, "tokens": 28, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 28, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.21428571428571427, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 4.666666666666667}, {"date": "2021-01", "loc": 27, "path": "src/ca/mcgill/cs/jetuml/gui/NamedHandler.java", "comments": 36, "loc_per_function": 6.75, "blanks_per_loc": 0.22, "num_funs": 4, "comments_per_loc": 1.33, "tokens": 125, "ccn": 5, "ccn_per_function": 1.25, "tokens_per_function": 31.25, "ccn_per_token": 0.04, "functions_per_token": 0.032, "loc_per_token": 0.216, "ccn_per_loc": 0.18518518518518517, "functions_per_loc": 0.14814814814814814, "tokens_per_loc": 4.62962962962963}, {"date": "2021-01", "loc": 194, "path": "src/ca/mcgill/cs/jetuml/gui/PropertySheet.java", "comments": 54, "loc_per_function": 19.4, "blanks_per_loc": 0.14, "num_funs": 10, "comments_per_loc": 0.28, "tokens": 1232, "ccn": 31, "ccn_per_function": 3.1, "tokens_per_function": 123.2, "ccn_per_token": 0.025162337662337664, "functions_per_token": 0.008116883116883116, "loc_per_token": 0.15746753246753248, "ccn_per_loc": 0.15979381443298968, "functions_per_loc": 0.05154639175257732, "tokens_per_loc": 6.350515463917525}, {"date": "2021-01", "loc": 24, "path": "src/ca/mcgill/cs/jetuml/gui/NewDiagramHandler.java", "comments": 33, "loc_per_function": 8.0, "blanks_per_loc": 0.21, "num_funs": 3, "comments_per_loc": 1.38, "tokens": 120, "ccn": 4, "ccn_per_function": 1.3333333333333333, "tokens_per_function": 40.0, "ccn_per_token": 0.03333333333333333, "functions_per_token": 0.025, "loc_per_token": 0.2, "ccn_per_loc": 0.16666666666666666, "functions_per_loc": 0.125, "tokens_per_loc": 5.0}, {"date": "2021-01", "loc": 224, "path": "src/ca/mcgill/cs/jetuml/gui/SelectionModel.java", "comments": 135, "loc_per_function": 8.62, "blanks_per_loc": 0.14, "num_funs": 26, "comments_per_loc": 0.6, "tokens": 1164, "ccn": 42, "ccn_per_function": 1.6153846153846154, "tokens_per_function": 44.76923076923077, "ccn_per_token": 0.03608247422680412, "functions_per_token": 0.022336769759450172, "loc_per_token": 0.19243986254295534, "ccn_per_loc": 0.1875, "functions_per_loc": 0.11607142857142858, "tokens_per_loc": 5.196428571428571}, {"date": "2021-01", "loc": 116, "path": "src/ca/mcgill/cs/jetuml/gui/ViewportProjection.java", "comments": 88, "loc_per_function": 7.25, "blanks_per_loc": 0.15, "num_funs": 16, "comments_per_loc": 0.76, "tokens": 578, "ccn": 29, "ccn_per_function": 1.8125, "tokens_per_function": 36.125, "ccn_per_token": 0.050173010380622836, "functions_per_token": 0.02768166089965398, "loc_per_token": 0.20069204152249134, "ccn_per_loc": 0.25, "functions_per_loc": 0.13793103448275862, "tokens_per_loc": 4.982758620689655}, {"date": "2021-01", "loc": 39, "path": "src/ca/mcgill/cs/jetuml/gui/GuiUtils.java", "comments": 35, "loc_per_function": 9.75, "blanks_per_loc": 0.15, "num_funs": 4, "comments_per_loc": 0.9, "tokens": 277, "ccn": 5, "ccn_per_function": 1.25, "tokens_per_function": 69.25, "ccn_per_token": 0.018050541516245487, "functions_per_token": 0.01444043321299639, "loc_per_token": 0.1407942238267148, "ccn_per_loc": 0.1282051282051282, "functions_per_loc": 0.10256410256410256, "tokens_per_loc": 7.102564102564102}, {"date": "2021-01", "loc": 166, "path": "src/ca/mcgill/cs/jetuml/gui/DiagramSizeDialog.java", "comments": 33, "loc_per_function": 18.44, "blanks_per_loc": 0.15, "num_funs": 9, "comments_per_loc": 0.2, "tokens": 1271, "ccn": 15, "ccn_per_function": 1.6666666666666667, "tokens_per_function": 141.22222222222223, "ccn_per_token": 0.011801730920535013, "functions_per_token": 0.007081038552321007, "loc_per_token": 0.13060582218725414, "ccn_per_loc": 0.09036144578313253, "functions_per_loc": 0.05421686746987952, "tokens_per_loc": 7.656626506024097}, {"date": "2021-01", "loc": 203, "path": "src/ca/mcgill/cs/jetuml/gui/DiagramTab.java", "comments": 105, "loc_per_function": 8.12, "blanks_per_loc": 0.19, "num_funs": 25, "comments_per_loc": 0.52, "tokens": 1241, "ccn": 32, "ccn_per_function": 1.28, "tokens_per_function": 49.64, "ccn_per_token": 0.0257856567284448, "functions_per_token": 0.020145044319097503, "loc_per_token": 0.1635777598710717, "ccn_per_loc": 0.15763546798029557, "functions_per_loc": 0.12315270935960591, "tokens_per_loc": 6.113300492610837}, {"date": "2021-01", "loc": 65, "path": "src/ca/mcgill/cs/jetuml/gui/PropertyEditorDialog.java", "comments": 40, "loc_per_function": 13.0, "blanks_per_loc": 0.2, "num_funs": 5, "comments_per_loc": 0.62, "tokens": 465, "ccn": 6, "ccn_per_function": 1.2, "tokens_per_function": 93.0, "ccn_per_token": 0.012903225806451613, "functions_per_token": 0.010752688172043012, "loc_per_token": 0.13978494623655913, "ccn_per_loc": 0.09230769230769231, "functions_per_loc": 0.07692307692307693, "tokens_per_loc": 7.153846153846154}, {"date": "2021-01", "loc": 260, "path": "src/ca/mcgill/cs/jetuml/gui/tips/TipDialog.java", "comments": 72, "loc_per_function": 17.33, "blanks_per_loc": 0.2, "num_funs": 15, "comments_per_loc": 0.28, "tokens": 1823, "ccn": 21, "ccn_per_function": 1.4, "tokens_per_function": 121.53333333333333, "ccn_per_token": 0.01151947339550192, "functions_per_token": 0.008228195282501372, "loc_per_token": 0.1426220515633571, "ccn_per_loc": 0.08076923076923077, "functions_per_loc": 0.057692307692307696, "tokens_per_loc": 7.0115384615384615}, {"date": "2021-01", "loc": 68, "path": "src/ca/mcgill/cs/jetuml/gui/tips/UserGuideGenerator.java", "comments": 22, "loc_per_function": 11.33, "blanks_per_loc": 0.18, "num_funs": 6, "comments_per_loc": 0.32, "tokens": 534, "ccn": 9, "ccn_per_function": 1.5, "tokens_per_function": 89.0, "ccn_per_token": 0.016853932584269662, "functions_per_token": 0.011235955056179775, "loc_per_token": 0.12734082397003746, "ccn_per_loc": 0.1323529411764706, "functions_per_loc": 0.08823529411764706, "tokens_per_loc": 7.852941176470588}, {"date": "2021-01", "loc": 20, "path": "src/ca/mcgill/cs/jetuml/gui/tips/TipElement.java", "comments": 35, "loc_per_function": 6.67, "blanks_per_loc": 0.2, "num_funs": 3, "comments_per_loc": 1.75, "tokens": 75, "ccn": 4, "ccn_per_function": 1.3333333333333333, "tokens_per_function": 25.0, "ccn_per_token": 0.05333333333333334, "functions_per_token": 0.04, "loc_per_token": 0.26666666666666666, "ccn_per_loc": 0.2, "functions_per_loc": 0.15, "tokens_per_loc": 3.75}, {"date": "2021-01", "loc": 5, "path": "src/ca/mcgill/cs/jetuml/gui/tips/Media.java", "comments": 23, "loc_per_function": 5.0, "blanks_per_loc": 0.2, "num_funs": 0, "comments_per_loc": 4.6, "tokens": 20, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 20, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.25, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 4.0}, {"date": "2021-01", "loc": 71, "path": "src/ca/mcgill/cs/jetuml/gui/tips/ViewedTips.java", "comments": 46, "loc_per_function": 10.14, "blanks_per_loc": 0.17, "num_funs": 7, "comments_per_loc": 0.65, "tokens": 220, "ccn": 13, "ccn_per_function": 1.8571428571428572, "tokens_per_function": 31.428571428571427, "ccn_per_token": 0.05909090909090909, "functions_per_token": 0.031818181818181815, "loc_per_token": 0.32272727272727275, "ccn_per_loc": 0.18309859154929578, "functions_per_loc": 0.09859154929577464, "tokens_per_loc": 3.0985915492957745}, {"date": "2021-01", "loc": 9, "path": "src/ca/mcgill/cs/jetuml/gui/tips/TipFieldName.java", "comments": 25, "loc_per_function": 9.0, "blanks_per_loc": 0.22, "num_funs": 1, "comments_per_loc": 2.78, "tokens": 37, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 37.0, "ccn_per_token": 0.02702702702702703, "functions_per_token": 0.02702702702702703, "loc_per_token": 0.24324324324324326, "ccn_per_loc": 0.1111111111111111, "functions_per_loc": 0.1111111111111111, "tokens_per_loc": 4.111111111111111}, {"date": "2021-01", "loc": 75, "path": "src/ca/mcgill/cs/jetuml/gui/tips/TipLoader.java", "comments": 53, "loc_per_function": 10.71, "blanks_per_loc": 0.19, "num_funs": 7, "comments_per_loc": 0.71, "tokens": 500, "ccn": 10, "ccn_per_function": 1.4285714285714286, "tokens_per_function": 71.42857142857143, "ccn_per_token": 0.02, "functions_per_token": 0.014, "loc_per_token": 0.15, "ccn_per_loc": 0.13333333333333333, "functions_per_loc": 0.09333333333333334, "tokens_per_loc": 6.666666666666667}, {"date": "2021-01", "loc": 39, "path": "src/ca/mcgill/cs/jetuml/persistence/PersistenceService.java", "comments": 44, "loc_per_function": 13.0, "blanks_per_loc": 0.15, "num_funs": 3, "comments_per_loc": 1.13, "tokens": 259, "ccn": 5, "ccn_per_function": 1.6666666666666667, "tokens_per_function": 86.33333333333333, "ccn_per_token": 0.019305019305019305, "functions_per_token": 0.011583011583011582, "loc_per_token": 0.15057915057915058, "ccn_per_loc": 0.1282051282051282, "functions_per_loc": 0.07692307692307693, "tokens_per_loc": 6.641025641025641}, {"date": "2021-01", "loc": 84, "path": "src/ca/mcgill/cs/jetuml/persistence/JsonEncoder.java", "comments": 31, "loc_per_function": 12.0, "blanks_per_loc": 0.13, "num_funs": 7, "comments_per_loc": 0.37, "tokens": 606, "ccn": 15, "ccn_per_function": 2.142857142857143, "tokens_per_function": 86.57142857142857, "ccn_per_token": 0.024752475247524754, "functions_per_token": 0.01155115511551155, "loc_per_token": 0.13861386138613863, "ccn_per_loc": 0.17857142857142858, "functions_per_loc": 0.08333333333333333, "tokens_per_loc": 7.214285714285714}, {"date": "2021-01", "loc": 39, "path": "src/ca/mcgill/cs/jetuml/persistence/SerializationContext.java", "comments": 41, "loc_per_function": 9.75, "blanks_per_loc": 0.13, "num_funs": 4, "comments_per_loc": 1.05, "tokens": 194, "ccn": 8, "ccn_per_function": 2.0, "tokens_per_function": 48.5, "ccn_per_token": 0.041237113402061855, "functions_per_token": 0.020618556701030927, "loc_per_token": 0.20103092783505155, "ccn_per_loc": 0.20512820512820512, "functions_per_loc": 0.10256410256410256, "tokens_per_loc": 4.9743589743589745}, {"date": "2021-01", "loc": 13, "path": "src/ca/mcgill/cs/jetuml/persistence/DeserializationException.java", "comments": 34, "loc_per_function": 6.5, "blanks_per_loc": 0.15, "num_funs": 2, "comments_per_loc": 2.62, "tokens": 54, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 27.0, "ccn_per_token": 0.037037037037037035, "functions_per_token": 0.037037037037037035, "loc_per_token": 0.24074074074074073, "ccn_per_loc": 0.15384615384615385, "functions_per_loc": 0.15384615384615385, "tokens_per_loc": 4.153846153846154}, {"date": "2021-01", "loc": 106, "path": "src/ca/mcgill/cs/jetuml/persistence/JsonDecoder.java", "comments": 45, "loc_per_function": 17.67, "blanks_per_loc": 0.09, "num_funs": 6, "comments_per_loc": 0.42, "tokens": 721, "ccn": 18, "ccn_per_function": 3.0, "tokens_per_function": 120.16666666666667, "ccn_per_token": 0.024965325936199722, "functions_per_token": 0.008321775312066574, "loc_per_token": 0.14701803051317613, "ccn_per_loc": 0.16981132075471697, "functions_per_loc": 0.05660377358490566, "tokens_per_loc": 6.80188679245283}, {"date": "2021-01", "loc": 31, "path": "src/ca/mcgill/cs/jetuml/persistence/AbstractContext.java", "comments": 41, "loc_per_function": 7.75, "blanks_per_loc": 0.23, "num_funs": 4, "comments_per_loc": 1.32, "tokens": 171, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 42.75, "ccn_per_token": 0.023391812865497075, "functions_per_token": 0.023391812865497075, "loc_per_token": 0.18128654970760233, "ccn_per_loc": 0.12903225806451613, "functions_per_loc": 0.12903225806451613, "tokens_per_loc": 5.516129032258065}, {"date": "2021-01", "loc": 34, "path": "src/ca/mcgill/cs/jetuml/persistence/DeserializationContext.java", "comments": 47, "loc_per_function": 8.5, "blanks_per_loc": 0.15, "num_funs": 4, "comments_per_loc": 1.38, "tokens": 148, "ccn": 7, "ccn_per_function": 1.75, "tokens_per_function": 37.0, "ccn_per_token": 0.0472972972972973, "functions_per_token": 0.02702702702702703, "loc_per_token": 0.22972972972972974, "ccn_per_loc": 0.20588235294117646, "functions_per_loc": 0.11764705882352941, "tokens_per_loc": 4.352941176470588}, {"date": "2021-01", "loc": 179, "path": "src/ca/mcgill/cs/jetuml/persistence/VersionMigrator.java", "comments": 57, "loc_per_function": 17.9, "blanks_per_loc": 0.11, "num_funs": 10, "comments_per_loc": 0.32, "tokens": 1238, "ccn": 35, "ccn_per_function": 3.5, "tokens_per_function": 123.8, "ccn_per_token": 0.02827140549273021, "functions_per_token": 0.008077544426494346, "loc_per_token": 0.14458804523424879, "ccn_per_loc": 0.19553072625698323, "functions_per_loc": 0.055865921787709494, "tokens_per_loc": 6.916201117318436}, {"date": "2021-01", "loc": 27, "path": "src/ca/mcgill/cs/jetuml/persistence/VersionedDiagram.java", "comments": 37, "loc_per_function": 6.75, "blanks_per_loc": 0.22, "num_funs": 4, "comments_per_loc": 1.37, "tokens": 113, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 28.25, "ccn_per_token": 0.035398230088495575, "functions_per_token": 0.035398230088495575, "loc_per_token": 0.23893805309734514, "ccn_per_loc": 0.14814814814814814, "functions_per_loc": 0.14814814814814814, "tokens_per_loc": 4.185185185185185}, {"date": "2021-01", "loc": 9, "path": "src/ca/mcgill/cs/jetuml/annotations/Immutable.java", "comments": 23, "loc_per_function": 9.0, "blanks_per_loc": 0.33, "num_funs": 0, "comments_per_loc": 2.56, "tokens": 67, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 67, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.13432835820895522, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.444444444444445}, {"date": "2021-01", "loc": 9, "path": "src/ca/mcgill/cs/jetuml/annotations/Flyweight.java", "comments": 24, "loc_per_function": 9.0, "blanks_per_loc": 0.33, "num_funs": 0, "comments_per_loc": 2.67, "tokens": 67, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 67, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.13432835820895522, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.444444444444445}, {"date": "2021-01", "loc": 213, "path": "src/org/json/JSONTokener.java", "comments": 134, "loc_per_function": 14.2, "blanks_per_loc": 0.15, "num_funs": 15, "comments_per_loc": 0.63, "tokens": 1150, "ccn": 65, "ccn_per_function": 4.333333333333333, "tokens_per_function": 76.66666666666667, "ccn_per_token": 0.05652173913043478, "functions_per_token": 0.013043478260869565, "loc_per_token": 0.18521739130434783, "ccn_per_loc": 0.3051643192488263, "functions_per_loc": 0.07042253521126761, "tokens_per_loc": 5.39906103286385}, {"date": "2021-01", "loc": 17, "path": "src/org/json/JSONException.java", "comments": 19, "loc_per_function": 5.67, "blanks_per_loc": 0.18, "num_funs": 3, "comments_per_loc": 1.12, "tokens": 67, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 22.333333333333332, "ccn_per_token": 0.04477611940298507, "functions_per_token": 0.04477611940298507, "loc_per_token": 0.2537313432835821, "ccn_per_loc": 0.17647058823529413, "functions_per_loc": 0.17647058823529413, "tokens_per_loc": 3.9411764705882355}, {"date": "2021-01", "loc": 534, "path": "src/org/json/JSONObject.java", "comments": 450, "loc_per_function": 14.83, "blanks_per_loc": 0.12, "num_funs": 36, "comments_per_loc": 0.84, "tokens": 3518, "ccn": 195, "ccn_per_function": 5.416666666666667, "tokens_per_function": 97.72222222222223, "ccn_per_token": 0.05542922114837976, "functions_per_token": 0.01023308698123934, "loc_per_token": 0.15179079022171688, "ccn_per_loc": 0.3651685393258427, "functions_per_loc": 0.06741573033707865, "tokens_per_loc": 6.588014981273409}, {"date": "2021-01", "loc": 179, "path": "src/org/json/JSONWriter.java", "comments": 198, "loc_per_function": 11.93, "blanks_per_loc": 0.17, "num_funs": 15, "comments_per_loc": 1.11, "tokens": 1134, "ccn": 59, "ccn_per_function": 3.933333333333333, "tokens_per_function": 75.6, "ccn_per_token": 0.05202821869488536, "functions_per_token": 0.013227513227513227, "loc_per_token": 0.15784832451499117, "ccn_per_loc": 0.329608938547486, "functions_per_loc": 0.08379888268156424, "tokens_per_loc": 6.335195530726257}, {"date": "2021-01", "loc": 204, "path": "src/org/json/JSONArray.java", "comments": 228, "loc_per_function": 12.0, "blanks_per_loc": 0.13, "num_funs": 17, "comments_per_loc": 1.12, "tokens": 1246, "ccn": 53, "ccn_per_function": 3.1176470588235294, "tokens_per_function": 73.29411764705883, "ccn_per_token": 0.04253611556982344, "functions_per_token": 0.013643659711075442, "loc_per_token": 0.1637239165329053, "ccn_per_loc": 0.25980392156862747, "functions_per_loc": 0.08333333333333333, "tokens_per_loc": 6.107843137254902}, {"date": "2020-01", "loc": 9, "path": "test/ca/mcgill/cs/jetuml/JavaFXLoader.java", "comments": 24, "loc_per_function": 4.5, "blanks_per_loc": 0.44, "num_funs": 2, "comments_per_loc": 2.67, "tokens": 53, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 26.5, "ccn_per_token": 0.03773584905660377, "functions_per_token": 0.03773584905660377, "loc_per_token": 0.16981132075471697, "ccn_per_loc": 0.2222222222222222, "functions_per_loc": 0.2222222222222222, "tokens_per_loc": 5.888888888888889}, {"date": "2020-01", "loc": 47, "path": "test/ca/mcgill/cs/jetuml/geom/TestDimension.java", "comments": 21, "loc_per_function": 9.4, "blanks_per_loc": 0.17, "num_funs": 5, "comments_per_loc": 0.45, "tokens": 387, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 77.4, "ccn_per_token": 0.012919896640826873, "functions_per_token": 0.012919896640826873, "loc_per_token": 0.12144702842377261, "ccn_per_loc": 0.10638297872340426, "functions_per_loc": 0.10638297872340426, "tokens_per_loc": 8.23404255319149}, {"date": "2020-01", "loc": 49, "path": "test/ca/mcgill/cs/jetuml/geom/TestLine.java", "comments": 20, "loc_per_function": 9.8, "blanks_per_loc": 0.16, "num_funs": 5, "comments_per_loc": 0.41, "tokens": 365, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 73.0, "ccn_per_token": 0.0136986301369863, "functions_per_token": 0.0136986301369863, "loc_per_token": 0.13424657534246576, "ccn_per_loc": 0.10204081632653061, "functions_per_loc": 0.10204081632653061, "tokens_per_loc": 7.448979591836735}, {"date": "2020-01", "loc": 55, "path": "test/ca/mcgill/cs/jetuml/geom/TestPoint.java", "comments": 20, "loc_per_function": 11, "blanks_per_loc": 0.15, "num_funs": 5, "comments_per_loc": 0.36, "tokens": 466, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 93.2, "ccn_per_token": 0.01072961373390558, "functions_per_token": 0.01072961373390558, "loc_per_token": 0.11802575107296137, "ccn_per_loc": 0.09090909090909091, "functions_per_loc": 0.09090909090909091, "tokens_per_loc": 8.472727272727273}, {"date": "2020-01", "loc": 42, "path": "test/ca/mcgill/cs/jetuml/geom/TestUtil.java", "comments": 20, "loc_per_function": 6, "blanks_per_loc": 0.24, "num_funs": 7, "comments_per_loc": 0.48, "tokens": 234, "ccn": 7, "ccn_per_function": 1.0, "tokens_per_function": 33.42857142857143, "ccn_per_token": 0.029914529914529916, "functions_per_token": 0.029914529914529916, "loc_per_token": 0.1794871794871795, "ccn_per_loc": 0.16666666666666666, "functions_per_loc": 0.16666666666666666, "tokens_per_loc": 5.571428571428571}, {"date": "2020-01", "loc": 85, "path": "test/ca/mcgill/cs/jetuml/geom/TestRectangle.java", "comments": 20, "loc_per_function": 9.44, "blanks_per_loc": 0.14, "num_funs": 9, "comments_per_loc": 0.24, "tokens": 737, "ccn": 9, "ccn_per_function": 1.0, "tokens_per_function": 81.88888888888889, "ccn_per_token": 0.012211668928086838, "functions_per_token": 0.012211668928086838, "loc_per_token": 0.11533242876526459, "ccn_per_loc": 0.10588235294117647, "functions_per_loc": 0.10588235294117647, "tokens_per_loc": 8.670588235294117}, {"date": "2020-01", "loc": 484, "path": "test/ca/mcgill/cs/jetuml/viewers/edges/TestSegmentationStrategies.java", "comments": 44, "loc_per_function": 21.04, "blanks_per_loc": 0.1, "num_funs": 23, "comments_per_loc": 0.09, "tokens": 4925, "ccn": 23, "ccn_per_function": 1.0, "tokens_per_function": 214.1304347826087, "ccn_per_token": 0.0046700507614213195, "functions_per_token": 0.0046700507614213195, "loc_per_token": 0.09827411167512691, "ccn_per_loc": 0.047520661157024795, "functions_per_loc": 0.047520661157024795, "tokens_per_loc": 10.175619834710744}, {"date": "2020-01", "loc": 41, "path": "test/ca/mcgill/cs/jetuml/viewers/edges/TestDependencyEdgeViewer.java", "comments": 20, "loc_per_function": 13.67, "blanks_per_loc": 0.24, "num_funs": 3, "comments_per_loc": 0.49, "tokens": 288, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 96.0, "ccn_per_token": 0.010416666666666666, "functions_per_token": 0.010416666666666666, "loc_per_token": 0.1423611111111111, "ccn_per_loc": 0.07317073170731707, "functions_per_loc": 0.07317073170731707, "tokens_per_loc": 7.024390243902439}, {"date": "2020-01", "loc": 71, "path": "test/ca/mcgill/cs/jetuml/viewers/edges/TestNoteEdgeViewer.java", "comments": 25, "loc_per_function": 17.75, "blanks_per_loc": 0.25, "num_funs": 4, "comments_per_loc": 0.35, "tokens": 615, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 153.75, "ccn_per_token": 0.0065040650406504065, "functions_per_token": 0.0065040650406504065, "loc_per_token": 0.11544715447154472, "ccn_per_loc": 0.056338028169014086, "functions_per_loc": 0.056338028169014086, "tokens_per_loc": 8.661971830985916}, {"date": "2020-01", "loc": 118, "path": "test/ca/mcgill/cs/jetuml/viewers/nodes/TestFieldNodeViewer.java", "comments": 35, "loc_per_function": 9.08, "blanks_per_loc": 0.16, "num_funs": 13, "comments_per_loc": 0.3, "tokens": 805, "ccn": 13, "ccn_per_function": 1.0, "tokens_per_function": 61.92307692307692, "ccn_per_token": 0.016149068322981366, "functions_per_token": 0.016149068322981366, "loc_per_token": 0.14658385093167703, "ccn_per_loc": 0.11016949152542373, "functions_per_loc": 0.11016949152542373, "tokens_per_loc": 6.822033898305085}, {"date": "2020-01", "loc": 33, "path": "test/ca/mcgill/cs/jetuml/viewers/nodes/TestCircularNodeViewer.java", "comments": 20, "loc_per_function": 11, "blanks_per_loc": 0.21, "num_funs": 3, "comments_per_loc": 0.61, "tokens": 241, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 80.33333333333333, "ccn_per_token": 0.012448132780082987, "functions_per_token": 0.012448132780082987, "loc_per_token": 0.13692946058091288, "ccn_per_loc": 0.09090909090909091, "functions_per_loc": 0.09090909090909091, "tokens_per_loc": 7.303030303030303}, {"date": "2020-01", "loc": 125, "path": "test/ca/mcgill/cs/jetuml/viewers/nodes/TestTypeNodeViewer.java", "comments": 6, "loc_per_function": 8.33, "blanks_per_loc": 0.16, "num_funs": 15, "comments_per_loc": 0.05, "tokens": 814, "ccn": 16, "ccn_per_function": 1.0666666666666667, "tokens_per_function": 54.266666666666666, "ccn_per_token": 0.019656019656019656, "functions_per_token": 0.018427518427518427, "loc_per_token": 0.15356265356265356, "ccn_per_loc": 0.128, "functions_per_loc": 0.12, "tokens_per_loc": 6.512}, {"date": "2020-01", "loc": 48, "path": "test/ca/mcgill/cs/jetuml/viewers/nodes/TestUseCaseNodeViewer.java", "comments": 20, "loc_per_function": 9.6, "blanks_per_loc": 0.19, "num_funs": 5, "comments_per_loc": 0.42, "tokens": 374, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 74.8, "ccn_per_token": 0.013368983957219251, "functions_per_token": 0.013368983957219251, "loc_per_token": 0.12834224598930483, "ccn_per_loc": 0.10416666666666667, "functions_per_loc": 0.10416666666666667, "tokens_per_loc": 7.791666666666667}, {"date": "2020-01", "loc": 111, "path": "test/ca/mcgill/cs/jetuml/viewers/nodes/TestObjectNodeViewer.java", "comments": 20, "loc_per_function": 9.25, "blanks_per_loc": 0.14, "num_funs": 12, "comments_per_loc": 0.18, "tokens": 789, "ccn": 12, "ccn_per_function": 1.0, "tokens_per_function": 65.75, "ccn_per_token": 0.015209125475285171, "functions_per_token": 0.015209125475285171, "loc_per_token": 0.14068441064638784, "ccn_per_loc": 0.10810810810810811, "functions_per_loc": 0.10810810810810811, "tokens_per_loc": 7.108108108108108}, {"date": "2020-01", "loc": 60, "path": "test/ca/mcgill/cs/jetuml/viewers/nodes/TestCallNodeViewer.java", "comments": 20, "loc_per_function": 20, "blanks_per_loc": 0.15, "num_funs": 3, "comments_per_loc": 0.33, "tokens": 451, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 150.33333333333334, "ccn_per_token": 0.0066518847006651885, "functions_per_token": 0.0066518847006651885, "loc_per_token": 0.13303769401330376, "ccn_per_loc": 0.05, "functions_per_loc": 0.05, "tokens_per_loc": 7.516666666666667}, {"date": "2020-01", "loc": 112, "path": "test/ca/mcgill/cs/jetuml/viewers/nodes/TestPackageNodeViewer.java", "comments": 20, "loc_per_function": 8.62, "blanks_per_loc": 0.16, "num_funs": 13, "comments_per_loc": 0.18, "tokens": 680, "ccn": 15, "ccn_per_function": 1.1538461538461537, "tokens_per_function": 52.30769230769231, "ccn_per_token": 0.022058823529411766, "functions_per_token": 0.01911764705882353, "loc_per_token": 0.16470588235294117, "ccn_per_loc": 0.13392857142857142, "functions_per_loc": 0.11607142857142858, "tokens_per_loc": 6.071428571428571}, {"date": "2020-01", "loc": 47, "path": "test/ca/mcgill/cs/jetuml/viewers/nodes/TestActorNodeViewer.java", "comments": 20, "loc_per_function": 9.4, "blanks_per_loc": 0.19, "num_funs": 5, "comments_per_loc": 0.43, "tokens": 360, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 72.0, "ccn_per_token": 0.013888888888888888, "functions_per_token": 0.013888888888888888, "loc_per_token": 0.13055555555555556, "ccn_per_loc": 0.10638297872340426, "functions_per_loc": 0.10638297872340426, "tokens_per_loc": 7.659574468085107}, {"date": "2020-01", "loc": 48, "path": "test/ca/mcgill/cs/jetuml/viewers/nodes/TestStateNodeViewer.java", "comments": 20, "loc_per_function": 9.6, "blanks_per_loc": 0.19, "num_funs": 5, "comments_per_loc": 0.42, "tokens": 374, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 74.8, "ccn_per_token": 0.013368983957219251, "functions_per_token": 0.013368983957219251, "loc_per_token": 0.12834224598930483, "ccn_per_loc": 0.10416666666666667, "functions_per_loc": 0.10416666666666667, "tokens_per_loc": 7.791666666666667}, {"date": "2020-01", "loc": 85, "path": "test/ca/mcgill/cs/jetuml/views/TestGrid.java", "comments": 20, "loc_per_function": 17, "blanks_per_loc": 0.09, "num_funs": 5, "comments_per_loc": 0.24, "tokens": 1233, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 246.6, "ccn_per_token": 0.0040551500405515, "functions_per_token": 0.0040551500405515, "loc_per_token": 0.0689375506893755, "ccn_per_loc": 0.058823529411764705, "functions_per_loc": 0.058823529411764705, "tokens_per_loc": 14.505882352941176}, {"date": "2020-01", "loc": 133, "path": "test/ca/mcgill/cs/jetuml/diagram/AbstractTestUsageScenarios.java", "comments": 24, "loc_per_function": 7.39, "blanks_per_loc": 0.17, "num_funs": 18, "comments_per_loc": 0.18, "tokens": 787, "ccn": 23, "ccn_per_function": 1.2777777777777777, "tokens_per_function": 43.72222222222222, "ccn_per_token": 0.029224904701397714, "functions_per_token": 0.022871664548919948, "loc_per_token": 0.16899618805590852, "ccn_per_loc": 0.17293233082706766, "functions_per_loc": 0.13533834586466165, "tokens_per_loc": 5.917293233082707}, {"date": "2020-01", "loc": 287, "path": "test/ca/mcgill/cs/jetuml/diagram/TestUsageScenariosObjectDiagram.java", "comments": 34, "loc_per_function": 17.94, "blanks_per_loc": 0.21, "num_funs": 16, "comments_per_loc": 0.12, "tokens": 2696, "ccn": 16, "ccn_per_function": 1.0, "tokens_per_function": 168.5, "ccn_per_token": 0.005934718100890208, "functions_per_token": 0.005934718100890208, "loc_per_token": 0.1064540059347181, "ccn_per_loc": 0.05574912891986063, "functions_per_loc": 0.05574912891986063, "tokens_per_loc": 9.393728222996515}, {"date": "2020-01", "loc": 283, "path": "test/ca/mcgill/cs/jetuml/diagram/TestClassDiagram.java", "comments": 24, "loc_per_function": 13.48, "blanks_per_loc": 0.11, "num_funs": 21, "comments_per_loc": 0.08, "tokens": 2086, "ccn": 23, "ccn_per_function": 1.0952380952380953, "tokens_per_function": 99.33333333333333, "ccn_per_token": 0.01102588686481304, "functions_per_token": 0.010067114093959731, "loc_per_token": 0.13566634707574304, "ccn_per_loc": 0.0812720848056537, "functions_per_loc": 0.07420494699646643, "tokens_per_loc": 7.371024734982332}, {"date": "2020-01", "loc": 327, "path": "test/ca/mcgill/cs/jetuml/diagram/TestUsageScenariosStateDiagram.java", "comments": 26, "loc_per_function": 20.44, "blanks_per_loc": 0.2, "num_funs": 16, "comments_per_loc": 0.08, "tokens": 3507, "ccn": 16, "ccn_per_function": 1.0, "tokens_per_function": 219.1875, "ccn_per_token": 0.004562303963501569, "functions_per_token": 0.004562303963501569, "loc_per_token": 0.0932420872540633, "ccn_per_loc": 0.04892966360856269, "functions_per_loc": 0.04892966360856269, "tokens_per_loc": 10.724770642201834}, {"date": "2020-01", "loc": 43, "path": "test/ca/mcgill/cs/jetuml/diagram/DiagramAccessor.java", "comments": 23, "loc_per_function": 8.6, "blanks_per_loc": 0.16, "num_funs": 5, "comments_per_loc": 0.53, "tokens": 221, "ccn": 8, "ccn_per_function": 1.6, "tokens_per_function": 44.2, "ccn_per_token": 0.03619909502262444, "functions_per_token": 0.02262443438914027, "loc_per_token": 0.19457013574660634, "ccn_per_loc": 0.18604651162790697, "functions_per_loc": 0.11627906976744186, "tokens_per_loc": 5.1395348837209305}, {"date": "2020-01", "loc": 186, "path": "test/ca/mcgill/cs/jetuml/diagram/TestProperties.java", "comments": 21, "loc_per_function": 10.33, "blanks_per_loc": 0.13, "num_funs": 18, "comments_per_loc": 0.11, "tokens": 1809, "ccn": 19, "ccn_per_function": 1.0555555555555556, "tokens_per_function": 100.5, "ccn_per_token": 0.010503040353786623, "functions_per_token": 0.009950248756218905, "loc_per_token": 0.10281923714759536, "ccn_per_loc": 0.10215053763440861, "functions_per_loc": 0.0967741935483871, "tokens_per_loc": 9.725806451612904}, {"date": "2020-01", "loc": 162, "path": "test/ca/mcgill/cs/jetuml/diagram/TestControlFlow.java", "comments": 32, "loc_per_function": 10.8, "blanks_per_loc": 0.14, "num_funs": 15, "comments_per_loc": 0.2, "tokens": 1051, "ccn": 15, "ccn_per_function": 1.0, "tokens_per_function": 70.06666666666666, "ccn_per_token": 0.014272121788772598, "functions_per_token": 0.014272121788772598, "loc_per_token": 0.15413891531874405, "ccn_per_loc": 0.09259259259259259, "functions_per_loc": 0.09259259259259259, "tokens_per_loc": 6.487654320987654}, {"date": "2020-01", "loc": 19, "path": "test/ca/mcgill/cs/jetuml/diagram/TestProperty.java", "comments": 20, "loc_per_function": 19, "blanks_per_loc": 0.21, "num_funs": 1, "comments_per_loc": 1.05, "tokens": 159, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 159.0, "ccn_per_token": 0.006289308176100629, "functions_per_token": 0.006289308176100629, "loc_per_token": 0.11949685534591195, "ccn_per_loc": 0.05263157894736842, "functions_per_loc": 0.05263157894736842, "tokens_per_loc": 8.368421052631579}, {"date": "2020-01", "loc": 490, "path": "test/ca/mcgill/cs/jetuml/diagram/TestUsageScenariosClassDiagram.java", "comments": 28, "loc_per_function": 16.9, "blanks_per_loc": 0.19, "num_funs": 29, "comments_per_loc": 0.06, "tokens": 4568, "ccn": 31, "ccn_per_function": 1.0689655172413792, "tokens_per_function": 157.51724137931035, "ccn_per_token": 0.006786339754816112, "functions_per_token": 0.006348511383537653, "loc_per_token": 0.10726795096322242, "ccn_per_loc": 0.06326530612244897, "functions_per_loc": 0.05918367346938776, "tokens_per_loc": 9.322448979591837}, {"date": "2020-01", "loc": 316, "path": "test/ca/mcgill/cs/jetuml/diagram/TestUsageScenariosUseCaseDiagram.java", "comments": 26, "loc_per_function": 24.31, "blanks_per_loc": 0.2, "num_funs": 13, "comments_per_loc": 0.08, "tokens": 3056, "ccn": 15, "ccn_per_function": 1.1538461538461537, "tokens_per_function": 235.07692307692307, "ccn_per_token": 0.004908376963350785, "functions_per_token": 0.004253926701570681, "loc_per_token": 0.10340314136125654, "ccn_per_loc": 0.04746835443037975, "functions_per_loc": 0.04113924050632911, "tokens_per_loc": 9.670886075949367}, {"date": "2020-01", "loc": 333, "path": "test/ca/mcgill/cs/jetuml/diagram/TestUsageScenariosSequenceDiagram.java", "comments": 26, "loc_per_function": 19.59, "blanks_per_loc": 0.23, "num_funs": 17, "comments_per_loc": 0.08, "tokens": 2875, "ccn": 17, "ccn_per_function": 1.0, "tokens_per_function": 169.11764705882354, "ccn_per_token": 0.00591304347826087, "functions_per_token": 0.00591304347826087, "loc_per_token": 0.11582608695652175, "ccn_per_loc": 0.05105105105105105, "functions_per_loc": 0.05105105105105105, "tokens_per_loc": 8.633633633633634}, {"date": "2020-01", "loc": 45, "path": "test/ca/mcgill/cs/jetuml/diagram/TestDiagramType.java", "comments": 20, "loc_per_function": 11.25, "blanks_per_loc": 0.16, "num_funs": 4, "comments_per_loc": 0.44, "tokens": 466, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 116.5, "ccn_per_token": 0.008583690987124463, "functions_per_token": 0.008583690987124463, "loc_per_token": 0.09656652360515021, "ccn_per_loc": 0.08888888888888889, "functions_per_loc": 0.08888888888888889, "tokens_per_loc": 10.355555555555556}, {"date": "2020-01", "loc": 41, "path": "test/ca/mcgill/cs/jetuml/diagram/edges/TestNoteEdge.java", "comments": 24, "loc_per_function": 13.67, "blanks_per_loc": 0.24, "num_funs": 3, "comments_per_loc": 0.59, "tokens": 294, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 98.0, "ccn_per_token": 0.01020408163265306, "functions_per_token": 0.01020408163265306, "loc_per_token": 0.13945578231292516, "ccn_per_loc": 0.07317073170731707, "functions_per_loc": 0.07317073170731707, "tokens_per_loc": 7.170731707317073}, {"date": "2020-01", "loc": 31, "path": "test/ca/mcgill/cs/jetuml/diagram/edges/TestCallEdge.java", "comments": 20, "loc_per_function": 15.5, "blanks_per_loc": 0.23, "num_funs": 2, "comments_per_loc": 0.65, "tokens": 292, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 146.0, "ccn_per_token": 0.00684931506849315, "functions_per_token": 0.00684931506849315, "loc_per_token": 0.10616438356164383, "ccn_per_loc": 0.06451612903225806, "functions_per_loc": 0.06451612903225806, "tokens_per_loc": 9.419354838709678}, {"date": "2020-01", "loc": 17, "path": "test/ca/mcgill/cs/jetuml/diagram/edges/TestUseCaseDependencyEdge.java", "comments": 20, "loc_per_function": 17, "blanks_per_loc": 0.24, "num_funs": 1, "comments_per_loc": 1.18, "tokens": 167, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 167.0, "ccn_per_token": 0.005988023952095809, "functions_per_token": 0.005988023952095809, "loc_per_token": 0.10179640718562874, "ccn_per_loc": 0.058823529411764705, "functions_per_loc": 0.058823529411764705, "tokens_per_loc": 9.823529411764707}, {"date": "2020-01", "loc": 46, "path": "test/ca/mcgill/cs/jetuml/diagram/edges/TestEdgeProperties.java", "comments": 23, "loc_per_function": 15.33, "blanks_per_loc": 0.15, "num_funs": 3, "comments_per_loc": 0.5, "tokens": 514, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 171.33333333333334, "ccn_per_token": 0.005836575875486381, "functions_per_token": 0.005836575875486381, "loc_per_token": 0.08949416342412451, "ccn_per_loc": 0.06521739130434782, "functions_per_loc": 0.06521739130434782, "tokens_per_loc": 11.173913043478262}, {"date": "2020-01", "loc": 28, "path": "test/ca/mcgill/cs/jetuml/diagram/nodes/TestActorNode.java", "comments": 20, "loc_per_function": 14, "blanks_per_loc": 0.29, "num_funs": 2, "comments_per_loc": 0.71, "tokens": 225, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 112.5, "ccn_per_token": 0.008888888888888889, "functions_per_token": 0.008888888888888889, "loc_per_token": 0.12444444444444444, "ccn_per_loc": 0.07142857142857142, "functions_per_loc": 0.07142857142857142, "tokens_per_loc": 8.035714285714286}, {"date": "2020-01", "loc": 41, "path": "test/ca/mcgill/cs/jetuml/diagram/nodes/TestInterfaceNode.java", "comments": 20, "loc_per_function": 10.25, "blanks_per_loc": 0.17, "num_funs": 4, "comments_per_loc": 0.49, "tokens": 251, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 62.75, "ccn_per_token": 0.01593625498007968, "functions_per_token": 0.01593625498007968, "loc_per_token": 0.16334661354581673, "ccn_per_loc": 0.0975609756097561, "functions_per_loc": 0.0975609756097561, "tokens_per_loc": 6.121951219512195}, {"date": "2020-01", "loc": 133, "path": "test/ca/mcgill/cs/jetuml/diagram/nodes/TestObjectNode.java", "comments": 21, "loc_per_function": 16.62, "blanks_per_loc": 0.15, "num_funs": 8, "comments_per_loc": 0.16, "tokens": 1295, "ccn": 8, "ccn_per_function": 1.0, "tokens_per_function": 161.875, "ccn_per_token": 0.006177606177606178, "functions_per_token": 0.006177606177606178, "loc_per_token": 0.10270270270270271, "ccn_per_loc": 0.06015037593984962, "functions_per_loc": 0.06015037593984962, "tokens_per_loc": 9.736842105263158}, {"date": "2020-01", "loc": 110, "path": "test/ca/mcgill/cs/jetuml/diagram/nodes/TestPackageNode.java", "comments": 21, "loc_per_function": 22, "blanks_per_loc": 0.15, "num_funs": 5, "comments_per_loc": 0.19, "tokens": 1015, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 203.0, "ccn_per_token": 0.0049261083743842365, "functions_per_token": 0.0049261083743842365, "loc_per_token": 0.10837438423645321, "ccn_per_loc": 0.045454545454545456, "functions_per_loc": 0.045454545454545456, "tokens_per_loc": 9.227272727272727}, {"date": "2020-01", "loc": 28, "path": "test/ca/mcgill/cs/jetuml/diagram/nodes/TestCallNode.java", "comments": 20, "loc_per_function": 14, "blanks_per_loc": 0.29, "num_funs": 2, "comments_per_loc": 0.71, "tokens": 225, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 112.5, "ccn_per_token": 0.008888888888888889, "functions_per_token": 0.008888888888888889, "loc_per_token": 0.12444444444444444, "ccn_per_loc": 0.07142857142857142, "functions_per_loc": 0.07142857142857142, "tokens_per_loc": 8.035714285714286}, {"date": "2020-01", "loc": 49, "path": "test/ca/mcgill/cs/jetuml/diagram/nodes/TestImplicitParameterNode.java", "comments": 21, "loc_per_function": 16.33, "blanks_per_loc": 0.2, "num_funs": 3, "comments_per_loc": 0.43, "tokens": 393, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 131.0, "ccn_per_token": 0.007633587786259542, "functions_per_token": 0.007633587786259542, "loc_per_token": 0.12468193384223919, "ccn_per_loc": 0.061224489795918366, "functions_per_loc": 0.061224489795918366, "tokens_per_loc": 8.020408163265307}, {"date": "2020-01", "loc": 63, "path": "test/ca/mcgill/cs/jetuml/diagram/nodes/TestClassNode.java", "comments": 23, "loc_per_function": 10.5, "blanks_per_loc": 0.14, "num_funs": 6, "comments_per_loc": 0.37, "tokens": 414, "ccn": 6, "ccn_per_function": 1.0, "tokens_per_function": 69.0, "ccn_per_token": 0.014492753623188406, "functions_per_token": 0.014492753623188406, "loc_per_token": 0.15217391304347827, "ccn_per_loc": 0.09523809523809523, "functions_per_loc": 0.09523809523809523, "tokens_per_loc": 6.571428571428571}, {"date": "2020-01", "loc": 21, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/TestSimpleOperation.java", "comments": 20, "loc_per_function": 21, "blanks_per_loc": 0.24, "num_funs": 1, "comments_per_loc": 0.95, "tokens": 135, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 135.0, "ccn_per_token": 0.007407407407407408, "functions_per_token": 0.007407407407407408, "loc_per_token": 0.15555555555555556, "ccn_per_loc": 0.047619047619047616, "functions_per_loc": 0.047619047619047616, "tokens_per_loc": 6.428571428571429}, {"date": "2020-01", "loc": 187, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/TestStateDiagramBuilder.java", "comments": 20, "loc_per_function": 11.69, "blanks_per_loc": 0.13, "num_funs": 16, "comments_per_loc": 0.11, "tokens": 1853, "ccn": 16, "ccn_per_function": 1.0, "tokens_per_function": 115.8125, "ccn_per_token": 0.008634646519158122, "functions_per_token": 0.008634646519158122, "loc_per_token": 0.10091743119266056, "ccn_per_loc": 0.0855614973262032, "functions_per_loc": 0.0855614973262032, "tokens_per_loc": 9.909090909090908}, {"date": "2020-01", "loc": 139, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/TestUseCaseDiagramBuilder.java", "comments": 20, "loc_per_function": 12.64, "blanks_per_loc": 0.17, "num_funs": 11, "comments_per_loc": 0.14, "tokens": 1546, "ccn": 11, "ccn_per_function": 1.0, "tokens_per_function": 140.54545454545453, "ccn_per_token": 0.0071151358344113845, "functions_per_token": 0.0071151358344113845, "loc_per_token": 0.08990944372574386, "ccn_per_loc": 0.07913669064748201, "functions_per_loc": 0.07913669064748201, "tokens_per_loc": 11.122302158273381}, {"date": "2020-01", "loc": 106, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/TestCompoundOperation.java", "comments": 21, "loc_per_function": 13.25, "blanks_per_loc": 0.11, "num_funs": 8, "comments_per_loc": 0.2, "tokens": 1081, "ccn": 8, "ccn_per_function": 1.0, "tokens_per_function": 135.125, "ccn_per_token": 0.0074005550416281225, "functions_per_token": 0.0074005550416281225, "loc_per_token": 0.09805735430157261, "ccn_per_loc": 0.07547169811320754, "functions_per_loc": 0.07547169811320754, "tokens_per_loc": 10.19811320754717}, {"date": "2020-01", "loc": 217, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/TestDiagramOperationProcessor.java", "comments": 33, "loc_per_function": 13.56, "blanks_per_loc": 0.15, "num_funs": 16, "comments_per_loc": 0.15, "tokens": 1486, "ccn": 16, "ccn_per_function": 1.0, "tokens_per_function": 92.875, "ccn_per_token": 0.010767160161507403, "functions_per_token": 0.010767160161507403, "loc_per_token": 0.14602960969044415, "ccn_per_loc": 0.07373271889400922, "functions_per_loc": 0.07373271889400922, "tokens_per_loc": 6.847926267281106}, {"date": "2020-01", "loc": 168, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/TestObjectDiagramBuilder.java", "comments": 20, "loc_per_function": 18.67, "blanks_per_loc": 0.19, "num_funs": 9, "comments_per_loc": 0.12, "tokens": 1518, "ccn": 9, "ccn_per_function": 1.0, "tokens_per_function": 168.66666666666666, "ccn_per_token": 0.005928853754940711, "functions_per_token": 0.005928853754940711, "loc_per_token": 0.11067193675889328, "ccn_per_loc": 0.05357142857142857, "functions_per_loc": 0.05357142857142857, "tokens_per_loc": 9.035714285714286}, {"date": "2020-01", "loc": 352, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/TestClassDiagramBuilder.java", "comments": 28, "loc_per_function": 12.14, "blanks_per_loc": 0.12, "num_funs": 29, "comments_per_loc": 0.08, "tokens": 2844, "ccn": 32, "ccn_per_function": 1.103448275862069, "tokens_per_function": 98.06896551724138, "ccn_per_token": 0.011251758087201125, "functions_per_token": 0.010196905766526019, "loc_per_token": 0.12376933895921238, "ccn_per_loc": 0.09090909090909091, "functions_per_loc": 0.08238636363636363, "tokens_per_loc": 8.079545454545455}, {"date": "2020-01", "loc": 79, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/TestSequenceDiagramBuilder.java", "comments": 23, "loc_per_function": 15.8, "blanks_per_loc": 0.15, "num_funs": 5, "comments_per_loc": 0.29, "tokens": 556, "ccn": 6, "ccn_per_function": 1.2, "tokens_per_function": 111.2, "ccn_per_token": 0.01079136690647482, "functions_per_token": 0.008992805755395683, "loc_per_token": 0.1420863309352518, "ccn_per_loc": 0.0759493670886076, "functions_per_loc": 0.06329113924050633, "tokens_per_loc": 7.037974683544304}, {"date": "2020-01", "loc": 54, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/constraints/TestClassDiagramEdgeConstraints.java", "comments": 20, "loc_per_function": 10.8, "blanks_per_loc": 0.19, "num_funs": 5, "comments_per_loc": 0.37, "tokens": 375, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 75.0, "ccn_per_token": 0.013333333333333334, "functions_per_token": 0.013333333333333334, "loc_per_token": 0.144, "ccn_per_loc": 0.09259259259259259, "functions_per_loc": 0.09259259259259259, "tokens_per_loc": 6.944444444444445}, {"date": "2020-01", "loc": 84, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/constraints/TestConstraintSet.java", "comments": 20, "loc_per_function": 9.33, "blanks_per_loc": 0.17, "num_funs": 9, "comments_per_loc": 0.24, "tokens": 595, "ccn": 9, "ccn_per_function": 1.0, "tokens_per_function": 66.11111111111111, "ccn_per_token": 0.015126050420168067, "functions_per_token": 0.015126050420168067, "loc_per_token": 0.1411764705882353, "ccn_per_loc": 0.10714285714285714, "functions_per_loc": 0.10714285714285714, "tokens_per_loc": 7.083333333333333}, {"date": "2020-01", "loc": 163, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/constraints/TestSequenceDiagramEdgeConstraints.java", "comments": 20, "loc_per_function": 7.76, "blanks_per_loc": 0.16, "num_funs": 21, "comments_per_loc": 0.12, "tokens": 998, "ccn": 21, "ccn_per_function": 1.0, "tokens_per_function": 47.523809523809526, "ccn_per_token": 0.021042084168336674, "functions_per_token": 0.021042084168336674, "loc_per_token": 0.16332665330661322, "ccn_per_loc": 0.12883435582822086, "functions_per_loc": 0.12883435582822086, "tokens_per_loc": 6.122699386503068}, {"date": "2020-01", "loc": 176, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/constraints/TestEdgeConstraints.java", "comments": 20, "loc_per_function": 8.8, "blanks_per_loc": 0.14, "num_funs": 20, "comments_per_loc": 0.11, "tokens": 1218, "ccn": 20, "ccn_per_function": 1.0, "tokens_per_function": 60.9, "ccn_per_token": 0.016420361247947456, "functions_per_token": 0.016420361247947456, "loc_per_token": 0.1444991789819376, "ccn_per_loc": 0.11363636363636363, "functions_per_loc": 0.11363636363636363, "tokens_per_loc": 6.920454545454546}, {"date": "2020-01", "loc": 71, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/constraints/TestStateDiagramEdgeConstraints.java", "comments": 20, "loc_per_function": 8.88, "blanks_per_loc": 0.18, "num_funs": 8, "comments_per_loc": 0.28, "tokens": 432, "ccn": 8, "ccn_per_function": 1.0, "tokens_per_function": 54.0, "ccn_per_token": 0.018518518518518517, "functions_per_token": 0.018518518518518517, "loc_per_token": 0.16435185185185186, "ccn_per_loc": 0.11267605633802817, "functions_per_loc": 0.11267605633802817, "tokens_per_loc": 6.084507042253521}, {"date": "2020-01", "loc": 92, "path": "test/ca/mcgill/cs/jetuml/diagram/builder/constraints/TestObjectDiagramEdgeConstraints.java", "comments": 20, "loc_per_function": 8.36, "blanks_per_loc": 0.2, "num_funs": 11, "comments_per_loc": 0.22, "tokens": 558, "ccn": 11, "ccn_per_function": 1.0, "tokens_per_function": 50.72727272727273, "ccn_per_token": 0.01971326164874552, "functions_per_token": 0.01971326164874552, "loc_per_token": 0.16487455197132617, "ccn_per_loc": 0.11956521739130435, "functions_per_loc": 0.11956521739130435, "tokens_per_loc": 6.065217391304348}, {"date": "2020-01", "loc": 17, "path": "test/ca/mcgill/cs/jetuml/application/TestApplicationResources.java", "comments": 20, "loc_per_function": 8.5, "blanks_per_loc": 0.24, "num_funs": 2, "comments_per_loc": 1.18, "tokens": 99, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 49.5, "ccn_per_token": 0.020202020202020204, "functions_per_token": 0.020202020202020204, "loc_per_token": 0.1717171717171717, "ccn_per_loc": 0.11764705882352941, "functions_per_loc": 0.11764705882352941, "tokens_per_loc": 5.823529411764706}, {"date": "2020-01", "loc": 109, "path": "test/ca/mcgill/cs/jetuml/application/TestPropertyChangeTracker.java", "comments": 23, "loc_per_function": 13.62, "blanks_per_loc": 0.18, "num_funs": 8, "comments_per_loc": 0.21, "tokens": 745, "ccn": 10, "ccn_per_function": 1.25, "tokens_per_function": 93.125, "ccn_per_token": 0.013422818791946308, "functions_per_token": 0.010738255033557046, "loc_per_token": 0.14630872483221477, "ccn_per_loc": 0.09174311926605505, "functions_per_loc": 0.07339449541284404, "tokens_per_loc": 6.834862385321101}, {"date": "2020-01", "loc": 32, "path": "test/ca/mcgill/cs/jetuml/application/TestFileExtensions.java", "comments": 20, "loc_per_function": 10.67, "blanks_per_loc": 0.22, "num_funs": 3, "comments_per_loc": 0.62, "tokens": 233, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 77.66666666666667, "ccn_per_token": 0.012875536480686695, "functions_per_token": 0.012875536480686695, "loc_per_token": 0.13733905579399142, "ccn_per_loc": 0.09375, "functions_per_loc": 0.09375, "tokens_per_loc": 7.28125}, {"date": "2020-01", "loc": 184, "path": "test/ca/mcgill/cs/jetuml/application/TestClipboard.java", "comments": 20, "loc_per_function": 13.14, "blanks_per_loc": 0.17, "num_funs": 14, "comments_per_loc": 0.11, "tokens": 1430, "ccn": 16, "ccn_per_function": 1.1428571428571428, "tokens_per_function": 102.14285714285714, "ccn_per_token": 0.011188811188811189, "functions_per_token": 0.009790209790209791, "loc_per_token": 0.12867132867132866, "ccn_per_loc": 0.08695652173913043, "functions_per_loc": 0.07608695652173914, "tokens_per_loc": 7.771739130434782}, {"date": "2020-01", "loc": 164, "path": "test/ca/mcgill/cs/jetuml/application/TestMoveTracker.java", "comments": 24, "loc_per_function": 32.8, "blanks_per_loc": 0.13, "num_funs": 5, "comments_per_loc": 0.15, "tokens": 1551, "ccn": 6, "ccn_per_function": 1.2, "tokens_per_function": 310.2, "ccn_per_token": 0.0038684719535783366, "functions_per_token": 0.003223726627981947, "loc_per_token": 0.10573823339780787, "ccn_per_loc": 0.036585365853658534, "functions_per_loc": 0.03048780487804878, "tokens_per_loc": 9.457317073170731}, {"date": "2020-01", "loc": 139, "path": "test/ca/mcgill/cs/jetuml/application/TestRecentFilesQueue.java", "comments": 20, "loc_per_function": 27.8, "blanks_per_loc": 0.17, "num_funs": 5, "comments_per_loc": 0.14, "tokens": 1506, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 301.2, "ccn_per_token": 0.0033200531208499337, "functions_per_token": 0.0033200531208499337, "loc_per_token": 0.09229747675962816, "ccn_per_loc": 0.03597122302158273, "functions_per_loc": 0.03597122302158273, "tokens_per_loc": 10.83453237410072}, {"date": "2020-01", "loc": 249, "path": "test/ca/mcgill/cs/jetuml/gui/TestViewportProjection.java", "comments": 20, "loc_per_function": 13.83, "blanks_per_loc": 0.12, "num_funs": 18, "comments_per_loc": 0.08, "tokens": 2665, "ccn": 18, "ccn_per_function": 1.0, "tokens_per_function": 148.05555555555554, "ccn_per_token": 0.00675422138836773, "functions_per_token": 0.00675422138836773, "loc_per_token": 0.09343339587242026, "ccn_per_loc": 0.07228915662650602, "functions_per_loc": 0.07228915662650602, "tokens_per_loc": 10.70281124497992}, {"date": "2020-01", "loc": 94, "path": "test/ca/mcgill/cs/jetuml/gui/TestMenuFactory.java", "comments": 21, "loc_per_function": 11.75, "blanks_per_loc": 0.14, "num_funs": 8, "comments_per_loc": 0.22, "tokens": 619, "ccn": 10, "ccn_per_function": 1.25, "tokens_per_function": 77.375, "ccn_per_token": 0.01615508885298869, "functions_per_token": 0.012924071082390954, "loc_per_token": 0.1518578352180937, "ccn_per_loc": 0.10638297872340426, "functions_per_loc": 0.0851063829787234, "tokens_per_loc": 6.585106382978723}, {"date": "2020-01", "loc": 464, "path": "test/ca/mcgill/cs/jetuml/gui/TestSelectionModel.java", "comments": 41, "loc_per_function": 12.21, "blanks_per_loc": 0.1, "num_funs": 38, "comments_per_loc": 0.09, "tokens": 3320, "ccn": 40, "ccn_per_function": 1.0526315789473684, "tokens_per_function": 87.36842105263158, "ccn_per_token": 0.012048192771084338, "functions_per_token": 0.01144578313253012, "loc_per_token": 0.13975903614457832, "ccn_per_loc": 0.08620689655172414, "functions_per_loc": 0.08189655172413793, "tokens_per_loc": 7.155172413793103}, {"date": "2020-01", "loc": 13, "path": "test/ca/mcgill/cs/jetuml/gui/TestEditorFrame.java", "comments": 20, "loc_per_function": 13, "blanks_per_loc": 0.23, "num_funs": 1, "comments_per_loc": 1.54, "tokens": 94, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 94.0, "ccn_per_token": 0.010638297872340425, "functions_per_token": 0.010638297872340425, "loc_per_token": 0.13829787234042554, "ccn_per_loc": 0.07692307692307693, "functions_per_loc": 0.07692307692307693, "tokens_per_loc": 7.230769230769231}, {"date": "2020-01", "loc": 74, "path": "test/ca/mcgill/cs/jetuml/gui/TestDiagramTabToolBar.java", "comments": 28, "loc_per_function": 12.33, "blanks_per_loc": 0.15, "num_funs": 6, "comments_per_loc": 0.38, "tokens": 441, "ccn": 8, "ccn_per_function": 1.3333333333333333, "tokens_per_function": 73.5, "ccn_per_token": 0.018140589569160998, "functions_per_token": 0.013605442176870748, "loc_per_token": 0.16780045351473924, "ccn_per_loc": 0.10810810810810811, "functions_per_loc": 0.08108108108108109, "tokens_per_loc": 5.95945945945946}, {"date": "2020-01", "loc": 165, "path": "test/ca/mcgill/cs/jetuml/testutils/CollectionAssertions.java", "comments": 56, "loc_per_function": 12.69, "blanks_per_loc": 0.15, "num_funs": 13, "comments_per_loc": 0.34, "tokens": 1058, "ccn": 49, "ccn_per_function": 3.769230769230769, "tokens_per_function": 81.38461538461539, "ccn_per_token": 0.046313799621928164, "functions_per_token": 0.012287334593572778, "loc_per_token": 0.15595463137996218, "ccn_per_loc": 0.296969696969697, "functions_per_loc": 0.07878787878787878, "tokens_per_loc": 6.412121212121212}, {"date": "2020-01", "loc": 28, "path": "test/ca/mcgill/cs/jetuml/persistence/TestJsonDecoder.java", "comments": 28, "loc_per_function": 9.33, "blanks_per_loc": 0.21, "num_funs": 3, "comments_per_loc": 1, "tokens": 172, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 57.333333333333336, "ccn_per_token": 0.01744186046511628, "functions_per_token": 0.01744186046511628, "loc_per_token": 0.16279069767441862, "ccn_per_loc": 0.10714285714285714, "functions_per_loc": 0.10714285714285714, "tokens_per_loc": 6.142857142857143}, {"date": "2020-01", "loc": 564, "path": "test/ca/mcgill/cs/jetuml/persistence/TestPersistenceService.java", "comments": 20, "loc_per_function": 37.6, "blanks_per_loc": 0.23, "num_funs": 15, "comments_per_loc": 0.04, "tokens": 7271, "ccn": 20, "ccn_per_function": 1.3333333333333333, "tokens_per_function": 484.73333333333335, "ccn_per_token": 0.0027506532801540367, "functions_per_token": 0.0020629899601155273, "loc_per_token": 0.07756842250034383, "ccn_per_loc": 0.03546099290780142, "functions_per_loc": 0.026595744680851064, "tokens_per_loc": 12.891843971631205}, {"date": "2020-01", "loc": 63, "path": "test/ca/mcgill/cs/jetuml/persistence/TestJsonEncodingClassDiagram.java", "comments": 23, "loc_per_function": 12.6, "blanks_per_loc": 0.22, "num_funs": 5, "comments_per_loc": 0.37, "tokens": 521, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 104.2, "ccn_per_token": 0.009596928982725527, "functions_per_token": 0.009596928982725527, "loc_per_token": 0.12092130518234165, "ccn_per_loc": 0.07936507936507936, "functions_per_loc": 0.07936507936507936, "tokens_per_loc": 8.26984126984127}, {"date": "2020-01", "loc": 91, "path": "test/ca/mcgill/cs/jetuml/persistence/TestSerializationContext.java", "comments": 20, "loc_per_function": 13, "blanks_per_loc": 0.13, "num_funs": 7, "comments_per_loc": 0.22, "tokens": 502, "ccn": 10, "ccn_per_function": 1.4285714285714286, "tokens_per_function": 71.71428571428571, "ccn_per_token": 0.0199203187250996, "functions_per_token": 0.013944223107569721, "loc_per_token": 0.18127490039840638, "ccn_per_loc": 0.10989010989010989, "functions_per_loc": 0.07692307692307693, "tokens_per_loc": 5.516483516483516}, {"date": "2020-01", "loc": 74, "path": "test/ca/mcgill/cs/jetuml/persistence/TestDeserializationContext.java", "comments": 22, "loc_per_function": 14.8, "blanks_per_loc": 0.15, "num_funs": 5, "comments_per_loc": 0.3, "tokens": 522, "ccn": 6, "ccn_per_function": 1.2, "tokens_per_function": 104.4, "ccn_per_token": 0.011494252873563218, "functions_per_token": 0.009578544061302681, "loc_per_token": 0.1417624521072797, "ccn_per_loc": 0.08108108108108109, "functions_per_loc": 0.06756756756756757, "tokens_per_loc": 7.054054054054054}, {"date": "2020-01", "loc": 191, "path": "test/ca/mcgill/cs/jetuml/persistence/TestJsonEncodingStateDiagram.java", "comments": 31, "loc_per_function": 17.36, "blanks_per_loc": 0.15, "num_funs": 11, "comments_per_loc": 0.16, "tokens": 1880, "ccn": 11, "ccn_per_function": 1.0, "tokens_per_function": 170.9090909090909, "ccn_per_token": 0.005851063829787234, "functions_per_token": 0.005851063829787234, "loc_per_token": 0.10159574468085106, "ccn_per_loc": 0.05759162303664921, "functions_per_loc": 0.05759162303664921, "tokens_per_loc": 9.842931937172775}, {"date": "2020-01", "loc": 112, "path": "test/ca/mcgill/cs/jetuml/persistence/PersistenceTestUtils.java", "comments": 30, "loc_per_function": 18.67, "blanks_per_loc": 0.08, "num_funs": 6, "comments_per_loc": 0.27, "tokens": 614, "ccn": 23, "ccn_per_function": 3.8333333333333335, "tokens_per_function": 102.33333333333333, "ccn_per_token": 0.03745928338762215, "functions_per_token": 0.009771986970684038, "loc_per_token": 0.18241042345276873, "ccn_per_loc": 0.20535714285714285, "functions_per_loc": 0.05357142857142857, "tokens_per_loc": 5.482142857142857}, {"date": "2020-01", "loc": 123, "path": "test/ca/mcgill/cs/jetuml/persistence/TestJsonEncodingUseCaseDiagram.java", "comments": 27, "loc_per_function": 13.67, "blanks_per_loc": 0.24, "num_funs": 9, "comments_per_loc": 0.22, "tokens": 1143, "ccn": 9, "ccn_per_function": 1.0, "tokens_per_function": 127.0, "ccn_per_token": 0.007874015748031496, "functions_per_token": 0.007874015748031496, "loc_per_token": 0.10761154855643044, "ccn_per_loc": 0.07317073170731707, "functions_per_loc": 0.07317073170731707, "tokens_per_loc": 9.292682926829269}, {"date": "2020-01", "loc": 48, "path": "src/ca/mcgill/cs/jetuml/UMLEditor.java", "comments": 32, "loc_per_function": 12, "blanks_per_loc": 0.23, "num_funs": 4, "comments_per_loc": 0.67, "tokens": 371, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 92.75, "ccn_per_token": 0.01078167115902965, "functions_per_token": 0.01078167115902965, "loc_per_token": 0.1293800539083558, "ccn_per_loc": 0.08333333333333333, "functions_per_loc": 0.08333333333333333, "tokens_per_loc": 7.729166666666667}, {"date": "2020-01", "loc": 59, "path": "src/ca/mcgill/cs/jetuml/geom/Dimension.java", "comments": 43, "loc_per_function": 8.43, "blanks_per_loc": 0.19, "num_funs": 7, "comments_per_loc": 0.73, "tokens": 269, "ccn": 13, "ccn_per_function": 1.8571428571428572, "tokens_per_function": 38.42857142857143, "ccn_per_token": 0.048327137546468404, "functions_per_token": 0.026022304832713755, "loc_per_token": 0.21933085501858737, "ccn_per_loc": 0.22033898305084745, "functions_per_loc": 0.11864406779661017, "tokens_per_loc": 4.559322033898305}, {"date": "2020-01", "loc": 78, "path": "src/ca/mcgill/cs/jetuml/geom/Point.java", "comments": 51, "loc_per_function": 7.8, "blanks_per_loc": 0.14, "num_funs": 10, "comments_per_loc": 0.65, "tokens": 301, "ccn": 15, "ccn_per_function": 1.5, "tokens_per_function": 30.1, "ccn_per_token": 0.04983388704318937, "functions_per_token": 0.03322259136212625, "loc_per_token": 0.2591362126245847, "ccn_per_loc": 0.19230769230769232, "functions_per_loc": 0.1282051282051282, "tokens_per_loc": 3.858974358974359}, {"date": "2020-01", "loc": 44, "path": "src/ca/mcgill/cs/jetuml/geom/Direction.java", "comments": 51, "loc_per_function": 7.33, "blanks_per_loc": 0.2, "num_funs": 6, "comments_per_loc": 1.16, "tokens": 278, "ccn": 7, "ccn_per_function": 1.1666666666666667, "tokens_per_function": 46.333333333333336, "ccn_per_token": 0.025179856115107913, "functions_per_token": 0.02158273381294964, "loc_per_token": 0.15827338129496402, "ccn_per_loc": 0.1590909090909091, "functions_per_loc": 0.13636363636363635, "tokens_per_loc": 6.318181818181818}, {"date": "2020-01", "loc": 19, "path": "src/ca/mcgill/cs/jetuml/geom/Util.java", "comments": 28, "loc_per_function": 9.5, "blanks_per_loc": 0.16, "num_funs": 2, "comments_per_loc": 1.47, "tokens": 72, "ccn": 4, "ccn_per_function": 2.0, "tokens_per_function": 36.0, "ccn_per_token": 0.05555555555555555, "functions_per_token": 0.027777777777777776, "loc_per_token": 0.2638888888888889, "ccn_per_loc": 0.21052631578947367, "functions_per_loc": 0.10526315789473684, "tokens_per_loc": 3.789473684210526}, {"date": "2020-01", "loc": 39, "path": "src/ca/mcgill/cs/jetuml/geom/Conversions.java", "comments": 51, "loc_per_function": 6.5, "blanks_per_loc": 0.18, "num_funs": 6, "comments_per_loc": 1.31, "tokens": 300, "ccn": 6, "ccn_per_function": 1.0, "tokens_per_function": 50.0, "ccn_per_token": 0.02, "functions_per_token": 0.02, "loc_per_token": 0.13, "ccn_per_loc": 0.15384615384615385, "functions_per_loc": 0.15384615384615385, "tokens_per_loc": 7.6923076923076925}, {"date": "2020-01", "loc": 87, "path": "src/ca/mcgill/cs/jetuml/geom/Line.java", "comments": 56, "loc_per_function": 7.25, "blanks_per_loc": 0.16, "num_funs": 12, "comments_per_loc": 0.64, "tokens": 385, "ccn": 18, "ccn_per_function": 1.5, "tokens_per_function": 32.083333333333336, "ccn_per_token": 0.046753246753246755, "functions_per_token": 0.03116883116883117, "loc_per_token": 0.22597402597402597, "ccn_per_loc": 0.20689655172413793, "functions_per_loc": 0.13793103448275862, "tokens_per_loc": 4.425287356321839}, {"date": "2020-01", "loc": 135, "path": "src/ca/mcgill/cs/jetuml/geom/Rectangle.java", "comments": 83, "loc_per_function": 7.94, "blanks_per_loc": 0.13, "num_funs": 17, "comments_per_loc": 0.61, "tokens": 726, "ccn": 34, "ccn_per_function": 2.0, "tokens_per_function": 42.705882352941174, "ccn_per_token": 0.046831955922865015, "functions_per_token": 0.023415977961432508, "loc_per_token": 0.1859504132231405, "ccn_per_loc": 0.2518518518518518, "functions_per_loc": 0.1259259259259259, "tokens_per_loc": 5.377777777777778}, {"date": "2020-01", "loc": 12, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/ObjectCollaborationEdgeViewer.java", "comments": 26, "loc_per_function": 12, "blanks_per_loc": 0.17, "num_funs": 1, "comments_per_loc": 2.17, "tokens": 92, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 92.0, "ccn_per_token": 0.010869565217391304, "functions_per_token": 0.010869565217391304, "loc_per_token": 0.13043478260869565, "ccn_per_loc": 0.08333333333333333, "functions_per_loc": 0.08333333333333333, "tokens_per_loc": 7.666666666666667}, {"date": "2020-01", "loc": 223, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/SegmentedEdgeViewer.java", "comments": 56, "loc_per_function": 20.27, "blanks_per_loc": 0.08, "num_funs": 11, "comments_per_loc": 0.25, "tokens": 2018, "ccn": 25, "ccn_per_function": 2.272727272727273, "tokens_per_function": 183.45454545454547, "ccn_per_token": 0.012388503468780971, "functions_per_token": 0.005450941526263627, "loc_per_token": 0.11050545094152626, "ccn_per_loc": 0.11210762331838565, "functions_per_loc": 0.04932735426008968, "tokens_per_loc": 9.04932735426009}, {"date": "2020-01", "loc": 29, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/UseCaseDependencyEdgeViewer.java", "comments": 27, "loc_per_function": 9.67, "blanks_per_loc": 0.14, "num_funs": 3, "comments_per_loc": 0.93, "tokens": 265, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 88.33333333333333, "ccn_per_token": 0.011320754716981131, "functions_per_token": 0.011320754716981131, "loc_per_token": 0.10943396226415095, "ccn_per_loc": 0.10344827586206896, "functions_per_loc": 0.10344827586206896, "tokens_per_loc": 9.137931034482758}, {"date": "2020-01", "loc": 72, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/EdgeViewerRegistry.java", "comments": 48, "loc_per_function": 9, "blanks_per_loc": 0.17, "num_funs": 8, "comments_per_loc": 0.67, "tokens": 699, "ccn": 9, "ccn_per_function": 1.125, "tokens_per_function": 87.375, "ccn_per_token": 0.012875536480686695, "functions_per_token": 0.011444921316165951, "loc_per_token": 0.10300429184549356, "ccn_per_loc": 0.125, "functions_per_loc": 0.1111111111111111, "tokens_per_loc": 9.708333333333334}, {"date": "2020-01", "loc": 10, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/UseCaseGeneralizationEdgeViewer.java", "comments": 26, "loc_per_function": 10, "blanks_per_loc": 0.2, "num_funs": 1, "comments_per_loc": 2.6, "tokens": 64, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 64.0, "ccn_per_token": 0.015625, "functions_per_token": 0.015625, "loc_per_token": 0.15625, "ccn_per_loc": 0.1, "functions_per_loc": 0.1, "tokens_per_loc": 6.4}, {"date": "2020-01", "loc": 10, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/NoteEdgeViewer.java", "comments": 26, "loc_per_function": 10, "blanks_per_loc": 0.2, "num_funs": 1, "comments_per_loc": 2.6, "tokens": 64, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 64.0, "ccn_per_token": 0.015625, "functions_per_token": 0.015625, "loc_per_token": 0.15625, "ccn_per_loc": 0.1, "functions_per_loc": 0.1, "tokens_per_loc": 6.4}, {"date": "2020-01", "loc": 55, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/ReturnEdgeViewer.java", "comments": 27, "loc_per_function": 18.33, "blanks_per_loc": 0.09, "num_funs": 3, "comments_per_loc": 0.49, "tokens": 579, "ccn": 5, "ccn_per_function": 1.6666666666666667, "tokens_per_function": 193.0, "ccn_per_token": 0.008635578583765112, "functions_per_token": 0.0051813471502590676, "loc_per_token": 0.09499136442141623, "ccn_per_loc": 0.09090909090909091, "functions_per_loc": 0.05454545454545454, "tokens_per_loc": 10.527272727272727}, {"date": "2020-01", "loc": 54, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/StraightEdgeViewer.java", "comments": 32, "loc_per_function": 13.5, "blanks_per_loc": 0.11, "num_funs": 4, "comments_per_loc": 0.59, "tokens": 456, "ccn": 5, "ccn_per_function": 1.25, "tokens_per_function": 114.0, "ccn_per_token": 0.010964912280701754, "functions_per_token": 0.008771929824561403, "loc_per_token": 0.11842105263157894, "ccn_per_loc": 0.09259259259259259, "functions_per_loc": 0.07407407407407407, "tokens_per_loc": 8.444444444444445}, {"date": "2020-01", "loc": 51, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/LabeledStraightEdgeViewer.java", "comments": 30, "loc_per_function": 12.75, "blanks_per_loc": 0.16, "num_funs": 4, "comments_per_loc": 0.59, "tokens": 423, "ccn": 7, "ccn_per_function": 1.75, "tokens_per_function": 105.75, "ccn_per_token": 0.016548463356973995, "functions_per_token": 0.009456264775413711, "loc_per_token": 0.12056737588652482, "ccn_per_loc": 0.13725490196078433, "functions_per_loc": 0.0784313725490196, "tokens_per_loc": 8.294117647058824}, {"date": "2020-01", "loc": 164, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/CallEdgeViewer.java", "comments": 29, "loc_per_function": 18.22, "blanks_per_loc": 0.1, "num_funs": 9, "comments_per_loc": 0.18, "tokens": 1462, "ccn": 17, "ccn_per_function": 1.8888888888888888, "tokens_per_function": 162.44444444444446, "ccn_per_token": 0.011627906976744186, "functions_per_token": 0.006155950752393981, "loc_per_token": 0.1121751025991792, "ccn_per_loc": 0.10365853658536585, "functions_per_loc": 0.054878048780487805, "tokens_per_loc": 8.914634146341463}, {"date": "2020-01", "loc": 26, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/GeneralizationEdgeViewer.java", "comments": 29, "loc_per_function": 13, "blanks_per_loc": 0.12, "num_funs": 2, "comments_per_loc": 1.12, "tokens": 192, "ccn": 3, "ccn_per_function": 1.5, "tokens_per_function": 96.0, "ccn_per_token": 0.015625, "functions_per_token": 0.010416666666666666, "loc_per_token": 0.13541666666666666, "ccn_per_loc": 0.11538461538461539, "functions_per_loc": 0.07692307692307693, "tokens_per_loc": 7.384615384615385}, {"date": "2020-01", "loc": 40, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/AssociationEdgeViewer.java", "comments": 32, "loc_per_function": 13.33, "blanks_per_loc": 0.1, "num_funs": 3, "comments_per_loc": 0.8, "tokens": 253, "ccn": 7, "ccn_per_function": 2.3333333333333335, "tokens_per_function": 84.33333333333333, "ccn_per_token": 0.02766798418972332, "functions_per_token": 0.011857707509881422, "loc_per_token": 0.15810276679841898, "ccn_per_loc": 0.175, "functions_per_loc": 0.075, "tokens_per_loc": 6.325}, {"date": "2020-01", "loc": 561, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/SegmentationStyleFactory.java", "comments": 96, "loc_per_function": 17, "blanks_per_loc": 0.1, "num_funs": 33, "comments_per_loc": 0.17, "tokens": 3773, "ccn": 119, "ccn_per_function": 3.606060606060606, "tokens_per_function": 114.33333333333333, "ccn_per_token": 0.03153988868274583, "functions_per_token": 0.008746355685131196, "loc_per_token": 0.14868804664723032, "ccn_per_loc": 0.21212121212121213, "functions_per_loc": 0.058823529411764705, "tokens_per_loc": 6.7254901960784315}, {"date": "2020-01", "loc": 78, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/AbstractEdgeViewer.java", "comments": 44, "loc_per_function": 13, "blanks_per_loc": 0.15, "num_funs": 6, "comments_per_loc": 0.56, "tokens": 664, "ccn": 8, "ccn_per_function": 1.3333333333333333, "tokens_per_function": 110.66666666666667, "ccn_per_token": 0.012048192771084338, "functions_per_token": 0.009036144578313253, "loc_per_token": 0.11746987951807229, "ccn_per_loc": 0.10256410256410256, "functions_per_loc": 0.07692307692307693, "tokens_per_loc": 8.512820512820513}, {"date": "2020-01", "loc": 114, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/ObjectReferenceEdgeViewer.java", "comments": 27, "loc_per_function": 16.29, "blanks_per_loc": 0.12, "num_funs": 7, "comments_per_loc": 0.24, "tokens": 1045, "ccn": 10, "ccn_per_function": 1.4285714285714286, "tokens_per_function": 149.28571428571428, "ccn_per_token": 0.009569377990430622, "functions_per_token": 0.0066985645933014355, "loc_per_token": 0.10909090909090909, "ccn_per_loc": 0.08771929824561403, "functions_per_loc": 0.06140350877192982, "tokens_per_loc": 9.166666666666666}, {"date": "2020-01", "loc": 49, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/SegmentationStyle.java", "comments": 50, "loc_per_function": 16.33, "blanks_per_loc": 0.18, "num_funs": 3, "comments_per_loc": 1.02, "tokens": 223, "ccn": 12, "ccn_per_function": 4.0, "tokens_per_function": 74.33333333333333, "ccn_per_token": 0.053811659192825115, "functions_per_token": 0.013452914798206279, "loc_per_token": 0.21973094170403587, "ccn_per_loc": 0.24489795918367346, "functions_per_loc": 0.061224489795918366, "tokens_per_loc": 4.551020408163265}, {"date": "2020-01", "loc": 362, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/StateTransitionEdgeViewer.java", "comments": 62, "loc_per_function": 17.24, "blanks_per_loc": 0.1, "num_funs": 21, "comments_per_loc": 0.17, "tokens": 2916, "ccn": 48, "ccn_per_function": 2.2857142857142856, "tokens_per_function": 138.85714285714286, "ccn_per_token": 0.01646090534979424, "functions_per_token": 0.00720164609053498, "loc_per_token": 0.12414266117969822, "ccn_per_loc": 0.13259668508287292, "functions_per_loc": 0.058011049723756904, "tokens_per_loc": 8.05524861878453}, {"date": "2020-01", "loc": 15, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/DependencyEdgeViewer.java", "comments": 26, "loc_per_function": 15, "blanks_per_loc": 0.13, "num_funs": 1, "comments_per_loc": 1.73, "tokens": 134, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 134.0, "ccn_per_token": 0.007462686567164179, "functions_per_token": 0.007462686567164179, "loc_per_token": 0.11194029850746269, "ccn_per_loc": 0.06666666666666667, "functions_per_loc": 0.06666666666666667, "tokens_per_loc": 8.933333333333334}, {"date": "2020-01", "loc": 10, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/UseCaseAssociationEdgeViewer.java", "comments": 26, "loc_per_function": 10, "blanks_per_loc": 0.2, "num_funs": 1, "comments_per_loc": 2.6, "tokens": 64, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 64.0, "ccn_per_token": 0.015625, "functions_per_token": 0.015625, "loc_per_token": 0.15625, "ccn_per_loc": 0.1, "functions_per_loc": 0.1, "tokens_per_loc": 6.4}, {"date": "2020-01", "loc": 16, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/EdgeViewer.java", "comments": 63, "loc_per_function": 16, "blanks_per_loc": 0.44, "num_funs": 0, "comments_per_loc": 3.94, "tokens": 139, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 139, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.11510791366906475, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 8.6875}, {"date": "2020-01", "loc": 27, "path": "src/ca/mcgill/cs/jetuml/viewers/edges/AggregationEdgeViewer.java", "comments": 29, "loc_per_function": 13.5, "blanks_per_loc": 0.11, "num_funs": 2, "comments_per_loc": 1.07, "tokens": 192, "ccn": 3, "ccn_per_function": 1.5, "tokens_per_function": 96.0, "ccn_per_token": 0.015625, "functions_per_token": 0.010416666666666666, "loc_per_token": 0.140625, "ccn_per_loc": 0.1111111111111111, "functions_per_loc": 0.07407407407407407, "tokens_per_loc": 7.111111111111111}, {"date": "2020-01", "loc": 60, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/NoteNodeViewer.java", "comments": 27, "loc_per_function": 15, "blanks_per_loc": 0.1, "num_funs": 4, "comments_per_loc": 0.45, "tokens": 638, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 159.5, "ccn_per_token": 0.006269592476489028, "functions_per_token": 0.006269592476489028, "loc_per_token": 0.09404388714733543, "ccn_per_loc": 0.06666666666666667, "functions_per_loc": 0.06666666666666667, "tokens_per_loc": 10.633333333333333}, {"date": "2020-01", "loc": 76, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/ImplicitParameterNodeViewer.java", "comments": 28, "loc_per_function": 12.67, "blanks_per_loc": 0.12, "num_funs": 6, "comments_per_loc": 0.37, "tokens": 696, "ccn": 9, "ccn_per_function": 1.5, "tokens_per_function": 116.0, "ccn_per_token": 0.01293103448275862, "functions_per_token": 0.008620689655172414, "loc_per_token": 0.10919540229885058, "ccn_per_loc": 0.11842105263157894, "functions_per_loc": 0.07894736842105263, "tokens_per_loc": 9.157894736842104}, {"date": "2020-01", "loc": 130, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/PackageNodeViewer.java", "comments": 37, "loc_per_function": 14.44, "blanks_per_loc": 0.15, "num_funs": 9, "comments_per_loc": 0.28, "tokens": 1171, "ccn": 17, "ccn_per_function": 1.8888888888888888, "tokens_per_function": 130.11111111111111, "ccn_per_token": 0.014517506404782237, "functions_per_token": 0.007685738684884714, "loc_per_token": 0.11101622544833475, "ccn_per_loc": 0.13076923076923078, "functions_per_loc": 0.06923076923076923, "tokens_per_loc": 9.007692307692308}, {"date": "2020-01", "loc": 88, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/ObjectNodeViewer.java", "comments": 32, "loc_per_function": 17.6, "blanks_per_loc": 0.08, "num_funs": 5, "comments_per_loc": 0.36, "tokens": 805, "ccn": 11, "ccn_per_function": 2.2, "tokens_per_function": 161.0, "ccn_per_token": 0.013664596273291925, "functions_per_token": 0.006211180124223602, "loc_per_token": 0.1093167701863354, "ccn_per_loc": 0.125, "functions_per_loc": 0.056818181818181816, "tokens_per_loc": 9.147727272727273}, {"date": "2020-01", "loc": 79, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/AbstractNodeViewer.java", "comments": 35, "loc_per_function": 19.75, "blanks_per_loc": 0.09, "num_funs": 4, "comments_per_loc": 0.44, "tokens": 598, "ccn": 10, "ccn_per_function": 2.5, "tokens_per_function": 149.5, "ccn_per_token": 0.016722408026755852, "functions_per_token": 0.006688963210702341, "loc_per_token": 0.13210702341137123, "ccn_per_loc": 0.12658227848101267, "functions_per_loc": 0.05063291139240506, "tokens_per_loc": 7.569620253164557}, {"date": "2020-01", "loc": 28, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/UseCaseNodeViewer.java", "comments": 23, "loc_per_function": 14, "blanks_per_loc": 0.14, "num_funs": 2, "comments_per_loc": 0.82, "tokens": 314, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 157.0, "ccn_per_token": 0.006369426751592357, "functions_per_token": 0.006369426751592357, "loc_per_token": 0.08917197452229299, "ccn_per_loc": 0.07142857142857142, "functions_per_loc": 0.07142857142857142, "tokens_per_loc": 11.214285714285714}, {"date": "2020-01", "loc": 95, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/TypeNodeViewer.java", "comments": 27, "loc_per_function": 15.83, "blanks_per_loc": 0.12, "num_funs": 6, "comments_per_loc": 0.28, "tokens": 878, "ccn": 12, "ccn_per_function": 2.0, "tokens_per_function": 146.33333333333334, "ccn_per_token": 0.01366742596810934, "functions_per_token": 0.00683371298405467, "loc_per_token": 0.1082004555808656, "ccn_per_loc": 0.12631578947368421, "functions_per_loc": 0.06315789473684211, "tokens_per_loc": 9.242105263157894}, {"date": "2020-01", "loc": 16, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/NodeViewer.java", "comments": 66, "loc_per_function": 16, "blanks_per_loc": 0.44, "num_funs": 0, "comments_per_loc": 4.12, "tokens": 142, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 142, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.11267605633802817, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 8.875}, {"date": "2020-01", "loc": 58, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/CircularStateNodeViewer.java", "comments": 26, "loc_per_function": 14.5, "blanks_per_loc": 0.12, "num_funs": 4, "comments_per_loc": 0.45, "tokens": 502, "ccn": 9, "ccn_per_function": 2.25, "tokens_per_function": 125.5, "ccn_per_token": 0.017928286852589643, "functions_per_token": 0.00796812749003984, "loc_per_token": 0.11553784860557768, "ccn_per_loc": 0.15517241379310345, "functions_per_loc": 0.06896551724137931, "tokens_per_loc": 8.655172413793103}, {"date": "2020-01", "loc": 28, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/StateNodeViewer.java", "comments": 23, "loc_per_function": 14, "blanks_per_loc": 0.14, "num_funs": 2, "comments_per_loc": 0.82, "tokens": 279, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 139.5, "ccn_per_token": 0.007168458781362007, "functions_per_token": 0.007168458781362007, "loc_per_token": 0.1003584229390681, "ccn_per_loc": 0.07142857142857142, "functions_per_loc": 0.07142857142857142, "tokens_per_loc": 9.964285714285714}, {"date": "2020-01", "loc": 141, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/CallNodeViewer.java", "comments": 37, "loc_per_function": 23.5, "blanks_per_loc": 0.07, "num_funs": 6, "comments_per_loc": 0.26, "tokens": 1032, "ccn": 21, "ccn_per_function": 3.5, "tokens_per_function": 172.0, "ccn_per_token": 0.020348837209302327, "functions_per_token": 0.005813953488372093, "loc_per_token": 0.13662790697674418, "ccn_per_loc": 0.14893617021276595, "functions_per_loc": 0.0425531914893617, "tokens_per_loc": 7.319148936170213}, {"date": "2020-01", "loc": 74, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/NodeViewerRegistry.java", "comments": 49, "loc_per_function": 9.25, "blanks_per_loc": 0.16, "num_funs": 8, "comments_per_loc": 0.66, "tokens": 735, "ccn": 9, "ccn_per_function": 1.125, "tokens_per_function": 91.875, "ccn_per_token": 0.012244897959183673, "functions_per_token": 0.010884353741496598, "loc_per_token": 0.10068027210884353, "ccn_per_loc": 0.12162162162162163, "functions_per_loc": 0.10810810810810811, "tokens_per_loc": 9.932432432432432}, {"date": "2020-01", "loc": 84, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/FieldNodeViewer.java", "comments": 35, "loc_per_function": 12, "blanks_per_loc": 0.11, "num_funs": 7, "comments_per_loc": 0.42, "tokens": 789, "ccn": 10, "ccn_per_function": 1.4285714285714286, "tokens_per_function": 112.71428571428571, "ccn_per_token": 0.012674271229404309, "functions_per_token": 0.008871989860583017, "loc_per_token": 0.10646387832699619, "ccn_per_loc": 0.11904761904761904, "functions_per_loc": 0.08333333333333333, "tokens_per_loc": 9.392857142857142}, {"date": "2020-01", "loc": 66, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/ActorNodeViewer.java", "comments": 23, "loc_per_function": 22, "blanks_per_loc": 0.12, "num_funs": 3, "comments_per_loc": 0.35, "tokens": 729, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 243.0, "ccn_per_token": 0.00411522633744856, "functions_per_token": 0.00411522633744856, "loc_per_token": 0.09053497942386832, "ccn_per_loc": 0.045454545454545456, "functions_per_loc": 0.045454545454545456, "tokens_per_loc": 11.045454545454545}, {"date": "2020-01", "loc": 29, "path": "src/ca/mcgill/cs/jetuml/viewers/nodes/PointNodeViewer.java", "comments": 24, "loc_per_function": 7.25, "blanks_per_loc": 0.21, "num_funs": 4, "comments_per_loc": 0.83, "tokens": 193, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 48.25, "ccn_per_token": 0.02072538860103627, "functions_per_token": 0.02072538860103627, "loc_per_token": 0.15025906735751296, "ccn_per_loc": 0.13793103448275862, "functions_per_loc": 0.13793103448275862, "tokens_per_loc": 6.655172413793103}, {"date": "2020-01", "loc": 56, "path": "src/ca/mcgill/cs/jetuml/views/SequenceDiagramViewer.java", "comments": 32, "loc_per_function": 28, "blanks_per_loc": 0.07, "num_funs": 2, "comments_per_loc": 0.57, "tokens": 337, "ccn": 12, "ccn_per_function": 6.0, "tokens_per_function": 168.5, "ccn_per_token": 0.03560830860534125, "functions_per_token": 0.005934718100890208, "loc_per_token": 0.1661721068249258, "ccn_per_loc": 0.21428571428571427, "functions_per_loc": 0.03571428571428571, "tokens_per_loc": 6.017857142857143}, {"date": "2020-01", "loc": 124, "path": "src/ca/mcgill/cs/jetuml/views/DiagramViewer.java", "comments": 75, "loc_per_function": 17.71, "blanks_per_loc": 0.08, "num_funs": 7, "comments_per_loc": 0.6, "tokens": 737, "ccn": 28, "ccn_per_function": 4.0, "tokens_per_function": 105.28571428571429, "ccn_per_token": 0.037991858887381276, "functions_per_token": 0.009497964721845319, "loc_per_token": 0.16824966078697423, "ccn_per_loc": 0.22580645161290322, "functions_per_loc": 0.056451612903225805, "tokens_per_loc": 5.943548387096774}, {"date": "2020-01", "loc": 115, "path": "src/ca/mcgill/cs/jetuml/views/StringViewer.java", "comments": 50, "loc_per_function": 23, "blanks_per_loc": 0.14, "num_funs": 5, "comments_per_loc": 0.43, "tokens": 760, "ccn": 16, "ccn_per_function": 3.2, "tokens_per_function": 152.0, "ccn_per_token": 0.021052631578947368, "functions_per_token": 0.006578947368421052, "loc_per_token": 0.1513157894736842, "ccn_per_loc": 0.1391304347826087, "functions_per_loc": 0.043478260869565216, "tokens_per_loc": 6.608695652173913}, {"date": "2020-01", "loc": 10, "path": "src/ca/mcgill/cs/jetuml/views/ArrowHead.java", "comments": 26, "loc_per_function": 10, "blanks_per_loc": 0.4, "num_funs": 1, "comments_per_loc": 2.6, "tokens": 51, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 51.0, "ccn_per_token": 0.0196078431372549, "functions_per_token": 0.0196078431372549, "loc_per_token": 0.19607843137254902, "ccn_per_loc": 0.1, "functions_per_loc": 0.1, "tokens_per_loc": 5.1}, {"date": "2020-01", "loc": 32, "path": "src/ca/mcgill/cs/jetuml/views/ImageCreator.java", "comments": 30, "loc_per_function": 16, "blanks_per_loc": 0.12, "num_funs": 2, "comments_per_loc": 0.94, "tokens": 283, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 141.5, "ccn_per_token": 0.007067137809187279, "functions_per_token": 0.007067137809187279, "loc_per_token": 0.11307420494699646, "ccn_per_loc": 0.0625, "functions_per_loc": 0.0625, "tokens_per_loc": 8.84375}, {"date": "2020-01", "loc": 110, "path": "src/ca/mcgill/cs/jetuml/views/ToolGraphics.java", "comments": 91, "loc_per_function": 11, "blanks_per_loc": 0.12, "num_funs": 10, "comments_per_loc": 0.83, "tokens": 1069, "ccn": 15, "ccn_per_function": 1.5, "tokens_per_function": 106.9, "ccn_per_token": 0.01403180542563143, "functions_per_token": 0.009354536950420954, "loc_per_token": 0.1028999064546305, "ccn_per_loc": 0.13636363636363635, "functions_per_loc": 0.09090909090909091, "tokens_per_loc": 9.718181818181819}, {"date": "2020-01", "loc": 76, "path": "src/ca/mcgill/cs/jetuml/views/Grid.java", "comments": 56, "loc_per_function": 12.67, "blanks_per_loc": 0.14, "num_funs": 6, "comments_per_loc": 0.74, "tokens": 575, "ccn": 10, "ccn_per_function": 1.6666666666666667, "tokens_per_function": 95.83333333333333, "ccn_per_token": 0.017391304347826087, "functions_per_token": 0.010434782608695653, "loc_per_token": 0.13217391304347825, "ccn_per_loc": 0.13157894736842105, "functions_per_loc": 0.07894736842105263, "tokens_per_loc": 7.565789473684211}, {"date": "2020-01", "loc": 78, "path": "src/ca/mcgill/cs/jetuml/views/ViewUtils.java", "comments": 94, "loc_per_function": 9.75, "blanks_per_loc": 0.13, "num_funs": 8, "comments_per_loc": 1.21, "tokens": 790, "ccn": 14, "ccn_per_function": 1.75, "tokens_per_function": 98.75, "ccn_per_token": 0.017721518987341773, "functions_per_token": 0.010126582278481013, "loc_per_token": 0.09873417721518987, "ccn_per_loc": 0.1794871794871795, "functions_per_loc": 0.10256410256410256, "tokens_per_loc": 10.128205128205128}, {"date": "2020-01", "loc": 52, "path": "src/ca/mcgill/cs/jetuml/views/ViewerUtilities.java", "comments": 46, "loc_per_function": 13, "blanks_per_loc": 0.1, "num_funs": 4, "comments_per_loc": 0.88, "tokens": 291, "ccn": 8, "ccn_per_function": 2.0, "tokens_per_function": 72.75, "ccn_per_token": 0.027491408934707903, "functions_per_token": 0.013745704467353952, "loc_per_token": 0.17869415807560138, "ccn_per_loc": 0.15384615384615385, "functions_per_loc": 0.07692307692307693, "tokens_per_loc": 5.596153846153846}, {"date": "2020-01", "loc": 14, "path": "src/ca/mcgill/cs/jetuml/views/LineStyle.java", "comments": 28, "loc_per_function": 7, "blanks_per_loc": 0.36, "num_funs": 2, "comments_per_loc": 2, "tokens": 71, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 35.5, "ccn_per_token": 0.028169014084507043, "functions_per_token": 0.028169014084507043, "loc_per_token": 0.19718309859154928, "ccn_per_loc": 0.14285714285714285, "functions_per_loc": 0.14285714285714285, "tokens_per_loc": 5.071428571428571}, {"date": "2020-01", "loc": 74, "path": "src/ca/mcgill/cs/jetuml/views/ArrowHeadView.java", "comments": 40, "loc_per_function": 24.67, "blanks_per_loc": 0.14, "num_funs": 3, "comments_per_loc": 0.54, "tokens": 741, "ccn": 11, "ccn_per_function": 3.6666666666666665, "tokens_per_function": 247.0, "ccn_per_token": 0.014844804318488529, "functions_per_token": 0.004048582995951417, "loc_per_token": 0.09986504723346828, "ccn_per_loc": 0.14864864864864866, "functions_per_loc": 0.04054054054054054, "tokens_per_loc": 10.013513513513514}, {"date": "2020-01", "loc": 46, "path": "src/ca/mcgill/cs/jetuml/diagram/ClassDiagram.java", "comments": 23, "loc_per_function": 11.5, "blanks_per_loc": 0.2, "num_funs": 4, "comments_per_loc": 0.5, "tokens": 325, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 81.25, "ccn_per_token": 0.012307692307692308, "functions_per_token": 0.012307692307692308, "loc_per_token": 0.14153846153846153, "ccn_per_loc": 0.08695652173913043, "functions_per_loc": 0.08695652173913043, "tokens_per_loc": 7.065217391304348}, {"date": "2020-01", "loc": 45, "path": "src/ca/mcgill/cs/jetuml/diagram/ObjectDiagram.java", "comments": 23, "loc_per_function": 11.25, "blanks_per_loc": 0.27, "num_funs": 4, "comments_per_loc": 0.51, "tokens": 297, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 74.25, "ccn_per_token": 0.013468013468013467, "functions_per_token": 0.013468013468013467, "loc_per_token": 0.15151515151515152, "ccn_per_loc": 0.08888888888888889, "functions_per_loc": 0.08888888888888889, "tokens_per_loc": 6.6}, {"date": "2020-01", "loc": 39, "path": "src/ca/mcgill/cs/jetuml/diagram/UseCaseDiagram.java", "comments": 23, "loc_per_function": 9.75, "blanks_per_loc": 0.21, "num_funs": 4, "comments_per_loc": 0.59, "tokens": 280, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 70.0, "ccn_per_token": 0.014285714285714285, "functions_per_token": 0.014285714285714285, "loc_per_token": 0.1392857142857143, "ccn_per_loc": 0.10256410256410256, "functions_per_loc": 0.10256410256410256, "tokens_per_loc": 7.17948717948718}, {"date": "2020-01", "loc": 35, "path": "src/ca/mcgill/cs/jetuml/diagram/Property.java", "comments": 53, "loc_per_function": 7, "blanks_per_loc": 0.2, "num_funs": 5, "comments_per_loc": 1.51, "tokens": 167, "ccn": 7, "ccn_per_function": 1.4, "tokens_per_function": 33.4, "ccn_per_token": 0.041916167664670656, "functions_per_token": 0.029940119760479042, "loc_per_token": 0.20958083832335328, "ccn_per_loc": 0.2, "functions_per_loc": 0.14285714285714285, "tokens_per_loc": 4.771428571428571}, {"date": "2020-01", "loc": 32, "path": "src/ca/mcgill/cs/jetuml/diagram/AbstractDiagramElement.java", "comments": 38, "loc_per_function": 8, "blanks_per_loc": 0.16, "num_funs": 4, "comments_per_loc": 1.19, "tokens": 103, "ccn": 5, "ccn_per_function": 1.25, "tokens_per_function": 25.75, "ccn_per_token": 0.04854368932038835, "functions_per_token": 0.038834951456310676, "loc_per_token": 0.3106796116504854, "ccn_per_loc": 0.15625, "functions_per_loc": 0.125, "tokens_per_loc": 3.21875}, {"date": "2020-01", "loc": 64, "path": "src/ca/mcgill/cs/jetuml/diagram/Properties.java", "comments": 71, "loc_per_function": 10.67, "blanks_per_loc": 0.12, "num_funs": 6, "comments_per_loc": 1.11, "tokens": 382, "ccn": 18, "ccn_per_function": 3.0, "tokens_per_function": 63.666666666666664, "ccn_per_token": 0.04712041884816754, "functions_per_token": 0.015706806282722512, "loc_per_token": 0.16753926701570682, "ccn_per_loc": 0.28125, "functions_per_loc": 0.09375, "tokens_per_loc": 5.96875}, {"date": "2020-01", "loc": 140, "path": "src/ca/mcgill/cs/jetuml/diagram/Diagram.java", "comments": 113, "loc_per_function": 8.75, "blanks_per_loc": 0.16, "num_funs": 16, "comments_per_loc": 0.81, "tokens": 679, "ccn": 38, "ccn_per_function": 2.375, "tokens_per_function": 42.4375, "ccn_per_token": 0.055964653902798235, "functions_per_token": 0.023564064801178203, "loc_per_token": 0.20618556701030927, "ccn_per_loc": 0.2714285714285714, "functions_per_loc": 0.11428571428571428, "tokens_per_loc": 4.85}, {"date": "2020-01", "loc": 32, "path": "src/ca/mcgill/cs/jetuml/diagram/SequenceDiagram.java", "comments": 23, "loc_per_function": 8, "blanks_per_loc": 0.25, "num_funs": 4, "comments_per_loc": 0.72, "tokens": 225, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 56.25, "ccn_per_token": 0.017777777777777778, "functions_per_token": 0.017777777777777778, "loc_per_token": 0.14222222222222222, "ccn_per_loc": 0.125, "functions_per_loc": 0.125, "tokens_per_loc": 7.03125}, {"date": "2020-01", "loc": 33, "path": "src/ca/mcgill/cs/jetuml/diagram/StateDiagram.java", "comments": 23, "loc_per_function": 8.25, "blanks_per_loc": 0.24, "num_funs": 4, "comments_per_loc": 0.7, "tokens": 245, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 61.25, "ccn_per_token": 0.0163265306122449, "functions_per_token": 0.0163265306122449, "loc_per_token": 0.1346938775510204, "ccn_per_loc": 0.12121212121212122, "functions_per_loc": 0.12121212121212122, "tokens_per_loc": 7.424242424242424}, {"date": "2020-01", "loc": 7, "path": "src/ca/mcgill/cs/jetuml/diagram/DiagramData.java", "comments": 34, "loc_per_function": 7, "blanks_per_loc": 0.43, "num_funs": 0, "comments_per_loc": 4.86, "tokens": 40, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 40, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.175, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 5.714285714285714}, {"date": "2020-01", "loc": 73, "path": "src/ca/mcgill/cs/jetuml/diagram/DiagramType.java", "comments": 46, "loc_per_function": 12.17, "blanks_per_loc": 0.14, "num_funs": 6, "comments_per_loc": 0.63, "tokens": 437, "ccn": 10, "ccn_per_function": 1.6666666666666667, "tokens_per_function": 72.83333333333333, "ccn_per_token": 0.02288329519450801, "functions_per_token": 0.013729977116704805, "loc_per_token": 0.16704805491990846, "ccn_per_loc": 0.136986301369863, "functions_per_loc": 0.0821917808219178, "tokens_per_loc": 5.986301369863014}, {"date": "2020-01", "loc": 121, "path": "src/ca/mcgill/cs/jetuml/diagram/ControlFlow.java", "comments": 92, "loc_per_function": 11, "blanks_per_loc": 0.13, "num_funs": 11, "comments_per_loc": 0.76, "tokens": 751, "ccn": 30, "ccn_per_function": 2.727272727272727, "tokens_per_function": 68.27272727272727, "ccn_per_token": 0.03994673768308921, "functions_per_token": 0.014647137150466045, "loc_per_token": 0.1611185086551265, "ccn_per_loc": 0.24793388429752067, "functions_per_loc": 0.09090909090909091, "tokens_per_loc": 6.206611570247934}, {"date": "2020-01", "loc": 13, "path": "src/ca/mcgill/cs/jetuml/diagram/Node.java", "comments": 53, "loc_per_function": 13, "blanks_per_loc": 0.77, "num_funs": 0, "comments_per_loc": 4.08, "tokens": 85, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 85, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.15294117647058825, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 6.538461538461538}, {"date": "2020-01", "loc": 9, "path": "src/ca/mcgill/cs/jetuml/diagram/Edge.java", "comments": 44, "loc_per_function": 9, "blanks_per_loc": 0.78, "num_funs": 0, "comments_per_loc": 4.89, "tokens": 51, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 51, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.17647058823529413, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 5.666666666666667}, {"date": "2020-01", "loc": 5, "path": "src/ca/mcgill/cs/jetuml/diagram/DiagramElement.java", "comments": 26, "loc_per_function": 5, "blanks_per_loc": 0.2, "num_funs": 0, "comments_per_loc": 5.2, "tokens": 23, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 23, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.21739130434782608, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 4.6}, {"date": "2020-01", "loc": 22, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/AssociationEdge.java", "comments": 36, "loc_per_function": 7.33, "blanks_per_loc": 0.32, "num_funs": 3, "comments_per_loc": 1.64, "tokens": 107, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 35.666666666666664, "ccn_per_token": 0.028037383177570093, "functions_per_token": 0.028037383177570093, "loc_per_token": 0.205607476635514, "ccn_per_loc": 0.13636363636363635, "functions_per_loc": 0.13636363636363635, "tokens_per_loc": 4.863636363636363}, {"date": "2020-01", "loc": 29, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/ThreeLabelEdge.java", "comments": 35, "loc_per_function": 5.8, "blanks_per_loc": 0.21, "num_funs": 5, "comments_per_loc": 1.21, "tokens": 142, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 28.4, "ccn_per_token": 0.035211267605633804, "functions_per_token": 0.035211267605633804, "loc_per_token": 0.20422535211267606, "ccn_per_loc": 0.1724137931034483, "functions_per_loc": 0.1724137931034483, "tokens_per_loc": 4.896551724137931}, {"date": "2020-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/UseCaseGeneralizationEdge.java", "comments": 26, "loc_per_function": 3, "blanks_per_loc": 1.33, "num_funs": 0, "comments_per_loc": 8.67, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2020-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/DependencyEdge.java", "comments": 27, "loc_per_function": 3, "blanks_per_loc": 1, "num_funs": 0, "comments_per_loc": 9, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2020-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/StateTransitionEdge.java", "comments": 25, "loc_per_function": 3, "blanks_per_loc": 0.67, "num_funs": 0, "comments_per_loc": 8.33, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2020-01", "loc": 27, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/CallEdge.java", "comments": 40, "loc_per_function": 5.4, "blanks_per_loc": 0.37, "num_funs": 5, "comments_per_loc": 1.48, "tokens": 152, "ccn": 6, "ccn_per_function": 1.2, "tokens_per_function": 30.4, "ccn_per_token": 0.039473684210526314, "functions_per_token": 0.03289473684210526, "loc_per_token": 0.17763157894736842, "ccn_per_loc": 0.2222222222222222, "functions_per_loc": 0.18518518518518517, "tokens_per_loc": 5.62962962962963}, {"date": "2020-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/ObjectCollaborationEdge.java", "comments": 27, "loc_per_function": 3, "blanks_per_loc": 1, "num_funs": 0, "comments_per_loc": 9, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2020-01", "loc": 50, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/AbstractEdge.java", "comments": 23, "loc_per_function": 8.33, "blanks_per_loc": 0.16, "num_funs": 6, "comments_per_loc": 0.46, "tokens": 238, "ccn": 9, "ccn_per_function": 1.5, "tokens_per_function": 39.666666666666664, "ccn_per_token": 0.037815126050420166, "functions_per_token": 0.025210084033613446, "loc_per_token": 0.21008403361344538, "ccn_per_loc": 0.18, "functions_per_loc": 0.12, "tokens_per_loc": 4.76}, {"date": "2020-01", "loc": 19, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/SingleLabelEdge.java", "comments": 31, "loc_per_function": 6.33, "blanks_per_loc": 0.21, "num_funs": 3, "comments_per_loc": 1.63, "tokens": 88, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 29.333333333333332, "ccn_per_token": 0.03409090909090909, "functions_per_token": 0.03409090909090909, "loc_per_token": 0.2159090909090909, "ccn_per_loc": 0.15789473684210525, "functions_per_loc": 0.15789473684210525, "tokens_per_loc": 4.631578947368421}, {"date": "2020-01", "loc": 27, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/AggregationEdge.java", "comments": 44, "loc_per_function": 5.4, "blanks_per_loc": 0.33, "num_funs": 5, "comments_per_loc": 1.63, "tokens": 121, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 24.2, "ccn_per_token": 0.04132231404958678, "functions_per_token": 0.04132231404958678, "loc_per_token": 0.2231404958677686, "ccn_per_loc": 0.18518518518518517, "functions_per_loc": 0.18518518518518517, "tokens_per_loc": 4.481481481481482}, {"date": "2020-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/NoteEdge.java", "comments": 23, "loc_per_function": 3, "blanks_per_loc": 0.67, "num_funs": 0, "comments_per_loc": 7.67, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2020-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/UseCaseAssociationEdge.java", "comments": 26, "loc_per_function": 3, "blanks_per_loc": 1, "num_funs": 0, "comments_per_loc": 8.67, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2020-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/ObjectReferenceEdge.java", "comments": 23, "loc_per_function": 3, "blanks_per_loc": 0.67, "num_funs": 0, "comments_per_loc": 7.67, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2020-01", "loc": 27, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/GeneralizationEdge.java", "comments": 45, "loc_per_function": 5.4, "blanks_per_loc": 0.33, "num_funs": 5, "comments_per_loc": 1.67, "tokens": 121, "ccn": 5, "ccn_per_function": 1.0, "tokens_per_function": 24.2, "ccn_per_token": 0.04132231404958678, "functions_per_token": 0.04132231404958678, "loc_per_token": 0.2231404958677686, "ccn_per_loc": 0.18518518518518517, "functions_per_loc": 0.18518518518518517, "tokens_per_loc": 4.481481481481482}, {"date": "2020-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/ReturnEdge.java", "comments": 23, "loc_per_function": 3, "blanks_per_loc": 0.67, "num_funs": 0, "comments_per_loc": 7.67, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2020-01", "loc": 30, "path": "src/ca/mcgill/cs/jetuml/diagram/edges/UseCaseDependencyEdge.java", "comments": 40, "loc_per_function": 5, "blanks_per_loc": 0.37, "num_funs": 6, "comments_per_loc": 1.33, "tokens": 146, "ccn": 6, "ccn_per_function": 1.0, "tokens_per_function": 24.333333333333332, "ccn_per_token": 0.0410958904109589, "functions_per_token": 0.0410958904109589, "loc_per_token": 0.2054794520547945, "ccn_per_loc": 0.2, "functions_per_loc": 0.2, "tokens_per_loc": 4.866666666666666}, {"date": "2020-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/NoteNode.java", "comments": 24, "loc_per_function": 3, "blanks_per_loc": 0.67, "num_funs": 0, "comments_per_loc": 8, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2020-01", "loc": 10, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/ParentNode.java", "comments": 46, "loc_per_function": 10, "blanks_per_loc": 0.6, "num_funs": 0, "comments_per_loc": 4.6, "tokens": 72, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 72, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.1388888888888889, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.2}, {"date": "2020-01", "loc": 24, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/ClassNode.java", "comments": 36, "loc_per_function": 6, "blanks_per_loc": 0.25, "num_funs": 4, "comments_per_loc": 1.5, "tokens": 106, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 26.5, "ccn_per_token": 0.03773584905660377, "functions_per_token": 0.03773584905660377, "loc_per_token": 0.22641509433962265, "ccn_per_loc": 0.16666666666666666, "functions_per_loc": 0.16666666666666666, "tokens_per_loc": 4.416666666666667}, {"date": "2020-01", "loc": 102, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/PackageNode.java", "comments": 40, "loc_per_function": 7.29, "blanks_per_loc": 0.19, "num_funs": 14, "comments_per_loc": 0.39, "tokens": 491, "ccn": 19, "ccn_per_function": 1.3571428571428572, "tokens_per_function": 35.07142857142857, "ccn_per_token": 0.038696537678207736, "functions_per_token": 0.028513238289205704, "loc_per_token": 0.20773930753564154, "ccn_per_loc": 0.18627450980392157, "functions_per_loc": 0.13725490196078433, "tokens_per_loc": 4.813725490196078}, {"date": "2020-01", "loc": 60, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/AbstractNode.java", "comments": 23, "loc_per_function": 6.67, "blanks_per_loc": 0.2, "num_funs": 9, "comments_per_loc": 0.38, "tokens": 356, "ccn": 9, "ccn_per_function": 1.0, "tokens_per_function": 39.55555555555556, "ccn_per_token": 0.025280898876404494, "functions_per_token": 0.025280898876404494, "loc_per_token": 0.16853932584269662, "ccn_per_loc": 0.15, "functions_per_loc": 0.15, "tokens_per_loc": 5.933333333333334}, {"date": "2020-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/UseCaseNode.java", "comments": 23, "loc_per_function": 3, "blanks_per_loc": 0.67, "num_funs": 0, "comments_per_loc": 7.67, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2020-01", "loc": 8, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/InterfaceNode.java", "comments": 26, "loc_per_function": 8, "blanks_per_loc": 0.25, "num_funs": 1, "comments_per_loc": 3.25, "tokens": 31, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 31.0, "ccn_per_token": 0.03225806451612903, "functions_per_token": 0.03225806451612903, "loc_per_token": 0.25806451612903225, "ccn_per_loc": 0.125, "functions_per_loc": 0.125, "tokens_per_loc": 3.875}, {"date": "2020-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/FinalStateNode.java", "comments": 23, "loc_per_function": 3, "blanks_per_loc": 1, "num_funs": 0, "comments_per_loc": 7.67, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2020-01", "loc": 8, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/ChildNode.java", "comments": 42, "loc_per_function": 8, "blanks_per_loc": 0.5, "num_funs": 0, "comments_per_loc": 5.25, "tokens": 50, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 50, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.16, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 6.25}, {"date": "2020-01", "loc": 51, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/ImplicitParameterNode.java", "comments": 29, "loc_per_function": 10.2, "blanks_per_loc": 0.16, "num_funs": 5, "comments_per_loc": 0.57, "tokens": 245, "ccn": 8, "ccn_per_function": 1.6, "tokens_per_function": 49.0, "ccn_per_token": 0.0326530612244898, "functions_per_token": 0.02040816326530612, "loc_per_token": 0.20816326530612245, "ccn_per_loc": 0.1568627450980392, "functions_per_loc": 0.09803921568627451, "tokens_per_loc": 4.803921568627451}, {"date": "2020-01", "loc": 55, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/CallNode.java", "comments": 44, "loc_per_function": 6.88, "blanks_per_loc": 0.22, "num_funs": 8, "comments_per_loc": 0.8, "tokens": 267, "ccn": 13, "ccn_per_function": 1.625, "tokens_per_function": 33.375, "ccn_per_token": 0.04868913857677903, "functions_per_token": 0.0299625468164794, "loc_per_token": 0.20599250936329588, "ccn_per_loc": 0.23636363636363636, "functions_per_loc": 0.14545454545454545, "tokens_per_loc": 4.8545454545454545}, {"date": "2020-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/StateNode.java", "comments": 23, "loc_per_function": 3, "blanks_per_loc": 0.67, "num_funs": 0, "comments_per_loc": 7.67, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2020-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/PointNode.java", "comments": 25, "loc_per_function": 3, "blanks_per_loc": 0.67, "num_funs": 0, "comments_per_loc": 8.33, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2020-01", "loc": 36, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/FieldNode.java", "comments": 31, "loc_per_function": 6, "blanks_per_loc": 0.25, "num_funs": 6, "comments_per_loc": 0.86, "tokens": 145, "ccn": 7, "ccn_per_function": 1.1666666666666667, "tokens_per_function": 24.166666666666668, "ccn_per_token": 0.04827586206896552, "functions_per_token": 0.041379310344827586, "loc_per_token": 0.2482758620689655, "ccn_per_loc": 0.19444444444444445, "functions_per_loc": 0.16666666666666666, "tokens_per_loc": 4.027777777777778}, {"date": "2020-01", "loc": 9, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/ActorNode.java", "comments": 26, "loc_per_function": 9, "blanks_per_loc": 0.33, "num_funs": 1, "comments_per_loc": 2.89, "tokens": 40, "ccn": 1, "ccn_per_function": 1.0, "tokens_per_function": 40.0, "ccn_per_token": 0.025, "functions_per_token": 0.025, "loc_per_token": 0.225, "ccn_per_loc": 0.1111111111111111, "functions_per_loc": 0.1111111111111111, "tokens_per_loc": 4.444444444444445}, {"date": "2020-01", "loc": 3, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/InitialStateNode.java", "comments": 23, "loc_per_function": 3, "blanks_per_loc": 1, "num_funs": 0, "comments_per_loc": 7.67, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.14285714285714285, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 7.0}, {"date": "2020-01", "loc": 41, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/TypeNode.java", "comments": 38, "loc_per_function": 5.86, "blanks_per_loc": 0.22, "num_funs": 7, "comments_per_loc": 0.93, "tokens": 157, "ccn": 8, "ccn_per_function": 1.1428571428571428, "tokens_per_function": 22.428571428571427, "ccn_per_token": 0.050955414012738856, "functions_per_token": 0.044585987261146494, "loc_per_token": 0.2611464968152866, "ccn_per_loc": 0.1951219512195122, "functions_per_loc": 0.17073170731707318, "tokens_per_loc": 3.8292682926829267}, {"date": "2020-01", "loc": 19, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/NamedNode.java", "comments": 31, "loc_per_function": 6.33, "blanks_per_loc": 0.26, "num_funs": 3, "comments_per_loc": 1.63, "tokens": 88, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 29.333333333333332, "ccn_per_token": 0.03409090909090909, "functions_per_token": 0.03409090909090909, "loc_per_token": 0.2159090909090909, "ccn_per_loc": 0.15789473684210525, "functions_per_loc": 0.15789473684210525, "tokens_per_loc": 4.631578947368421}, {"date": "2020-01", "loc": 62, "path": "src/ca/mcgill/cs/jetuml/diagram/nodes/ObjectNode.java", "comments": 29, "loc_per_function": 10.33, "blanks_per_loc": 0.18, "num_funs": 6, "comments_per_loc": 0.47, "tokens": 314, "ccn": 10, "ccn_per_function": 1.6666666666666667, "tokens_per_function": 52.333333333333336, "ccn_per_token": 0.03184713375796178, "functions_per_token": 0.01910828025477707, "loc_per_token": 0.19745222929936307, "ccn_per_loc": 0.16129032258064516, "functions_per_loc": 0.0967741935483871, "tokens_per_loc": 5.064516129032258}, {"date": "2020-01", "loc": 26, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/StateDiagramBuilder.java", "comments": 29, "loc_per_function": 13, "blanks_per_loc": 0.15, "num_funs": 2, "comments_per_loc": 1.12, "tokens": 213, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 106.5, "ccn_per_token": 0.009389671361502348, "functions_per_token": 0.009389671361502348, "loc_per_token": 0.12206572769953052, "ccn_per_loc": 0.07692307692307693, "functions_per_loc": 0.07692307692307693, "tokens_per_loc": 8.192307692307692}, {"date": "2020-01", "loc": 120, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/ObjectDiagramBuilder.java", "comments": 35, "loc_per_function": 17.14, "blanks_per_loc": 0.1, "num_funs": 7, "comments_per_loc": 0.29, "tokens": 728, "ccn": 20, "ccn_per_function": 2.857142857142857, "tokens_per_function": 104.0, "ccn_per_token": 0.027472527472527472, "functions_per_token": 0.009615384615384616, "loc_per_token": 0.16483516483516483, "ccn_per_loc": 0.16666666666666666, "functions_per_loc": 0.058333333333333334, "tokens_per_loc": 6.066666666666666}, {"date": "2020-01", "loc": 6, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/DiagramOperation.java", "comments": 31, "loc_per_function": 6, "blanks_per_loc": 0.33, "num_funs": 0, "comments_per_loc": 5.17, "tokens": 28, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 28, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.21428571428571427, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 4.666666666666667}, {"date": "2020-01", "loc": 339, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/DiagramBuilder.java", "comments": 153, "loc_per_function": 17.84, "blanks_per_loc": 0.1, "num_funs": 19, "comments_per_loc": 0.45, "tokens": 2351, "ccn": 62, "ccn_per_function": 3.263157894736842, "tokens_per_function": 123.73684210526316, "ccn_per_token": 0.026371756699276903, "functions_per_token": 0.008081667375584857, "loc_per_token": 0.14419396001701404, "ccn_per_loc": 0.18289085545722714, "functions_per_loc": 0.05604719764011799, "tokens_per_loc": 6.935103244837758}, {"date": "2020-01", "loc": 96, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/ClassDiagramBuilder.java", "comments": 33, "loc_per_function": 19.2, "blanks_per_loc": 0.08, "num_funs": 5, "comments_per_loc": 0.34, "tokens": 558, "ccn": 15, "ccn_per_function": 3.0, "tokens_per_function": 111.6, "ccn_per_token": 0.026881720430107527, "functions_per_token": 0.008960573476702509, "loc_per_token": 0.17204301075268819, "ccn_per_loc": 0.15625, "functions_per_loc": 0.052083333333333336, "tokens_per_loc": 5.8125}, {"date": "2020-01", "loc": 73, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/DiagramOperationProcessor.java", "comments": 61, "loc_per_function": 8.11, "blanks_per_loc": 0.16, "num_funs": 9, "comments_per_loc": 0.84, "tokens": 356, "ccn": 12, "ccn_per_function": 1.3333333333333333, "tokens_per_function": 39.55555555555556, "ccn_per_token": 0.033707865168539325, "functions_per_token": 0.025280898876404494, "loc_per_token": 0.2050561797752809, "ccn_per_loc": 0.1643835616438356, "functions_per_loc": 0.1232876712328767, "tokens_per_loc": 4.876712328767123}, {"date": "2020-01", "loc": 22, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/SimpleOperation.java", "comments": 36, "loc_per_function": 7.33, "blanks_per_loc": 0.18, "num_funs": 3, "comments_per_loc": 1.64, "tokens": 88, "ccn": 4, "ccn_per_function": 1.3333333333333333, "tokens_per_function": 29.333333333333332, "ccn_per_token": 0.045454545454545456, "functions_per_token": 0.03409090909090909, "loc_per_token": 0.25, "ccn_per_loc": 0.18181818181818182, "functions_per_loc": 0.13636363636363635, "tokens_per_loc": 4.0}, {"date": "2020-01", "loc": 237, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/SequenceDiagramBuilder.java", "comments": 33, "loc_per_function": 18.23, "blanks_per_loc": 0.07, "num_funs": 13, "comments_per_loc": 0.14, "tokens": 1567, "ccn": 45, "ccn_per_function": 3.4615384615384617, "tokens_per_function": 120.53846153846153, "ccn_per_token": 0.02871729419272495, "functions_per_token": 0.008296107211231652, "loc_per_token": 0.15124441608168473, "ccn_per_loc": 0.189873417721519, "functions_per_loc": 0.05485232067510549, "tokens_per_loc": 6.6118143459915615}, {"date": "2020-01", "loc": 34, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/CompoundOperation.java", "comments": 39, "loc_per_function": 8.5, "blanks_per_loc": 0.18, "num_funs": 4, "comments_per_loc": 1.15, "tokens": 154, "ccn": 6, "ccn_per_function": 1.5, "tokens_per_function": 38.5, "ccn_per_token": 0.03896103896103896, "functions_per_token": 0.025974025974025976, "loc_per_token": 0.22077922077922077, "ccn_per_loc": 0.17647058823529413, "functions_per_loc": 0.11764705882352941, "tokens_per_loc": 4.529411764705882}, {"date": "2020-01", "loc": 24, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/UseCaseDiagramBuilder.java", "comments": 29, "loc_per_function": 12, "blanks_per_loc": 0.17, "num_funs": 2, "comments_per_loc": 1.21, "tokens": 189, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 94.5, "ccn_per_token": 0.010582010582010581, "functions_per_token": 0.010582010582010581, "loc_per_token": 0.12698412698412698, "ccn_per_loc": 0.08333333333333333, "functions_per_loc": 0.08333333333333333, "tokens_per_loc": 7.875}, {"date": "2020-01", "loc": 24, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/constraints/StateDiagramEdgeConstraints.java", "comments": 30, "loc_per_function": 8, "blanks_per_loc": 0.21, "num_funs": 3, "comments_per_loc": 1.25, "tokens": 170, "ccn": 4, "ccn_per_function": 1.3333333333333333, "tokens_per_function": 56.666666666666664, "ccn_per_token": 0.023529411764705882, "functions_per_token": 0.01764705882352941, "loc_per_token": 0.1411764705882353, "ccn_per_loc": 0.16666666666666666, "functions_per_loc": 0.125, "tokens_per_loc": 7.083333333333333}, {"date": "2020-01", "loc": 56, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/constraints/SequenceDiagramEdgeConstraints.java", "comments": 38, "loc_per_function": 11.2, "blanks_per_loc": 0.14, "num_funs": 5, "comments_per_loc": 0.68, "tokens": 477, "ccn": 15, "ccn_per_function": 3.0, "tokens_per_function": 95.4, "ccn_per_token": 0.031446540880503145, "functions_per_token": 0.010482180293501049, "loc_per_token": 0.11740041928721175, "ccn_per_loc": 0.26785714285714285, "functions_per_loc": 0.08928571428571429, "tokens_per_loc": 8.517857142857142}, {"date": "2020-01", "loc": 53, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/constraints/EdgeConstraints.java", "comments": 41, "loc_per_function": 8.83, "blanks_per_loc": 0.17, "num_funs": 6, "comments_per_loc": 0.77, "tokens": 414, "ccn": 18, "ccn_per_function": 3.0, "tokens_per_function": 69.0, "ccn_per_token": 0.043478260869565216, "functions_per_token": 0.014492753623188406, "loc_per_token": 0.1280193236714976, "ccn_per_loc": 0.33962264150943394, "functions_per_loc": 0.11320754716981132, "tokens_per_loc": 7.811320754716981}, {"date": "2020-01", "loc": 27, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/constraints/ObjectDiagramEdgeConstraints.java", "comments": 30, "loc_per_function": 9, "blanks_per_loc": 0.19, "num_funs": 3, "comments_per_loc": 1.11, "tokens": 231, "ccn": 7, "ccn_per_function": 2.3333333333333335, "tokens_per_function": 77.0, "ccn_per_token": 0.030303030303030304, "functions_per_token": 0.012987012987012988, "loc_per_token": 0.11688311688311688, "ccn_per_loc": 0.25925925925925924, "functions_per_loc": 0.1111111111111111, "tokens_per_loc": 8.555555555555555}, {"date": "2020-01", "loc": 28, "path": "src/ca/mcgill/cs/jetuml/diagram/builder/constraints/ConstraintSet.java", "comments": 43, "loc_per_function": 9.33, "blanks_per_loc": 0.21, "num_funs": 3, "comments_per_loc": 1.54, "tokens": 138, "ccn": 5, "ccn_per_function": 1.6666666666666667, "tokens_per_function": 46.0, "ccn_per_token": 0.036231884057971016, "functions_per_token": 0.021739130434782608, "loc_per_token": 0.2028985507246377, "ccn_per_loc": 0.17857142857142858, "functions_per_loc": 0.10714285714285714, "tokens_per_loc": 4.928571428571429}, {"date": "2020-01", "loc": 51, "path": "src/ca/mcgill/cs/jetuml/application/MoveTracker.java", "comments": 38, "loc_per_function": 25.5, "blanks_per_loc": 0.14, "num_funs": 2, "comments_per_loc": 0.75, "tokens": 385, "ccn": 8, "ccn_per_function": 4.0, "tokens_per_function": 192.5, "ccn_per_token": 0.02077922077922078, "functions_per_token": 0.005194805194805195, "loc_per_token": 0.13246753246753246, "ccn_per_loc": 0.1568627450980392, "functions_per_loc": 0.0392156862745098, "tokens_per_loc": 7.549019607843137}, {"date": "2020-01", "loc": 23, "path": "src/ca/mcgill/cs/jetuml/application/DiagramSizeUtils.java", "comments": 33, "loc_per_function": 7.67, "blanks_per_loc": 0.17, "num_funs": 3, "comments_per_loc": 1.43, "tokens": 92, "ccn": 5, "ccn_per_function": 1.6666666666666667, "tokens_per_function": 30.666666666666668, "ccn_per_token": 0.05434782608695652, "functions_per_token": 0.03260869565217391, "loc_per_token": 0.25, "ccn_per_loc": 0.21739130434782608, "functions_per_loc": 0.13043478260869565, "tokens_per_loc": 4.0}, {"date": "2020-01", "loc": 28, "path": "src/ca/mcgill/cs/jetuml/application/ApplicationResources.java", "comments": 43, "loc_per_function": 9.33, "blanks_per_loc": 0.29, "num_funs": 3, "comments_per_loc": 1.54, "tokens": 143, "ccn": 4, "ccn_per_function": 1.3333333333333333, "tokens_per_function": 47.666666666666664, "ccn_per_token": 0.027972027972027972, "functions_per_token": 0.02097902097902098, "loc_per_token": 0.1958041958041958, "ccn_per_loc": 0.14285714285714285, "functions_per_loc": 0.10714285714285714, "tokens_per_loc": 5.107142857142857}, {"date": "2020-01", "loc": 77, "path": "src/ca/mcgill/cs/jetuml/application/RecentFilesQueue.java", "comments": 63, "loc_per_function": 12.83, "blanks_per_loc": 0.13, "num_funs": 6, "comments_per_loc": 0.82, "tokens": 405, "ccn": 16, "ccn_per_function": 2.6666666666666665, "tokens_per_function": 67.5, "ccn_per_token": 0.03950617283950617, "functions_per_token": 0.014814814814814815, "loc_per_token": 0.19012345679012346, "ccn_per_loc": 0.2077922077922078, "functions_per_loc": 0.07792207792207792, "tokens_per_loc": 5.259740259740259}, {"date": "2020-01", "loc": 40, "path": "src/ca/mcgill/cs/jetuml/application/PropertyChangeTracker.java", "comments": 40, "loc_per_function": 13.33, "blanks_per_loc": 0.15, "num_funs": 3, "comments_per_loc": 1, "tokens": 272, "ccn": 6, "ccn_per_function": 2.0, "tokens_per_function": 90.66666666666667, "ccn_per_token": 0.022058823529411766, "functions_per_token": 0.011029411764705883, "loc_per_token": 0.14705882352941177, "ccn_per_loc": 0.15, "functions_per_loc": 0.075, "tokens_per_loc": 6.8}, {"date": "2020-01", "loc": 210, "path": "src/ca/mcgill/cs/jetuml/application/Clipboard.java", "comments": 84, "loc_per_function": 13.12, "blanks_per_loc": 0.1, "num_funs": 16, "comments_per_loc": 0.4, "tokens": 1167, "ccn": 53, "ccn_per_function": 3.3125, "tokens_per_function": 72.9375, "ccn_per_token": 0.04541559554413025, "functions_per_token": 0.013710368466152529, "loc_per_token": 0.17994858611825193, "ccn_per_loc": 0.2523809523809524, "functions_per_loc": 0.0761904761904762, "tokens_per_loc": 5.557142857142857}, {"date": "2020-01", "loc": 41, "path": "src/ca/mcgill/cs/jetuml/application/FileExtensions.java", "comments": 34, "loc_per_function": 13.67, "blanks_per_loc": 0.41, "num_funs": 3, "comments_per_loc": 0.83, "tokens": 337, "ccn": 5, "ccn_per_function": 1.6666666666666667, "tokens_per_function": 112.33333333333333, "ccn_per_token": 0.01483679525222552, "functions_per_token": 0.008902077151335312, "loc_per_token": 0.12166172106824925, "ccn_per_loc": 0.12195121951219512, "functions_per_loc": 0.07317073170731707, "tokens_per_loc": 8.21951219512195}, {"date": "2020-01", "loc": 87, "path": "src/ca/mcgill/cs/jetuml/application/UserPreferences.java", "comments": 69, "loc_per_function": 7.25, "blanks_per_loc": 0.24, "num_funs": 12, "comments_per_loc": 0.79, "tokens": 514, "ccn": 14, "ccn_per_function": 1.1666666666666667, "tokens_per_function": 42.833333333333336, "ccn_per_token": 0.027237354085603113, "functions_per_token": 0.023346303501945526, "loc_per_token": 0.16926070038910507, "ccn_per_loc": 0.16091954022988506, "functions_per_loc": 0.13793103448275862, "tokens_per_loc": 5.908045977011494}, {"date": "2020-01", "loc": 102, "path": "src/ca/mcgill/cs/jetuml/gui/MenuFactory.java", "comments": 79, "loc_per_function": 12.75, "blanks_per_loc": 0.15, "num_funs": 8, "comments_per_loc": 0.77, "tokens": 657, "ccn": 18, "ccn_per_function": 2.25, "tokens_per_function": 82.125, "ccn_per_token": 0.0273972602739726, "functions_per_token": 0.0121765601217656, "loc_per_token": 0.1552511415525114, "ccn_per_loc": 0.17647058823529413, "functions_per_loc": 0.0784313725490196, "tokens_per_loc": 6.4411764705882355}, {"date": "2020-01", "loc": 6, "path": "src/ca/mcgill/cs/jetuml/gui/MouseDraggedGestureHandler.java", "comments": 30, "loc_per_function": 6, "blanks_per_loc": 0.33, "num_funs": 0, "comments_per_loc": 5, "tokens": 36, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 36, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.16666666666666666, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 6.0}, {"date": "2020-01", "loc": 72, "path": "src/ca/mcgill/cs/jetuml/gui/WelcomeTab.java", "comments": 34, "loc_per_function": 14.4, "blanks_per_loc": 0.22, "num_funs": 5, "comments_per_loc": 0.47, "tokens": 585, "ccn": 7, "ccn_per_function": 1.4, "tokens_per_function": 117.0, "ccn_per_token": 0.011965811965811967, "functions_per_token": 0.008547008547008548, "loc_per_token": 0.12307692307692308, "ccn_per_loc": 0.09722222222222222, "functions_per_loc": 0.06944444444444445, "tokens_per_loc": 8.125}, {"date": "2020-01", "loc": 109, "path": "src/ca/mcgill/cs/jetuml/gui/DiagramCanvas.java", "comments": 49, "loc_per_function": 10.9, "blanks_per_loc": 0.13, "num_funs": 10, "comments_per_loc": 0.45, "tokens": 743, "ccn": 14, "ccn_per_function": 1.4, "tokens_per_function": 74.3, "ccn_per_token": 0.018842530282637954, "functions_per_token": 0.013458950201884253, "loc_per_token": 0.14670255720053835, "ccn_per_loc": 0.12844036697247707, "functions_per_loc": 0.09174311926605505, "tokens_per_loc": 6.81651376146789}, {"date": "2020-01", "loc": 76, "path": "src/ca/mcgill/cs/jetuml/gui/AboutDialog.java", "comments": 32, "loc_per_function": 19, "blanks_per_loc": 0.22, "num_funs": 4, "comments_per_loc": 0.42, "tokens": 609, "ccn": 5, "ccn_per_function": 1.25, "tokens_per_function": 152.25, "ccn_per_token": 0.008210180623973728, "functions_per_token": 0.006568144499178982, "loc_per_token": 0.12479474548440066, "ccn_per_loc": 0.06578947368421052, "functions_per_loc": 0.05263157894736842, "tokens_per_loc": 8.013157894736842}, {"date": "2020-01", "loc": 35, "path": "src/ca/mcgill/cs/jetuml/gui/SelectableToolButton.java", "comments": 44, "loc_per_function": 11.67, "blanks_per_loc": 0.2, "num_funs": 3, "comments_per_loc": 1.26, "tokens": 243, "ccn": 5, "ccn_per_function": 1.6666666666666667, "tokens_per_function": 81.0, "ccn_per_token": 0.0205761316872428, "functions_per_token": 0.012345679012345678, "loc_per_token": 0.1440329218106996, "ccn_per_loc": 0.14285714285714285, "functions_per_loc": 0.08571428571428572, "tokens_per_loc": 6.942857142857143}, {"date": "2020-01", "loc": 542, "path": "src/ca/mcgill/cs/jetuml/gui/EditorFrame.java", "comments": 113, "loc_per_function": 15.94, "blanks_per_loc": 0.12, "num_funs": 34, "comments_per_loc": 0.21, "tokens": 3996, "ccn": 78, "ccn_per_function": 2.2941176470588234, "tokens_per_function": 117.52941176470588, "ccn_per_token": 0.01951951951951952, "functions_per_token": 0.00850850850850851, "loc_per_token": 0.13563563563563563, "ccn_per_loc": 0.14391143911439114, "functions_per_loc": 0.06273062730627306, "tokens_per_loc": 7.372693726937269}, {"date": "2020-01", "loc": 5, "path": "src/ca/mcgill/cs/jetuml/gui/SelectionObserver.java", "comments": 26, "loc_per_function": 5, "blanks_per_loc": 0.2, "num_funs": 0, "comments_per_loc": 5.2, "tokens": 21, "ccn": 0, "ccn_per_function": 0, "tokens_per_function": 21, "ccn_per_token": 0.0, "functions_per_token": 0.0, "loc_per_token": 0.23809523809523808, "ccn_per_loc": 0.0, "functions_per_loc": 0.0, "tokens_per_loc": 4.2}, {"date": "2020-01", "loc": 419, "path": "src/ca/mcgill/cs/jetuml/gui/DiagramCanvasController.java", "comments": 96, "loc_per_function": 13.52, "blanks_per_loc": 0.11, "num_funs": 31, "comments_per_loc": 0.23, "tokens": 2659, "ccn": 84, "ccn_per_function": 2.7096774193548385, "tokens_per_function": 85.7741935483871, "ccn_per_token": 0.03159082361790147, "functions_per_token": 0.011658518239939826, "loc_per_token": 0.1575780368559609, "ccn_per_loc": 0.20047732696897375, "functions_per_loc": 0.07398568019093078, "tokens_per_loc": 6.3460620525059666}, {"date": "2020-01", "loc": 166, "path": "src/ca/mcgill/cs/jetuml/gui/DiagramTabToolBar.java", "comments": 63, "loc_per_function": 11.86, "blanks_per_loc": 0.11, "num_funs": 14, "comments_per_loc": 0.38, "tokens": 1318, "ccn": 20, "ccn_per_function": 1.4285714285714286, "tokens_per_function": 94.14285714285714, "ccn_per_token": 0.015174506828528073, "functions_per_token": 0.010622154779969651, "loc_per_token": 0.125948406676783, "ccn_per_loc": 0.12048192771084337, "functions_per_loc": 0.08433734939759036, "tokens_per_loc": 7.9397590361445785}, {"date": "2020-01", "loc": 27, "path": "src/ca/mcgill/cs/jetuml/gui/NamedHandler.java", "comments": 36, "loc_per_function": 6.75, "blanks_per_loc": 0.22, "num_funs": 4, "comments_per_loc": 1.33, "tokens": 125, "ccn": 5, "ccn_per_function": 1.25, "tokens_per_function": 31.25, "ccn_per_token": 0.04, "functions_per_token": 0.032, "loc_per_token": 0.216, "ccn_per_loc": 0.18518518518518517, "functions_per_loc": 0.14814814814814814, "tokens_per_loc": 4.62962962962963}, {"date": "2020-01", "loc": 194, "path": "src/ca/mcgill/cs/jetuml/gui/PropertySheet.java", "comments": 54, "loc_per_function": 19.4, "blanks_per_loc": 0.14, "num_funs": 10, "comments_per_loc": 0.28, "tokens": 1232, "ccn": 31, "ccn_per_function": 3.1, "tokens_per_function": 123.2, "ccn_per_token": 0.025162337662337664, "functions_per_token": 0.008116883116883116, "loc_per_token": 0.15746753246753248, "ccn_per_loc": 0.15979381443298968, "functions_per_loc": 0.05154639175257732, "tokens_per_loc": 6.350515463917525}, {"date": "2020-01", "loc": 24, "path": "src/ca/mcgill/cs/jetuml/gui/NewDiagramHandler.java", "comments": 33, "loc_per_function": 8, "blanks_per_loc": 0.21, "num_funs": 3, "comments_per_loc": 1.38, "tokens": 120, "ccn": 4, "ccn_per_function": 1.3333333333333333, "tokens_per_function": 40.0, "ccn_per_token": 0.03333333333333333, "functions_per_token": 0.025, "loc_per_token": 0.2, "ccn_per_loc": 0.16666666666666666, "functions_per_loc": 0.125, "tokens_per_loc": 5.0}, {"date": "2020-01", "loc": 208, "path": "src/ca/mcgill/cs/jetuml/gui/SelectionModel.java", "comments": 127, "loc_per_function": 9.04, "blanks_per_loc": 0.14, "num_funs": 23, "comments_per_loc": 0.61, "tokens": 1073, "ccn": 38, "ccn_per_function": 1.6521739130434783, "tokens_per_function": 46.65217391304348, "ccn_per_token": 0.035414725069897485, "functions_per_token": 0.021435228331780055, "loc_per_token": 0.19384902143522834, "ccn_per_loc": 0.18269230769230768, "functions_per_loc": 0.11057692307692307, "tokens_per_loc": 5.158653846153846}, {"date": "2020-01", "loc": 116, "path": "src/ca/mcgill/cs/jetuml/gui/ViewportProjection.java", "comments": 88, "loc_per_function": 7.25, "blanks_per_loc": 0.15, "num_funs": 16, "comments_per_loc": 0.76, "tokens": 578, "ccn": 29, "ccn_per_function": 1.8125, "tokens_per_function": 36.125, "ccn_per_token": 0.050173010380622836, "functions_per_token": 0.02768166089965398, "loc_per_token": 0.20069204152249134, "ccn_per_loc": 0.25, "functions_per_loc": 0.13793103448275862, "tokens_per_loc": 4.982758620689655}, {"date": "2020-01", "loc": 39, "path": "src/ca/mcgill/cs/jetuml/gui/GuiUtils.java", "comments": 35, "loc_per_function": 9.75, "blanks_per_loc": 0.15, "num_funs": 4, "comments_per_loc": 0.9, "tokens": 277, "ccn": 5, "ccn_per_function": 1.25, "tokens_per_function": 69.25, "ccn_per_token": 0.018050541516245487, "functions_per_token": 0.01444043321299639, "loc_per_token": 0.1407942238267148, "ccn_per_loc": 0.1282051282051282, "functions_per_loc": 0.10256410256410256, "tokens_per_loc": 7.102564102564102}, {"date": "2020-01", "loc": 166, "path": "src/ca/mcgill/cs/jetuml/gui/DiagramSizeDialog.java", "comments": 33, "loc_per_function": 18.44, "blanks_per_loc": 0.15, "num_funs": 9, "comments_per_loc": 0.2, "tokens": 1271, "ccn": 15, "ccn_per_function": 1.6666666666666667, "tokens_per_function": 141.22222222222223, "ccn_per_token": 0.011801730920535013, "functions_per_token": 0.007081038552321007, "loc_per_token": 0.13060582218725414, "ccn_per_loc": 0.09036144578313253, "functions_per_loc": 0.05421686746987952, "tokens_per_loc": 7.656626506024097}, {"date": "2020-01", "loc": 140, "path": "src/ca/mcgill/cs/jetuml/gui/DiagramTab.java", "comments": 87, "loc_per_function": 7.78, "blanks_per_loc": 0.21, "num_funs": 18, "comments_per_loc": 0.62, "tokens": 892, "ccn": 19, "ccn_per_function": 1.0555555555555556, "tokens_per_function": 49.55555555555556, "ccn_per_token": 0.021300448430493273, "functions_per_token": 0.020179372197309416, "loc_per_token": 0.15695067264573992, "ccn_per_loc": 0.1357142857142857, "functions_per_loc": 0.12857142857142856, "tokens_per_loc": 6.371428571428571}, {"date": "2020-01", "loc": 65, "path": "src/ca/mcgill/cs/jetuml/gui/PropertyEditorDialog.java", "comments": 40, "loc_per_function": 13, "blanks_per_loc": 0.2, "num_funs": 5, "comments_per_loc": 0.62, "tokens": 465, "ccn": 6, "ccn_per_function": 1.2, "tokens_per_function": 93.0, "ccn_per_token": 0.012903225806451613, "functions_per_token": 0.010752688172043012, "loc_per_token": 0.13978494623655913, "ccn_per_loc": 0.09230769230769231, "functions_per_loc": 0.07692307692307693, "tokens_per_loc": 7.153846153846154}, {"date": "2020-01", "loc": 35, "path": "src/ca/mcgill/cs/jetuml/persistence/PersistenceService.java", "comments": 41, "loc_per_function": 11.67, "blanks_per_loc": 0.17, "num_funs": 3, "comments_per_loc": 1.17, "tokens": 222, "ccn": 5, "ccn_per_function": 1.6666666666666667, "tokens_per_function": 74.0, "ccn_per_token": 0.02252252252252252, "functions_per_token": 0.013513513513513514, "loc_per_token": 0.15765765765765766, "ccn_per_loc": 0.14285714285714285, "functions_per_loc": 0.08571428571428572, "tokens_per_loc": 6.3428571428571425}, {"date": "2020-01", "loc": 89, "path": "src/ca/mcgill/cs/jetuml/persistence/JsonEncoder.java", "comments": 31, "loc_per_function": 12.71, "blanks_per_loc": 0.13, "num_funs": 7, "comments_per_loc": 0.35, "tokens": 643, "ccn": 16, "ccn_per_function": 2.2857142857142856, "tokens_per_function": 91.85714285714286, "ccn_per_token": 0.024883359253499222, "functions_per_token": 0.01088646967340591, "loc_per_token": 0.13841368584758942, "ccn_per_loc": 0.1797752808988764, "functions_per_loc": 0.07865168539325842, "tokens_per_loc": 7.224719101123595}, {"date": "2020-01", "loc": 40, "path": "src/ca/mcgill/cs/jetuml/persistence/SerializationContext.java", "comments": 41, "loc_per_function": 10, "blanks_per_loc": 0.12, "num_funs": 4, "comments_per_loc": 1.02, "tokens": 199, "ccn": 8, "ccn_per_function": 2.0, "tokens_per_function": 49.75, "ccn_per_token": 0.04020100502512563, "functions_per_token": 0.020100502512562814, "loc_per_token": 0.20100502512562815, "ccn_per_loc": 0.2, "functions_per_loc": 0.1, "tokens_per_loc": 4.975}, {"date": "2020-01", "loc": 13, "path": "src/ca/mcgill/cs/jetuml/persistence/DeserializationException.java", "comments": 34, "loc_per_function": 6.5, "blanks_per_loc": 0.15, "num_funs": 2, "comments_per_loc": 2.62, "tokens": 54, "ccn": 2, "ccn_per_function": 1.0, "tokens_per_function": 27.0, "ccn_per_token": 0.037037037037037035, "functions_per_token": 0.037037037037037035, "loc_per_token": 0.24074074074074073, "ccn_per_loc": 0.15384615384615385, "functions_per_loc": 0.15384615384615385, "tokens_per_loc": 4.153846153846154}, {"date": "2020-01", "loc": 109, "path": "src/ca/mcgill/cs/jetuml/persistence/JsonDecoder.java", "comments": 45, "loc_per_function": 18.17, "blanks_per_loc": 0.09, "num_funs": 6, "comments_per_loc": 0.41, "tokens": 782, "ccn": 19, "ccn_per_function": 3.1666666666666665, "tokens_per_function": 130.33333333333334, "ccn_per_token": 0.024296675191815855, "functions_per_token": 0.0076726342710997444, "loc_per_token": 0.13938618925831203, "ccn_per_loc": 0.1743119266055046, "functions_per_loc": 0.05504587155963303, "tokens_per_loc": 7.174311926605505}, {"date": "2020-01", "loc": 30, "path": "src/ca/mcgill/cs/jetuml/persistence/AbstractContext.java", "comments": 41, "loc_per_function": 7.5, "blanks_per_loc": 0.23, "num_funs": 4, "comments_per_loc": 1.37, "tokens": 164, "ccn": 4, "ccn_per_function": 1.0, "tokens_per_function": 41.0, "ccn_per_token": 0.024390243902439025, "functions_per_token": 0.024390243902439025, "loc_per_token": 0.18292682926829268, "ccn_per_loc": 0.13333333333333333, "functions_per_loc": 0.13333333333333333, "tokens_per_loc": 5.466666666666667}, {"date": "2020-01", "loc": 34, "path": "src/ca/mcgill/cs/jetuml/persistence/DeserializationContext.java", "comments": 47, "loc_per_function": 8.5, "blanks_per_loc": 0.15, "num_funs": 4, "comments_per_loc": 1.38, "tokens": 148, "ccn": 7, "ccn_per_function": 1.75, "tokens_per_function": 37.0, "ccn_per_token": 0.0472972972972973, "functions_per_token": 0.02702702702702703, "loc_per_token": 0.22972972972972974, "ccn_per_loc": 0.20588235294117646, "functions_per_loc": 0.11764705882352941, "tokens_per_loc": 4.352941176470588}, {"date": "2020-01", "loc": 213, "path": "src/org/json/JSONTokener.java", "comments": 134, "loc_per_function": 14.2, "blanks_per_loc": 0.15, "num_funs": 15, "comments_per_loc": 0.63, "tokens": 1150, "ccn": 65, "ccn_per_function": 4.333333333333333, "tokens_per_function": 76.66666666666667, "ccn_per_token": 0.05652173913043478, "functions_per_token": 0.013043478260869565, "loc_per_token": 0.18521739130434783, "ccn_per_loc": 0.3051643192488263, "functions_per_loc": 0.07042253521126761, "tokens_per_loc": 5.39906103286385}, {"date": "2020-01", "loc": 17, "path": "src/org/json/JSONException.java", "comments": 19, "loc_per_function": 5.67, "blanks_per_loc": 0.18, "num_funs": 3, "comments_per_loc": 1.12, "tokens": 67, "ccn": 3, "ccn_per_function": 1.0, "tokens_per_function": 22.333333333333332, "ccn_per_token": 0.04477611940298507, "functions_per_token": 0.04477611940298507, "loc_per_token": 0.2537313432835821, "ccn_per_loc": 0.17647058823529413, "functions_per_loc": 0.17647058823529413, "tokens_per_loc": 3.9411764705882355}, {"date": "2020-01", "loc": 533, "path": "src/org/json/JSONObject.java", "comments": 451, "loc_per_function": 14.81, "blanks_per_loc": 0.12, "num_funs": 36, "comments_per_loc": 0.85, "tokens": 3523, "ccn": 195, "ccn_per_function": 5.416666666666667, "tokens_per_function": 97.86111111111111, "ccn_per_token": 0.055350553505535055, "functions_per_token": 0.01021856372409878, "loc_per_token": 0.15129151291512916, "ccn_per_loc": 0.36585365853658536, "functions_per_loc": 0.0675422138836773, "tokens_per_loc": 6.609756097560975}, {"date": "2020-01", "loc": 179, "path": "src/org/json/JSONWriter.java", "comments": 198, "loc_per_function": 11.93, "blanks_per_loc": 0.17, "num_funs": 15, "comments_per_loc": 1.11, "tokens": 1134, "ccn": 59, "ccn_per_function": 3.933333333333333, "tokens_per_function": 75.6, "ccn_per_token": 0.05202821869488536, "functions_per_token": 0.013227513227513227, "loc_per_token": 0.15784832451499117, "ccn_per_loc": 0.329608938547486, "functions_per_loc": 0.08379888268156424, "tokens_per_loc": 6.335195530726257}, {"date": "2020-01", "loc": 203, "path": "src/org/json/JSONArray.java", "comments": 228, "loc_per_function": 11.94, "blanks_per_loc": 0.13, "num_funs": 17, "comments_per_loc": 1.12, "tokens": 1246, "ccn": 53, "ccn_per_function": 3.1176470588235294, "tokens_per_function": 73.29411764705883, "ccn_per_token": 0.04253611556982344, "functions_per_token": 0.013643659711075442, "loc_per_token": 0.16292134831460675, "ccn_per_loc": 0.26108374384236455, "functions_per_loc": 0.08374384236453201, "tokens_per_loc": 6.137931034482759}]