documentation

This commit is contained in:
Claudio Maggioni 2023-05-31 18:19:44 +02:00
parent 5f30b3b71b
commit 786d6a0684
6 changed files with 269 additions and 171 deletions

View File

@ -1,10 +1,62 @@
# Information Modelling & Analysis: Project 2 # Information Modelling & Analysis: Project 2
Student: enter your name here Student: Claudio Maggioni
Please follow the instructions provided in the project slides Please follow the instructions provided in the project slides
and consider the submission instructions available on iCorsi. and consider the submission instructions available on iCorsi.
For your convencience, I the following resources are available in the `resources` folder: For your convencience, I the following resources are available in the `resources` folder:
- **defects4j-checkout-closure-1f**: The output of the command `defects4j checkout -p Closure -v 1f -w ...` - **defects4j-checkout-closure-1f**: The output of the command `defects4j checkout -p Closure -v 1f -w ...`
- **modified_classes** The list of buggy classes in: `framework/projects/Closure/modified_classes/` - **modified_classes** The list of buggy classes in: `framework/projects/Closure/modified_classes/`
## Setup
To install the required libraries run:
```shell
python3 -m venv .env
source .env/bin/activate
pip install -r requirements.txt
```
## Data pre-processing
To extract and label the feature vectors run:
```shell
python3 ./extract_feature_vectors.py
python3 ./label_feature_vectors.py
```
The labeled feature vectors are stored in file
`./metrics/feature_vectors_labeled.csv` from the repository root.
## Training
To train the classifiers with the grid search procedure defined in the report
to later extract the optimal combination of hyperparameters run:
```shell
python3 ./train_classifiers.py
```
and answer `y` to run again training when prompted. Answering `n` simply
computes again data about the best hyperparameter configuration from the metrics
produced by a previous training.
Raw cross validation training metrics are stored in `./models/models.csv`. The
optimal hyperparameter configurations found are stored in `./models/best.csv`.
## Evaluation
To run the 20-times 5-fold cross validation procedure delete the file
`./models/evaluation.csv` and run:
```shell
python3 ./evaluate_classifiers.py
```
Raw data from the repeated cross validation procedure is stored in
`./models/evaluation.csv`. P-values for each metric of each classifier pair are
stored in `./models/model_stats.csv`.

View File

@ -143,6 +143,8 @@ def main():
pvalue = wilcoxon(series_a, series_b).pvalue pvalue = wilcoxon(series_a, series_b).pvalue
df_stats.loc[i, 'pvalue'] = pvalue df_stats.loc[i, 'pvalue'] = pvalue
i += 1
if metric not in observations: if metric not in observations:
observations[metric] = [] observations[metric] = []

View File

@ -6,7 +6,7 @@
<rdf:RDF xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:RDF xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<cc:Work> <cc:Work>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/> <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:date>2023-05-27T22:19:21.168970</dc:date> <dc:date>2023-05-31T18:07:50.660651</dc:date>
<dc:format>image/svg+xml</dc:format> <dc:format>image/svg+xml</dc:format>
<dc:creator> <dc:creator>
<cc:Agent> <cc:Agent>
@ -44,7 +44,7 @@ L 106.5216 360.413793
L 87.0784 360.413793 L 87.0784 360.413793
L 87.0784 366.786207 L 87.0784 366.786207
z z
" clip-path="url(#p0c45fec8d2)" style="fill: #3274a1; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/> " clip-path="url(#p5d01fc2d82)" style="fill: #3274a1; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/>
</g> </g>
<g id="patch_4"> <g id="patch_4">
<path d="M 106.9184 197.28 <path d="M 106.9184 197.28
@ -53,7 +53,7 @@ L 126.3616 165.6
L 106.9184 165.6 L 106.9184 165.6
L 106.9184 197.28 L 106.9184 197.28
z z
" clip-path="url(#p0c45fec8d2)" style="fill: #e1812c; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/> " clip-path="url(#p5d01fc2d82)" style="fill: #e1812c; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/>
</g> </g>
<g id="patch_5"> <g id="patch_5">
<path d="M 126.7584 206.921739 <path d="M 126.7584 206.921739
@ -62,7 +62,7 @@ L 146.2016 160.32
L 126.7584 160.32 L 126.7584 160.32
L 126.7584 206.921739 L 126.7584 206.921739
z z
" clip-path="url(#p0c45fec8d2)" style="fill: #3a923a; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/> " clip-path="url(#p5d01fc2d82)" style="fill: #3a923a; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/>
</g> </g>
<g id="patch_6"> <g id="patch_6">
<path d="M 146.5984 195.105882 <path d="M 146.5984 195.105882
@ -71,7 +71,7 @@ L 166.0416 155.7
L 146.5984 155.7 L 146.5984 155.7
L 146.5984 195.105882 L 146.5984 195.105882
z z
" clip-path="url(#p0c45fec8d2)" style="fill: #c03d3e; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/> " clip-path="url(#p5d01fc2d82)" style="fill: #c03d3e; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/>
</g> </g>
<g id="patch_7"> <g id="patch_7">
<path d="M 166.4384 173.799529 <path d="M 166.4384 173.799529
@ -80,7 +80,7 @@ L 185.8816 142.971429
L 166.4384 142.971429 L 166.4384 142.971429
L 166.4384 173.799529 L 166.4384 173.799529
z z
" clip-path="url(#p0c45fec8d2)" style="fill: #9372b2; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/> " clip-path="url(#p5d01fc2d82)" style="fill: #9372b2; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/>
</g> </g>
<g id="patch_8"> <g id="patch_8">
<path d="M 186.2784 241.245209 <path d="M 186.2784 241.245209
@ -89,7 +89,7 @@ L 205.7216 201.858676
L 186.2784 201.858676 L 186.2784 201.858676
L 186.2784 241.245209 L 186.2784 241.245209
z z
" clip-path="url(#p0c45fec8d2)" style="fill: #845b53; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/> " clip-path="url(#p5d01fc2d82)" style="fill: #845b53; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/>
</g> </g>
<g id="patch_9"> <g id="patch_9">
<path d="M 235.8784 86.4 <path d="M 235.8784 86.4
@ -98,7 +98,7 @@ L 255.3216 86.4
L 235.8784 86.4 L 235.8784 86.4
L 235.8784 86.4 L 235.8784 86.4
z z
" clip-path="url(#p0c45fec8d2)" style="fill: #3274a1; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/> " clip-path="url(#p5d01fc2d82)" style="fill: #3274a1; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/>
</g> </g>
<g id="patch_10"> <g id="patch_10">
<path d="M 255.7184 125.07907 <path d="M 255.7184 125.07907
@ -107,7 +107,7 @@ L 275.1616 99
L 255.7184 99 L 255.7184 99
L 255.7184 125.07907 L 255.7184 125.07907
z z
" clip-path="url(#p0c45fec8d2)" style="fill: #e1812c; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/> " clip-path="url(#p5d01fc2d82)" style="fill: #e1812c; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/>
</g> </g>
<g id="patch_11"> <g id="patch_11">
<path d="M 275.5584 434.511628 <path d="M 275.5584 434.511628
@ -116,7 +116,7 @@ L 295.0016 382.939535
L 275.5584 382.939535 L 275.5584 382.939535
L 275.5584 434.511628 L 275.5584 434.511628
z z
" clip-path="url(#p0c45fec8d2)" style="fill: #3a923a; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/> " clip-path="url(#p5d01fc2d82)" style="fill: #3a923a; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/>
</g> </g>
<g id="patch_12"> <g id="patch_12">
<path d="M 295.3984 137.972093 <path d="M 295.3984 137.972093
@ -125,7 +125,7 @@ L 314.8416 99.293023
L 295.3984 99.293023 L 295.3984 99.293023
L 295.3984 137.972093 L 295.3984 137.972093
z z
" clip-path="url(#p0c45fec8d2)" style="fill: #c03d3e; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/> " clip-path="url(#p5d01fc2d82)" style="fill: #c03d3e; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/>
</g> </g>
<g id="patch_13"> <g id="patch_13">
<path d="M 315.2384 125.07907 <path d="M 315.2384 125.07907
@ -134,7 +134,7 @@ L 334.6816 95.85
L 315.2384 95.85 L 315.2384 95.85
L 315.2384 125.07907 L 315.2384 125.07907
z z
" clip-path="url(#p0c45fec8d2)" style="fill: #9372b2; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/> " clip-path="url(#p5d01fc2d82)" style="fill: #9372b2; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/>
</g> </g>
<g id="patch_14"> <g id="patch_14">
<path d="M 335.0784 250.2 <path d="M 335.0784 250.2
@ -143,7 +143,7 @@ L 354.5216 197.236047
L 335.0784 197.236047 L 335.0784 197.236047
L 335.0784 250.2 L 335.0784 250.2
z z
" clip-path="url(#p0c45fec8d2)" style="fill: #845b53; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/> " clip-path="url(#p5d01fc2d82)" style="fill: #845b53; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/>
</g> </g>
<g id="patch_15"> <g id="patch_15">
<path d="M 384.6784 274.043077 <path d="M 384.6784 274.043077
@ -152,7 +152,7 @@ L 404.1216 268.378626
L 384.6784 268.378626 L 384.6784 268.378626
L 384.6784 274.043077 L 384.6784 274.043077
z z
" clip-path="url(#p0c45fec8d2)" style="fill: #3274a1; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/> " clip-path="url(#p5d01fc2d82)" style="fill: #3274a1; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/>
</g> </g>
<g id="patch_16"> <g id="patch_16">
<path d="M 404.5184 160.32 <path d="M 404.5184 160.32
@ -161,7 +161,7 @@ L 423.9616 137.839175
L 404.5184 137.839175 L 404.5184 137.839175
L 404.5184 160.32 L 404.5184 160.32
z z
" clip-path="url(#p0c45fec8d2)" style="fill: #e1812c; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/> " clip-path="url(#p5d01fc2d82)" style="fill: #e1812c; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/>
</g> </g>
<g id="patch_17"> <g id="patch_17">
<path d="M 424.3584 360.497015 <path d="M 424.3584 360.497015
@ -170,7 +170,7 @@ L 443.8016 309.814925
L 424.3584 309.814925 L 424.3584 309.814925
L 424.3584 360.497015 L 424.3584 360.497015
z z
" clip-path="url(#p0c45fec8d2)" style="fill: #3a923a; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/> " clip-path="url(#p5d01fc2d82)" style="fill: #3a923a; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/>
</g> </g>
<g id="patch_18"> <g id="patch_18">
<path d="M 444.1984 162.265263 <path d="M 444.1984 162.265263
@ -179,7 +179,7 @@ L 463.6416 136.52
L 444.1984 136.52 L 444.1984 136.52
L 444.1984 162.265263 L 444.1984 162.265263
z z
" clip-path="url(#p0c45fec8d2)" style="fill: #c03d3e; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/> " clip-path="url(#p5d01fc2d82)" style="fill: #c03d3e; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/>
</g> </g>
<g id="patch_19"> <g id="patch_19">
<path d="M 464.0384 148 <path d="M 464.0384 148
@ -188,7 +188,7 @@ L 483.4816 122.556522
L 464.0384 122.556522 L 464.0384 122.556522
L 464.0384 148 L 464.0384 148
z z
" clip-path="url(#p0c45fec8d2)" style="fill: #9372b2; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/> " clip-path="url(#p5d01fc2d82)" style="fill: #9372b2; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/>
</g> </g>
<g id="patch_20"> <g id="patch_20">
<path d="M 483.8784 240.028916 <path d="M 483.8784 240.028916
@ -197,7 +197,7 @@ L 503.3216 204.755056
L 483.8784 204.755056 L 483.8784 204.755056
L 483.8784 240.028916 L 483.8784 240.028916
z z
" clip-path="url(#p0c45fec8d2)" style="fill: #845b53; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/> " clip-path="url(#p5d01fc2d82)" style="fill: #845b53; stroke: #3d3d3d; stroke-width: 1.5; stroke-linejoin: miter"/>
</g> </g>
<g id="patch_21"> <g id="patch_21">
<path d="M 146.4 640.8 <path d="M 146.4 640.8
@ -205,7 +205,7 @@ L 146.4 640.8
L 146.4 640.8 L 146.4 640.8
L 146.4 640.8 L 146.4 640.8
z z
" clip-path="url(#p0c45fec8d2)" style="fill: #3274a1; stroke: #3d3d3d; stroke-width: 0.75; stroke-linejoin: miter"/> " clip-path="url(#p5d01fc2d82)" style="fill: #3274a1; stroke: #3d3d3d; stroke-width: 0.75; stroke-linejoin: miter"/>
</g> </g>
<g id="patch_22"> <g id="patch_22">
<path d="M 146.4 640.8 <path d="M 146.4 640.8
@ -213,7 +213,7 @@ L 146.4 640.8
L 146.4 640.8 L 146.4 640.8
L 146.4 640.8 L 146.4 640.8
z z
" clip-path="url(#p0c45fec8d2)" style="fill: #e1812c; stroke: #3d3d3d; stroke-width: 0.75; stroke-linejoin: miter"/> " clip-path="url(#p5d01fc2d82)" style="fill: #e1812c; stroke: #3d3d3d; stroke-width: 0.75; stroke-linejoin: miter"/>
</g> </g>
<g id="patch_23"> <g id="patch_23">
<path d="M 146.4 640.8 <path d="M 146.4 640.8
@ -221,7 +221,7 @@ L 146.4 640.8
L 146.4 640.8 L 146.4 640.8
L 146.4 640.8 L 146.4 640.8
z z
" clip-path="url(#p0c45fec8d2)" style="fill: #3a923a; stroke: #3d3d3d; stroke-width: 0.75; stroke-linejoin: miter"/> " clip-path="url(#p5d01fc2d82)" style="fill: #3a923a; stroke: #3d3d3d; stroke-width: 0.75; stroke-linejoin: miter"/>
</g> </g>
<g id="patch_24"> <g id="patch_24">
<path d="M 146.4 640.8 <path d="M 146.4 640.8
@ -229,7 +229,7 @@ L 146.4 640.8
L 146.4 640.8 L 146.4 640.8
L 146.4 640.8 L 146.4 640.8
z z
" clip-path="url(#p0c45fec8d2)" style="fill: #c03d3e; stroke: #3d3d3d; stroke-width: 0.75; stroke-linejoin: miter"/> " clip-path="url(#p5d01fc2d82)" style="fill: #c03d3e; stroke: #3d3d3d; stroke-width: 0.75; stroke-linejoin: miter"/>
</g> </g>
<g id="patch_25"> <g id="patch_25">
<path d="M 146.4 640.8 <path d="M 146.4 640.8
@ -237,7 +237,7 @@ L 146.4 640.8
L 146.4 640.8 L 146.4 640.8
L 146.4 640.8 L 146.4 640.8
z z
" clip-path="url(#p0c45fec8d2)" style="fill: #9372b2; stroke: #3d3d3d; stroke-width: 0.75; stroke-linejoin: miter"/> " clip-path="url(#p5d01fc2d82)" style="fill: #9372b2; stroke: #3d3d3d; stroke-width: 0.75; stroke-linejoin: miter"/>
</g> </g>
<g id="patch_26"> <g id="patch_26">
<path d="M 146.4 640.8 <path d="M 146.4 640.8
@ -245,18 +245,18 @@ L 146.4 640.8
L 146.4 640.8 L 146.4 640.8
L 146.4 640.8 L 146.4 640.8
z z
" clip-path="url(#p0c45fec8d2)" style="fill: #845b53; stroke: #3d3d3d; stroke-width: 0.75; stroke-linejoin: miter"/> " clip-path="url(#p5d01fc2d82)" style="fill: #845b53; stroke: #3d3d3d; stroke-width: 0.75; stroke-linejoin: miter"/>
</g> </g>
<g id="matplotlib.axis_1"> <g id="matplotlib.axis_1">
<g id="xtick_1"> <g id="xtick_1">
<g id="line2d_1"> <g id="line2d_1">
<defs> <defs>
<path id="ma24f04e49a" d="M 0 0 <path id="me0757939e6" d="M 0 0
L 0 3.5 L 0 3.5
" style="stroke: #000000; stroke-width: 0.8"/> " style="stroke: #000000; stroke-width: 0.8"/>
</defs> </defs>
<g> <g>
<use xlink:href="#ma24f04e49a" x="146.4" y="650.8" style="stroke: #000000; stroke-width: 0.8"/> <use xlink:href="#me0757939e6" x="146.4" y="650.8" style="stroke: #000000; stroke-width: 0.8"/>
</g> </g>
</g> </g>
<g id="text_1"> <g id="text_1">
@ -452,7 +452,7 @@ z
<g id="xtick_2"> <g id="xtick_2">
<g id="line2d_2"> <g id="line2d_2">
<g> <g>
<use xlink:href="#ma24f04e49a" x="295.2" y="650.8" style="stroke: #000000; stroke-width: 0.8"/> <use xlink:href="#me0757939e6" x="295.2" y="650.8" style="stroke: #000000; stroke-width: 0.8"/>
</g> </g>
</g> </g>
<g id="text_2"> <g id="text_2">
@ -512,7 +512,7 @@ z
<g id="xtick_3"> <g id="xtick_3">
<g id="line2d_3"> <g id="line2d_3">
<g> <g>
<use xlink:href="#ma24f04e49a" x="444" y="650.8" style="stroke: #000000; stroke-width: 0.8"/> <use xlink:href="#me0757939e6" x="444" y="650.8" style="stroke: #000000; stroke-width: 0.8"/>
</g> </g>
</g> </g>
<g id="text_3"> <g id="text_3">
@ -615,12 +615,12 @@ z
<g id="ytick_1"> <g id="ytick_1">
<g id="line2d_4"> <g id="line2d_4">
<defs> <defs>
<path id="mff0a3fa1b8" d="M 0 0 <path id="me8bc335bd4" d="M 0 0
L -3.5 0 L -3.5 0
" style="stroke: #000000; stroke-width: 0.8"/> " style="stroke: #000000; stroke-width: 0.8"/>
</defs> </defs>
<g> <g>
<use xlink:href="#mff0a3fa1b8" x="62" y="640.8" style="stroke: #000000; stroke-width: 0.8"/> <use xlink:href="#me8bc335bd4" x="62" y="640.8" style="stroke: #000000; stroke-width: 0.8"/>
</g> </g>
</g> </g>
<g id="text_5"> <g id="text_5">
@ -665,7 +665,7 @@ z
<g id="ytick_2"> <g id="ytick_2">
<g id="line2d_5"> <g id="line2d_5">
<g> <g>
<use xlink:href="#mff0a3fa1b8" x="62" y="585.36" style="stroke: #000000; stroke-width: 0.8"/> <use xlink:href="#me8bc335bd4" x="62" y="585.36" style="stroke: #000000; stroke-width: 0.8"/>
</g> </g>
</g> </g>
<g id="text_6"> <g id="text_6">
@ -680,7 +680,7 @@ z
<g id="ytick_3"> <g id="ytick_3">
<g id="line2d_6"> <g id="line2d_6">
<g> <g>
<use xlink:href="#mff0a3fa1b8" x="62" y="529.92" style="stroke: #000000; stroke-width: 0.8"/> <use xlink:href="#me8bc335bd4" x="62" y="529.92" style="stroke: #000000; stroke-width: 0.8"/>
</g> </g>
</g> </g>
<g id="text_7"> <g id="text_7">
@ -721,7 +721,7 @@ z
<g id="ytick_4"> <g id="ytick_4">
<g id="line2d_7"> <g id="line2d_7">
<g> <g>
<use xlink:href="#mff0a3fa1b8" x="62" y="474.48" style="stroke: #000000; stroke-width: 0.8"/> <use xlink:href="#me8bc335bd4" x="62" y="474.48" style="stroke: #000000; stroke-width: 0.8"/>
</g> </g>
</g> </g>
<g id="text_8"> <g id="text_8">
@ -770,7 +770,7 @@ z
<g id="ytick_5"> <g id="ytick_5">
<g id="line2d_8"> <g id="line2d_8">
<g> <g>
<use xlink:href="#mff0a3fa1b8" x="62" y="419.04" style="stroke: #000000; stroke-width: 0.8"/> <use xlink:href="#me8bc335bd4" x="62" y="419.04" style="stroke: #000000; stroke-width: 0.8"/>
</g> </g>
</g> </g>
<g id="text_9"> <g id="text_9">
@ -806,7 +806,7 @@ z
<g id="ytick_6"> <g id="ytick_6">
<g id="line2d_9"> <g id="line2d_9">
<g> <g>
<use xlink:href="#mff0a3fa1b8" x="62" y="363.6" style="stroke: #000000; stroke-width: 0.8"/> <use xlink:href="#me8bc335bd4" x="62" y="363.6" style="stroke: #000000; stroke-width: 0.8"/>
</g> </g>
</g> </g>
<g id="text_10"> <g id="text_10">
@ -848,7 +848,7 @@ z
<g id="ytick_7"> <g id="ytick_7">
<g id="line2d_10"> <g id="line2d_10">
<g> <g>
<use xlink:href="#mff0a3fa1b8" x="62" y="308.16" style="stroke: #000000; stroke-width: 0.8"/> <use xlink:href="#me8bc335bd4" x="62" y="308.16" style="stroke: #000000; stroke-width: 0.8"/>
</g> </g>
</g> </g>
<g id="text_11"> <g id="text_11">
@ -895,7 +895,7 @@ z
<g id="ytick_8"> <g id="ytick_8">
<g id="line2d_11"> <g id="line2d_11">
<g> <g>
<use xlink:href="#mff0a3fa1b8" x="62" y="252.72" style="stroke: #000000; stroke-width: 0.8"/> <use xlink:href="#me8bc335bd4" x="62" y="252.72" style="stroke: #000000; stroke-width: 0.8"/>
</g> </g>
</g> </g>
<g id="text_12"> <g id="text_12">
@ -922,7 +922,7 @@ z
<g id="ytick_9"> <g id="ytick_9">
<g id="line2d_12"> <g id="line2d_12">
<g> <g>
<use xlink:href="#mff0a3fa1b8" x="62" y="197.28" style="stroke: #000000; stroke-width: 0.8"/> <use xlink:href="#me8bc335bd4" x="62" y="197.28" style="stroke: #000000; stroke-width: 0.8"/>
</g> </g>
</g> </g>
<g id="text_13"> <g id="text_13">
@ -978,7 +978,7 @@ z
<g id="ytick_10"> <g id="ytick_10">
<g id="line2d_13"> <g id="line2d_13">
<g> <g>
<use xlink:href="#mff0a3fa1b8" x="62" y="141.84" style="stroke: #000000; stroke-width: 0.8"/> <use xlink:href="#me8bc335bd4" x="62" y="141.84" style="stroke: #000000; stroke-width: 0.8"/>
</g> </g>
</g> </g>
<g id="text_14"> <g id="text_14">
@ -1025,7 +1025,7 @@ z
<g id="ytick_11"> <g id="ytick_11">
<g id="line2d_14"> <g id="line2d_14">
<g> <g>
<use xlink:href="#mff0a3fa1b8" x="62" y="86.4" style="stroke: #000000; stroke-width: 0.8"/> <use xlink:href="#me8bc335bd4" x="62" y="86.4" style="stroke: #000000; stroke-width: 0.8"/>
</g> </g>
</g> </g>
<g id="text_15"> <g id="text_15">
@ -1093,532 +1093,532 @@ z
<g id="line2d_15"> <g id="line2d_15">
<path d="M 96.8 366.786207 <path d="M 96.8 366.786207
L 96.8 366.786207 L 96.8 366.786207
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_16"> <g id="line2d_16">
<path d="M 96.8 360.413793 <path d="M 96.8 360.413793
L 96.8 360.413793 L 96.8 360.413793
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_17"> <g id="line2d_17">
<path d="M 91.9392 366.786207 <path d="M 91.9392 366.786207
L 101.6608 366.786207 L 101.6608 366.786207
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_18"> <g id="line2d_18">
<path d="M 91.9392 360.413793 <path d="M 91.9392 360.413793
L 101.6608 360.413793 L 101.6608 360.413793
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_19"/> <g id="line2d_19"/>
<g id="line2d_20"> <g id="line2d_20">
<path d="M 116.64 197.28 <path d="M 116.64 197.28
L 116.64 233.485714 L 116.64 233.485714
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_21"> <g id="line2d_21">
<path d="M 116.64 165.6 <path d="M 116.64 165.6
L 116.64 123.36 L 116.64 123.36
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_22"> <g id="line2d_22">
<path d="M 111.7792 233.485714 <path d="M 111.7792 233.485714
L 121.5008 233.485714 L 121.5008 233.485714
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_23"> <g id="line2d_23">
<path d="M 111.7792 123.36 <path d="M 111.7792 123.36
L 121.5008 123.36 L 121.5008 123.36
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_24"/> <g id="line2d_24"/>
<g id="line2d_25"> <g id="line2d_25">
<path d="M 136.48 206.921739 <path d="M 136.48 206.921739
L 136.48 271.2 L 136.48 271.2
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_26"> <g id="line2d_26">
<path d="M 136.48 160.32 <path d="M 136.48 160.32
L 136.48 112.8 L 136.48 112.8
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_27"> <g id="line2d_27">
<path d="M 131.6192 271.2 <path d="M 131.6192 271.2
L 141.3408 271.2 L 141.3408 271.2
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_28"> <g id="line2d_28">
<path d="M 131.6192 112.8 <path d="M 131.6192 112.8
L 141.3408 112.8 L 141.3408 112.8
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_29"> <g id="line2d_29">
<defs> <defs>
<path id="m032be3f3bf" d="M -0 3.535534 <path id="m3132842356" d="M -0 3.535534
L 2.12132 0 L 2.12132 0
L -0 -3.535534 L -0 -3.535534
L -2.12132 -0 L -2.12132 -0
z z
" style="stroke: #3d3d3d; stroke-linejoin: miter"/> " style="stroke: #3d3d3d; stroke-linejoin: miter"/>
</defs> </defs>
<g clip-path="url(#p0c45fec8d2)"> <g clip-path="url(#p5d01fc2d82)">
<use xlink:href="#m032be3f3bf" x="136.48" y="294.3" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/> <use xlink:href="#m3132842356" x="136.48" y="294.3" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/>
</g> </g>
</g> </g>
<g id="line2d_30"> <g id="line2d_30">
<path d="M 156.32 195.105882 <path d="M 156.32 195.105882
L 156.32 232.294737 L 156.32 232.294737
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_31"> <g id="line2d_31">
<path d="M 156.32 155.7 <path d="M 156.32 155.7
L 156.32 121.787234 L 156.32 121.787234
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_32"> <g id="line2d_32">
<path d="M 151.4592 232.294737 <path d="M 151.4592 232.294737
L 161.1808 232.294737 L 161.1808 232.294737
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_33"> <g id="line2d_33">
<path d="M 151.4592 121.787234 <path d="M 151.4592 121.787234
L 161.1808 121.787234 L 161.1808 121.787234
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_34"> <g id="line2d_34">
<g clip-path="url(#p0c45fec8d2)"> <g clip-path="url(#p5d01fc2d82)">
<use xlink:href="#m032be3f3bf" x="156.32" y="261.473684" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/> <use xlink:href="#m3132842356" x="156.32" y="261.473684" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/>
</g> </g>
</g> </g>
<g id="line2d_35"> <g id="line2d_35">
<path d="M 176.16 173.799529 <path d="M 176.16 173.799529
L 176.16 216.847059 L 176.16 216.847059
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_36"> <g id="line2d_36">
<path d="M 176.16 142.971429 <path d="M 176.16 142.971429
L 176.16 110.504348 L 176.16 110.504348
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_37"> <g id="line2d_37">
<path d="M 171.2992 216.847059 <path d="M 171.2992 216.847059
L 181.0208 216.847059 L 181.0208 216.847059
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_38"> <g id="line2d_38">
<path d="M 171.2992 110.504348 <path d="M 171.2992 110.504348
L 181.0208 110.504348 L 181.0208 110.504348
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_39"/> <g id="line2d_39"/>
<g id="line2d_40"> <g id="line2d_40">
<path d="M 196 241.245209 <path d="M 196 241.245209
L 196 298.08 L 196 298.08
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_41"> <g id="line2d_41">
<path d="M 196 201.858676 <path d="M 196 201.858676
L 196 149.76 L 196 149.76
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_42"> <g id="line2d_42">
<path d="M 191.1392 298.08 <path d="M 191.1392 298.08
L 200.8608 298.08 L 200.8608 298.08
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_43"> <g id="line2d_43">
<path d="M 191.1392 149.76 <path d="M 191.1392 149.76
L 200.8608 149.76 L 200.8608 149.76
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_44"/> <g id="line2d_44"/>
<g id="line2d_45"> <g id="line2d_45">
<path d="M 245.6 86.4 <path d="M 245.6 86.4
L 245.6 86.4 L 245.6 86.4
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_46"> <g id="line2d_46">
<path d="M 245.6 86.4 <path d="M 245.6 86.4
L 245.6 86.4 L 245.6 86.4
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_47"> <g id="line2d_47">
<path d="M 240.7392 86.4 <path d="M 240.7392 86.4
L 250.4608 86.4 L 250.4608 86.4
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_48"> <g id="line2d_48">
<path d="M 240.7392 86.4 <path d="M 240.7392 86.4
L 250.4608 86.4 L 250.4608 86.4
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_49"/> <g id="line2d_49"/>
<g id="line2d_50"> <g id="line2d_50">
<path d="M 265.44 125.07907 <path d="M 265.44 125.07907
L 265.44 150.865116 L 265.44 150.865116
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_51"> <g id="line2d_51">
<path d="M 265.44 99 <path d="M 265.44 99
L 265.44 86.4 L 265.44 86.4
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_52"> <g id="line2d_52">
<path d="M 260.5792 150.865116 <path d="M 260.5792 150.865116
L 270.3008 150.865116 L 270.3008 150.865116
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_53"> <g id="line2d_53">
<path d="M 260.5792 86.4 <path d="M 260.5792 86.4
L 270.3008 86.4 L 270.3008 86.4
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_54"> <g id="line2d_54">
<g clip-path="url(#p0c45fec8d2)"> <g clip-path="url(#p5d01fc2d82)">
<use xlink:href="#m032be3f3bf" x="265.44" y="176.651163" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/> <use xlink:href="#m3132842356" x="265.44" y="176.651163" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/>
</g> </g>
</g> </g>
<g id="line2d_55"> <g id="line2d_55">
<path d="M 285.28 434.511628 <path d="M 285.28 434.511628
L 285.28 511.869767 L 285.28 511.869767
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_56"> <g id="line2d_56">
<path d="M 285.28 382.939535 <path d="M 285.28 382.939535
L 285.28 313.2 L 285.28 313.2
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_57"> <g id="line2d_57">
<path d="M 280.4192 511.869767 <path d="M 280.4192 511.869767
L 290.1408 511.869767 L 290.1408 511.869767
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_58"> <g id="line2d_58">
<path d="M 280.4192 313.2 <path d="M 280.4192 313.2
L 290.1408 313.2 L 290.1408 313.2
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_59"> <g id="line2d_59">
<g clip-path="url(#p0c45fec8d2)"> <g clip-path="url(#p5d01fc2d82)">
<use xlink:href="#m032be3f3bf" x="285.28" y="514.8" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/> <use xlink:href="#m3132842356" x="285.28" y="514.8" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/>
<use xlink:href="#m032be3f3bf" x="285.28" y="254.009302" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/> <use xlink:href="#m3132842356" x="285.28" y="254.009302" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/>
<use xlink:href="#m032be3f3bf" x="285.28" y="288" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/> <use xlink:href="#m3132842356" x="285.28" y="288" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/>
<use xlink:href="#m032be3f3bf" x="285.28" y="300.6" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/> <use xlink:href="#m3132842356" x="285.28" y="300.6" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/>
<use xlink:href="#m032be3f3bf" x="285.28" y="288" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/> <use xlink:href="#m3132842356" x="285.28" y="288" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/>
</g> </g>
</g> </g>
<g id="line2d_60"> <g id="line2d_60">
<path d="M 305.12 137.972093 <path d="M 305.12 137.972093
L 305.12 176.651163 L 305.12 176.651163
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_61"> <g id="line2d_61">
<path d="M 305.12 99.293023 <path d="M 305.12 99.293023
L 305.12 86.4 L 305.12 86.4
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_62"> <g id="line2d_62">
<path d="M 300.2592 176.651163 <path d="M 300.2592 176.651163
L 309.9808 176.651163 L 309.9808 176.651163
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_63"> <g id="line2d_63">
<path d="M 300.2592 86.4 <path d="M 300.2592 86.4
L 309.9808 86.4 L 309.9808 86.4
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_64"/> <g id="line2d_64"/>
<g id="line2d_65"> <g id="line2d_65">
<path d="M 324.96 125.07907 <path d="M 324.96 125.07907
L 324.96 163.75814 L 324.96 163.75814
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_66"> <g id="line2d_66">
<path d="M 324.96 95.85 <path d="M 324.96 95.85
L 324.96 86.4 L 324.96 86.4
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_67"> <g id="line2d_67">
<path d="M 320.0992 163.75814 <path d="M 320.0992 163.75814
L 329.8208 163.75814 L 329.8208 163.75814
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_68"> <g id="line2d_68">
<path d="M 320.0992 86.4 <path d="M 320.0992 86.4
L 329.8208 86.4 L 329.8208 86.4
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_69"> <g id="line2d_69">
<g clip-path="url(#p0c45fec8d2)"> <g clip-path="url(#p5d01fc2d82)">
<use xlink:href="#m032be3f3bf" x="324.96" y="174.6" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/> <use xlink:href="#m3132842356" x="324.96" y="174.6" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/>
</g> </g>
</g> </g>
<g id="line2d_70"> <g id="line2d_70">
<path d="M 344.8 250.2 <path d="M 344.8 250.2
L 344.8 325.8 L 344.8 325.8
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_71"> <g id="line2d_71">
<path d="M 344.8 197.236047 <path d="M 344.8 197.236047
L 344.8 125.07907 L 344.8 125.07907
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_72"> <g id="line2d_72">
<path d="M 339.9392 325.8 <path d="M 339.9392 325.8
L 349.6608 325.8 L 349.6608 325.8
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_73"> <g id="line2d_73">
<path d="M 339.9392 125.07907 <path d="M 339.9392 125.07907
L 349.6608 125.07907 L 349.6608 125.07907
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_74"> <g id="line2d_74">
<g clip-path="url(#p0c45fec8d2)"> <g clip-path="url(#p5d01fc2d82)">
<use xlink:href="#m032be3f3bf" x="344.8" y="363.6" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/> <use xlink:href="#m3132842356" x="344.8" y="363.6" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/>
<use xlink:href="#m032be3f3bf" x="344.8" y="111.6" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/> <use xlink:href="#m3132842356" x="344.8" y="111.6" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/>
</g> </g>
</g> </g>
<g id="line2d_75"> <g id="line2d_75">
<path d="M 394.4 274.043077 <path d="M 394.4 274.043077
L 394.4 274.043077 L 394.4 274.043077
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_76"> <g id="line2d_76">
<path d="M 394.4 268.378626 <path d="M 394.4 268.378626
L 394.4 268.378626 L 394.4 268.378626
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_77"> <g id="line2d_77">
<path d="M 389.5392 274.043077 <path d="M 389.5392 274.043077
L 399.2608 274.043077 L 399.2608 274.043077
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_78"> <g id="line2d_78">
<path d="M 389.5392 268.378626 <path d="M 389.5392 268.378626
L 399.2608 268.378626 L 399.2608 268.378626
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_79"/> <g id="line2d_79"/>
<g id="line2d_80"> <g id="line2d_80">
<path d="M 414.24 160.32 <path d="M 414.24 160.32
L 414.24 185.608421 L 414.24 185.608421
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_81"> <g id="line2d_81">
<path d="M 414.24 137.839175 <path d="M 414.24 137.839175
L 414.24 111.04 L 414.24 111.04
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_82"> <g id="line2d_82">
<path d="M 409.3792 185.608421 <path d="M 409.3792 185.608421
L 419.1008 185.608421 L 419.1008 185.608421
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_83"> <g id="line2d_83">
<path d="M 409.3792 111.04 <path d="M 409.3792 111.04
L 419.1008 111.04 L 419.1008 111.04
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_84"> <g id="line2d_84">
<g clip-path="url(#p0c45fec8d2)"> <g clip-path="url(#p5d01fc2d82)">
<use xlink:href="#m032be3f3bf" x="414.24" y="206.921739" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/> <use xlink:href="#m3132842356" x="414.24" y="206.921739" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/>
</g> </g>
</g> </g>
<g id="line2d_85"> <g id="line2d_85">
<path d="M 434.08 360.497015 <path d="M 434.08 360.497015
L 434.08 426.193548 L 434.08 426.193548
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_86"> <g id="line2d_86">
<path d="M 434.08 309.814925 <path d="M 434.08 309.814925
L 434.08 236.237838 L 434.08 236.237838
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_87"> <g id="line2d_87">
<path d="M 429.2192 426.193548 <path d="M 429.2192 426.193548
L 438.9408 426.193548 L 438.9408 426.193548
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_88"> <g id="line2d_88">
<path d="M 429.2192 236.237838 <path d="M 429.2192 236.237838
L 438.9408 236.237838 L 438.9408 236.237838
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_89"> <g id="line2d_89">
<g clip-path="url(#p0c45fec8d2)"> <g clip-path="url(#p5d01fc2d82)">
<use xlink:href="#m032be3f3bf" x="434.08" y="449.627586" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/> <use xlink:href="#m3132842356" x="434.08" y="449.627586" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/>
<use xlink:href="#m032be3f3bf" x="434.08" y="442.8" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/> <use xlink:href="#m3132842356" x="434.08" y="442.8" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/>
<use xlink:href="#m032be3f3bf" x="434.08" y="452.867797" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/> <use xlink:href="#m3132842356" x="434.08" y="452.867797" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/>
<use xlink:href="#m032be3f3bf" x="434.08" y="439.2" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/> <use xlink:href="#m3132842356" x="434.08" y="439.2" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/>
<use xlink:href="#m032be3f3bf" x="434.08" y="439.2" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/> <use xlink:href="#m3132842356" x="434.08" y="439.2" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/>
<use xlink:href="#m032be3f3bf" x="434.08" y="219.736709" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/> <use xlink:href="#m3132842356" x="434.08" y="219.736709" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/>
<use xlink:href="#m032be3f3bf" x="434.08" y="232.294737" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/> <use xlink:href="#m3132842356" x="434.08" y="232.294737" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/>
<use xlink:href="#m032be3f3bf" x="434.08" y="232.294737" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/> <use xlink:href="#m3132842356" x="434.08" y="232.294737" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/>
</g> </g>
</g> </g>
<g id="line2d_90"> <g id="line2d_90">
<path d="M 453.92 162.265263 <path d="M 453.92 162.265263
L 453.92 185.608421 L 453.92 185.608421
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_91"> <g id="line2d_91">
<path d="M 453.92 136.52 <path d="M 453.92 136.52
L 453.92 104.676923 L 453.92 104.676923
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_92"> <g id="line2d_92">
<path d="M 449.0592 185.608421 <path d="M 449.0592 185.608421
L 458.7808 185.608421 L 458.7808 185.608421
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_93"> <g id="line2d_93">
<path d="M 449.0592 104.676923 <path d="M 449.0592 104.676923
L 458.7808 104.676923 L 458.7808 104.676923
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_94"> <g id="line2d_94">
<g clip-path="url(#p0c45fec8d2)"> <g clip-path="url(#p5d01fc2d82)">
<use xlink:href="#m032be3f3bf" x="453.92" y="208.368" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/> <use xlink:href="#m3132842356" x="453.92" y="208.368" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/>
<use xlink:href="#m032be3f3bf" x="453.92" y="204.357447" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/> <use xlink:href="#m3132842356" x="453.92" y="204.357447" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/>
</g> </g>
</g> </g>
<g id="line2d_95"> <g id="line2d_95">
<path d="M 473.76 148 <path d="M 473.76 148
L 473.76 180.765957 L 473.76 180.765957
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_96"> <g id="line2d_96">
<path d="M 473.76 122.556522 <path d="M 473.76 122.556522
L 473.76 98.72 L 473.76 98.72
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_97"> <g id="line2d_97">
<path d="M 468.8992 180.765957 <path d="M 468.8992 180.765957
L 478.6208 180.765957 L 478.6208 180.765957
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_98"> <g id="line2d_98">
<path d="M 468.8992 98.72 <path d="M 468.8992 98.72
L 478.6208 98.72 L 478.6208 98.72
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_99"/> <g id="line2d_99"/>
<g id="line2d_100"> <g id="line2d_100">
<path d="M 493.6 240.028916 <path d="M 493.6 240.028916
L 493.6 289.913924 L 493.6 289.913924
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_101"> <g id="line2d_101">
<path d="M 493.6 204.755056 <path d="M 493.6 204.755056
L 493.6 155.7 L 493.6 155.7
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_102"> <g id="line2d_102">
<path d="M 488.7392 289.913924 <path d="M 488.7392 289.913924
L 498.4608 289.913924 L 498.4608 289.913924
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_103"> <g id="line2d_103">
<path d="M 488.7392 155.7 <path d="M 488.7392 155.7
L 498.4608 155.7 L 498.4608 155.7
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_104"> <g id="line2d_104">
<g clip-path="url(#p0c45fec8d2)"> <g clip-path="url(#p5d01fc2d82)">
<use xlink:href="#m032be3f3bf" x="493.6" y="324" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/> <use xlink:href="#m3132842356" x="493.6" y="324" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/>
<use xlink:href="#m032be3f3bf" x="493.6" y="142.462921" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/> <use xlink:href="#m3132842356" x="493.6" y="142.462921" style="fill: #3d3d3d; stroke: #3d3d3d; stroke-linejoin: miter"/>
</g> </g>
</g> </g>
<g id="line2d_105"> <g id="line2d_105">
<path d="M 87.0784 366.786207 <path d="M 87.0784 366.786207
L 106.5216 366.786207 L 106.5216 366.786207
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_106"> <g id="line2d_106">
<path d="M 106.9184 179.671698 <path d="M 106.9184 179.671698
L 126.3616 179.671698 L 126.3616 179.671698
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_107"> <g id="line2d_107">
<path d="M 126.7584 182.817391 <path d="M 126.7584 182.817391
L 146.2016 182.817391 L 146.2016 182.817391
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_108"> <g id="line2d_108">
<path d="M 146.5984 178.8 <path d="M 146.5984 178.8
L 166.0416 178.8 L 166.0416 178.8
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_109"> <g id="line2d_109">
<path d="M 166.4384 155.7 <path d="M 166.4384 155.7
L 185.8816 155.7 L 185.8816 155.7
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_110"> <g id="line2d_110">
<path d="M 186.2784 225 <path d="M 186.2784 225
L 205.7216 225 L 205.7216 225
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_111"> <g id="line2d_111">
<path d="M 235.8784 86.4 <path d="M 235.8784 86.4
L 255.3216 86.4 L 255.3216 86.4
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_112"> <g id="line2d_112">
<path d="M 255.7184 111.6 <path d="M 255.7184 111.6
L 275.1616 111.6 L 275.1616 111.6
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_113"> <g id="line2d_113">
<path d="M 275.5584 408.725581 <path d="M 275.5584 408.725581
L 295.0016 408.725581 L 295.0016 408.725581
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_114"> <g id="line2d_114">
<path d="M 295.3984 112.186047 <path d="M 295.3984 112.186047
L 314.8416 112.186047 L 314.8416 112.186047
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_115"> <g id="line2d_115">
<path d="M 315.2384 105.446512 <path d="M 315.2384 105.446512
L 334.6816 105.446512 L 334.6816 105.446512
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_116"> <g id="line2d_116">
<path d="M 335.0784 220.165116 <path d="M 335.0784 220.165116
L 354.5216 220.165116 L 354.5216 220.165116
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_117"> <g id="line2d_117">
<path d="M 384.6784 274.043077 <path d="M 384.6784 274.043077
L 404.1216 274.043077 L 404.1216 274.043077
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_118"> <g id="line2d_118">
<path d="M 404.5184 148.635052 <path d="M 404.5184 148.635052
L 423.9616 148.635052 L 423.9616 148.635052
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_119"> <g id="line2d_119">
<path d="M 424.3584 333.747692 <path d="M 424.3584 333.747692
L 443.8016 333.747692 L 443.8016 333.747692
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_120"> <g id="line2d_120">
<path d="M 444.1984 153.171692 <path d="M 444.1984 153.171692
L 463.6416 153.171692 L 463.6416 153.171692
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_121"> <g id="line2d_121">
<path d="M 464.0384 135.704348 <path d="M 464.0384 135.704348
L 483.4816 135.704348 L 483.4816 135.704348
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="line2d_122"> <g id="line2d_122">
<path d="M 483.8784 225.761538 <path d="M 483.8784 225.761538
L 503.3216 225.761538 L 503.3216 225.761538
" clip-path="url(#p0c45fec8d2)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/> " clip-path="url(#p5d01fc2d82)" style="fill: none; stroke: #3d3d3d; stroke-width: 1.5; stroke-linecap: square"/>
</g> </g>
<g id="patch_27"> <g id="patch_27">
<path d="M 62 640.8 <path d="M 62 640.8
@ -2223,7 +2223,7 @@ z
</g> </g>
</g> </g>
<defs> <defs>
<clipPath id="p0c45fec8d2"> <clipPath id="p5d01fc2d82">
<rect x="72" y="86.4" width="446.4" height="554.4"/> <rect x="72" y="86.4" width="446.4" height="554.4"/>
</clipPath> </clipPath>
</defs> </defs>

Before

Width:  |  Height:  |  Size: 64 KiB

After

Width:  |  Height:  |  Size: 64 KiB

View File

@ -1,2 +1,46 @@
,classifier_a,classifier_b,metric,pvalue ,classifier_a,classifier_b,metric,pvalue
1,BiasedClassifier,SVC,f1,4.337936940303975e-17 1,DecisionTreeClassifier,GaussianNB,precision,0.08929133280531223
2,DecisionTreeClassifier,GaussianNB,recall,3.877480505802584e-18
3,DecisionTreeClassifier,GaussianNB,f1,3.896340037647931e-18
4,DecisionTreeClassifier,MLPClassifier,precision,0.4012348497407896
5,DecisionTreeClassifier,MLPClassifier,recall,0.011820059675817408
6,DecisionTreeClassifier,MLPClassifier,f1,0.4710651684151138
7,DecisionTreeClassifier,RandomForestClassifier,precision,8.283473187323235e-12
8,DecisionTreeClassifier,RandomForestClassifier,recall,0.3276029575034267
9,DecisionTreeClassifier,RandomForestClassifier,f1,1.4515097813437996e-10
10,DecisionTreeClassifier,SVC,precision,6.472995016722292e-16
11,DecisionTreeClassifier,SVC,recall,3.864155888689142e-18
12,DecisionTreeClassifier,SVC,f1,3.896559845095909e-18
13,GaussianNB,MLPClassifier,precision,0.03476088049603166
14,GaussianNB,MLPClassifier,recall,3.873544128513129e-18
15,GaussianNB,MLPClassifier,f1,3.896120241954008e-18
16,GaussianNB,RandomForestClassifier,precision,5.027978595522601e-10
17,GaussianNB,RandomForestClassifier,recall,3.8656827355135645e-18
18,GaussianNB,RandomForestClassifier,f1,3.896120241954008e-18
19,GaussianNB,SVC,precision,7.361006463422299e-13
20,GaussianNB,SVC,recall,3.881639684405151e-18
21,GaussianNB,SVC,f1,4.265842540306607e-18
22,MLPClassifier,RandomForestClassifier,precision,2.9302015489842885e-09
23,MLPClassifier,RandomForestClassifier,recall,0.00010909237805840521
24,MLPClassifier,RandomForestClassifier,f1,1.1542838431590428e-11
25,MLPClassifier,SVC,precision,3.6744416439536415e-16
26,MLPClassifier,SVC,recall,5.645631221640026e-18
27,MLPClassifier,SVC,f1,5.112831740936498e-18
28,RandomForestClassifier,SVC,precision,4.0161556854627e-18
29,RandomForestClassifier,SVC,recall,3.8584897469079895e-18
30,RandomForestClassifier,SVC,f1,3.896559845095909e-18
31,BiasedClassifier,DecisionTreeClassifier,precision,3.881858705649312e-18
32,BiasedClassifier,DecisionTreeClassifier,recall,1.0267247842714985e-14
33,BiasedClassifier,DecisionTreeClassifier,f1,3.881858705649312e-18
34,BiasedClassifier,GaussianNB,precision,3.876167958900271e-18
35,BiasedClassifier,GaussianNB,recall,3.7861845925093915e-18
36,BiasedClassifier,GaussianNB,f1,4.22499456189738e-16
37,BiasedClassifier,MLPClassifier,precision,3.887338045617697e-18
38,BiasedClassifier,MLPClassifier,recall,2.2417567344517687e-15
39,BiasedClassifier,MLPClassifier,f1,3.886680137925553e-18
40,BiasedClassifier,RandomForestClassifier,precision,3.8798879361158955e-18
41,BiasedClassifier,RandomForestClassifier,recall,4.647240654275836e-14
42,BiasedClassifier,RandomForestClassifier,f1,3.8798879361158955e-18
43,BiasedClassifier,SVC,precision,3.890848669938197e-18
44,BiasedClassifier,SVC,recall,3.803119001919453e-18
45,BiasedClassifier,SVC,f1,4.337936940303975e-17

1 classifier_a classifier_b metric pvalue
2 1 BiasedClassifier DecisionTreeClassifier SVC GaussianNB f1 precision 4.337936940303975e-17 0.08929133280531223
3 2 DecisionTreeClassifier GaussianNB recall 3.877480505802584e-18
4 3 DecisionTreeClassifier GaussianNB f1 3.896340037647931e-18
5 4 DecisionTreeClassifier MLPClassifier precision 0.4012348497407896
6 5 DecisionTreeClassifier MLPClassifier recall 0.011820059675817408
7 6 DecisionTreeClassifier MLPClassifier f1 0.4710651684151138
8 7 DecisionTreeClassifier RandomForestClassifier precision 8.283473187323235e-12
9 8 DecisionTreeClassifier RandomForestClassifier recall 0.3276029575034267
10 9 DecisionTreeClassifier RandomForestClassifier f1 1.4515097813437996e-10
11 10 DecisionTreeClassifier SVC precision 6.472995016722292e-16
12 11 DecisionTreeClassifier SVC recall 3.864155888689142e-18
13 12 DecisionTreeClassifier SVC f1 3.896559845095909e-18
14 13 GaussianNB MLPClassifier precision 0.03476088049603166
15 14 GaussianNB MLPClassifier recall 3.873544128513129e-18
16 15 GaussianNB MLPClassifier f1 3.896120241954008e-18
17 16 GaussianNB RandomForestClassifier precision 5.027978595522601e-10
18 17 GaussianNB RandomForestClassifier recall 3.8656827355135645e-18
19 18 GaussianNB RandomForestClassifier f1 3.896120241954008e-18
20 19 GaussianNB SVC precision 7.361006463422299e-13
21 20 GaussianNB SVC recall 3.881639684405151e-18
22 21 GaussianNB SVC f1 4.265842540306607e-18
23 22 MLPClassifier RandomForestClassifier precision 2.9302015489842885e-09
24 23 MLPClassifier RandomForestClassifier recall 0.00010909237805840521
25 24 MLPClassifier RandomForestClassifier f1 1.1542838431590428e-11
26 25 MLPClassifier SVC precision 3.6744416439536415e-16
27 26 MLPClassifier SVC recall 5.645631221640026e-18
28 27 MLPClassifier SVC f1 5.112831740936498e-18
29 28 RandomForestClassifier SVC precision 4.0161556854627e-18
30 29 RandomForestClassifier SVC recall 3.8584897469079895e-18
31 30 RandomForestClassifier SVC f1 3.896559845095909e-18
32 31 BiasedClassifier DecisionTreeClassifier precision 3.881858705649312e-18
33 32 BiasedClassifier DecisionTreeClassifier recall 1.0267247842714985e-14
34 33 BiasedClassifier DecisionTreeClassifier f1 3.881858705649312e-18
35 34 BiasedClassifier GaussianNB precision 3.876167958900271e-18
36 35 BiasedClassifier GaussianNB recall 3.7861845925093915e-18
37 36 BiasedClassifier GaussianNB f1 4.22499456189738e-16
38 37 BiasedClassifier MLPClassifier precision 3.887338045617697e-18
39 38 BiasedClassifier MLPClassifier recall 2.2417567344517687e-15
40 39 BiasedClassifier MLPClassifier f1 3.886680137925553e-18
41 40 BiasedClassifier RandomForestClassifier precision 3.8798879361158955e-18
42 41 BiasedClassifier RandomForestClassifier recall 4.647240654275836e-14
43 42 BiasedClassifier RandomForestClassifier f1 3.8798879361158955e-18
44 43 BiasedClassifier SVC precision 3.890848669938197e-18
45 44 BiasedClassifier SVC recall 3.803119001919453e-18
46 45 BiasedClassifier SVC f1 4.337936940303975e-17

View File

@ -21,7 +21,7 @@ expected info, you'll be fine.-->
The code and result files, part of this submission, can be found at: The code and result files, part of this submission, can be found at:
- Repository: [https://github.com/infoMA2023/project-02-bug-prediction-maggicl](https://github.com/infoMA2023/project-02-bug-prediction-maggicl) - Repository: [https://github.com/infoMA2023/project-02-bug-prediction-maggicl](https://github.com/infoMA2023/project-02-bug-prediction-maggicl)
- Commit ID: **TBD** - Commit ID: **5f30b3b71b50b28f4c870ff114a760ece1005531**
# Data Pre-Processing # Data Pre-Processing

Binary file not shown.