From 7442a7576f84d2f3cc2f14cb53b446791280309c Mon Sep 17 00:00:00 2001
From: Lucas Philippe <lucasphilippe@MacBook-Air-de-Lucas.local>
Date: Wed, 14 Feb 2024 23:43:29 +0100
Subject: [PATCH] erreur adding

---
 TP1/TP1/BubbleCursor.py                 |  33 --
 TP1/TP1/BubbleWidget.py                 |  82 ----
 TP1/TP1/ExpSetup.py                     | 133 ------
 TP1/TP1/Experience.py                   |  22 -
 TP1/TP1/FileDisplayWidget.py            |  15 -
 TP1/TP1/Generate_targets.py             |  50 ---
 TP1/TP1/MainBubble.py                   |  20 -
 TP1/TP1/MainExp.py                      |  15 -
 TP1/TP1/MainNormal.py                   |  19 -
 TP1/TP1/MainRope.py                     |  16 -
 TP1/TP1/NormalCursor.py                 |  29 --
 TP1/TP1/NormalWidget.py                 |  82 ----
 TP1/TP1/README.md                       |   2 -
 TP1/TP1/RopeCursor.py                   |   7 -
 TP1/TP1/RopeWidget.py                   |  77 ----
 TP1/TP1/Target.py                       |  33 --
 TP1/TP1/__init__.py                     |   0
 TP1/TP1/data/__init__.py                |   0
 TP1/TP1/data/response.csv               | 547 ------------------------
 TP1/TP1/generated_exp/__init__.py       |   0
 TP1/TP1/generated_exp/src_d_30_s_12.csv |  30 --
 TP1/TP1/generated_exp/src_d_30_s_18.csv |  30 --
 TP1/TP1/generated_exp/src_d_30_s_9.csv  |  30 --
 TP1/TP1/generated_exp/src_d_60_s_12.csv |  60 ---
 TP1/TP1/generated_exp/src_d_60_s_18.csv |  60 ---
 TP1/TP1/generated_exp/src_d_60_s_9.csv  |  60 ---
 TP1/TP1/generated_exp/src_d_90_s_12.csv |  88 ----
 TP1/TP1/generated_exp/src_d_90_s_18.csv |  88 ----
 TP1/TP1/generated_exp/src_d_90_s_9.csv  |  88 ----
 TP1/TP1/src_tp_bubble.csv               | 100 -----
 30 files changed, 1816 deletions(-)
 delete mode 100644 TP1/TP1/BubbleCursor.py
 delete mode 100644 TP1/TP1/BubbleWidget.py
 delete mode 100644 TP1/TP1/ExpSetup.py
 delete mode 100644 TP1/TP1/Experience.py
 delete mode 100644 TP1/TP1/FileDisplayWidget.py
 delete mode 100644 TP1/TP1/Generate_targets.py
 delete mode 100644 TP1/TP1/MainBubble.py
 delete mode 100644 TP1/TP1/MainExp.py
 delete mode 100644 TP1/TP1/MainNormal.py
 delete mode 100644 TP1/TP1/MainRope.py
 delete mode 100644 TP1/TP1/NormalCursor.py
 delete mode 100644 TP1/TP1/NormalWidget.py
 delete mode 100644 TP1/TP1/README.md
 delete mode 100644 TP1/TP1/RopeCursor.py
 delete mode 100644 TP1/TP1/RopeWidget.py
 delete mode 100644 TP1/TP1/Target.py
 delete mode 100644 TP1/TP1/__init__.py
 delete mode 100644 TP1/TP1/data/__init__.py
 delete mode 100644 TP1/TP1/data/response.csv
 delete mode 100644 TP1/TP1/generated_exp/__init__.py
 delete mode 100644 TP1/TP1/generated_exp/src_d_30_s_12.csv
 delete mode 100644 TP1/TP1/generated_exp/src_d_30_s_18.csv
 delete mode 100644 TP1/TP1/generated_exp/src_d_30_s_9.csv
 delete mode 100644 TP1/TP1/generated_exp/src_d_60_s_12.csv
 delete mode 100644 TP1/TP1/generated_exp/src_d_60_s_18.csv
 delete mode 100644 TP1/TP1/generated_exp/src_d_60_s_9.csv
 delete mode 100644 TP1/TP1/generated_exp/src_d_90_s_12.csv
 delete mode 100644 TP1/TP1/generated_exp/src_d_90_s_18.csv
 delete mode 100644 TP1/TP1/generated_exp/src_d_90_s_9.csv
 delete mode 100644 TP1/TP1/src_tp_bubble.csv

diff --git a/TP1/TP1/BubbleCursor.py b/TP1/TP1/BubbleCursor.py
deleted file mode 100644
index 0c8ef71..0000000
--- a/TP1/TP1/BubbleCursor.py
+++ /dev/null
@@ -1,33 +0,0 @@
-from PyQt5.QtGui import QColor
-
-class BubbleCursor:
-    defaultCol=QColor("blue")
-
-    def __init__(self, targets):
-        self.x = 0
-        self.y = 0
-        self.size = 50
-        self.targets = targets
-        self.closest = None
-    def paint(self, painter):
-        painter.setBrush(self.defaultCol)
-        painter.drawEllipse(int(self.x - self.size), int(self.y - self.size), int(self.size * 2), int(self.size * 2))
-
-    def move(self, x, y):
-        self.x = x
-        self.y = y
-        min_distance = float("inf")
-        previous_closest = self.closest
-
-        for target in self.targets:
-            distance = ((self.x - target.x) ** 2 + (self.y - target.y) ** 2) ** 0.5  # cf. Theoreme de Pythagore
-            distance = distance - target.size/2  # Prendre la distance avec le contour du cercle et pas le centre
-            if distance < min_distance:
-                min_distance = distance
-                self.closest = target
-            self.size = min_distance
-
-        if previous_closest != self.closest:
-            if previous_closest:
-                previous_closest.highlighted = False
-            self.closest.highlighted = True
\ No newline at end of file
diff --git a/TP1/TP1/BubbleWidget.py b/TP1/TP1/BubbleWidget.py
deleted file mode 100644
index edecb2c..0000000
--- a/TP1/TP1/BubbleWidget.py
+++ /dev/null
@@ -1,82 +0,0 @@
-import csv
-import random
-
-import time
-from PyQt5.QtGui import QPainter, QColor
-from PyQt5.QtWidgets import QWidget
-
-from BubbleCursor import BubbleCursor
-from Target import Target
-
-
-class BubbleWidget(QWidget):
-    def __init__(self, file_name, exp_setup, number_of_targets, technique_name):
-        super().__init__()
-        self.exp_setup = exp_setup
-        self.targets = []
-        self.setMouseTracking(True)
-        self.start_time = None
-        self.errors = 0
-        self.technique_name = technique_name
-
-        # Chargement du fichier csv
-        with open(file_name) as csvfile:
-            reader = csv.reader(csvfile)
-            for row in reader:
-                x = int(row[0])
-                y = int(row[1])
-                size = int(row[2])
-                target = Target(x, y, size)
-                self.targets.append(target)
-
-        self.target_to_select = self.targets[:number_of_targets]
-        self.cursor = BubbleCursor(self.targets)
-        self.selectRandomTarget()
-
-    def paintEvent(self, event):
-        painter = QPainter(self)
-        self.cursor.paint(painter)
-        for target in self.targets:
-            target.paint(painter)
-        painter.setPen(QColor("black"))
-        status_text = f"Technique: {self.technique_name}, Cible: {self.target_number}/15, Configuration: {self.config_number}/9, Répétition: {self.repeat_number}/{self.total_repeats}"
-        painter.drawText(10, 20, status_text)
-
-    def mouseMoveEvent(self, event):
-        self.cursor.move(event.x(), event.y())
-        self.update()
-
-    def selectRandomTarget(self):
-        if self.start_time == None:
-            self.start_time = time.time()
-        target = self.target_to_select.pop()
-        target.toSelect = True
-        self.update()
-
-    def printLog(self):
-        current_time = (time.time() - self.start_time)*1000
-        self.exp_setup.add_line_to_response(current_time, self.errors)
-        self.errors = 0
-        self.start_time = None
-
-    def set_status(self, target_number, config_number, repeat_number, total_repeats):
-        self.target_number = target_number
-        self.config_number = config_number
-        self.repeat_number = repeat_number
-        self.total_repeats = total_repeats
-
-    def mousePressEvent(self, event):
-        if self.cursor.closest is not None:
-            if self.cursor.closest.click_cible():
-                self.errors = 0
-                self.target_number += 1
-                self.printLog()
-                if len(self.target_to_select) > 0:
-                    self.selectRandomTarget()
-                else:
-                    self.exp_setup.next_experience()
-            else:
-                self.errors += 1
-        self.set_status(self.target_number, self.config_number, self.repeat_number,
-                        self.total_repeats)
-        self.update()
diff --git a/TP1/TP1/ExpSetup.py b/TP1/TP1/ExpSetup.py
deleted file mode 100644
index f8ca22d..0000000
--- a/TP1/TP1/ExpSetup.py
+++ /dev/null
@@ -1,133 +0,0 @@
-import os
-import sys
-
-from PyQt5.QtGui import QIntValidator
-from PyQt5.QtWidgets import QDialog, QLabel, QLineEdit, QComboBox, QGridLayout, QPushButton, QHBoxLayout, QVBoxLayout
-
-from Experience import Experience
-from FileDisplayWidget import FileDisplayWidget
-
-DIR_PATH = "generated_exp/"
-TARGETS_PER_EXPERIENCE = 15
-
-class ExpSetup(QDialog):
-    def __init__(self, window):
-        super().__init__()
-
-        self.file_name = 'data/response.csv'
-        self.current_ordonnance = None
-        self.ordonnance = None
-        self.window = window
-
-        self.user_number = None
-        self.technique = None
-        self.repeats = None
-
-        self.current_repeat_series = 0
-        self.current_target_number = 1
-
-        user_label = QLabel("Numéro d'utilisateur :")
-        self.user_edit = QLineEdit()
-        self.user_edit.setValidator(QIntValidator())
-
-        tech_label = QLabel("Technique :")
-        self.tech_combo = QComboBox()
-        self.tech_combo.addItems(["Bubble", "Rope", "Normal"])
-        repeats_label = QLabel("Nombre de répétitions :")
-        self.repeats_edit = QLineEdit()
-        self.repeats_edit.setValidator(QIntValidator())
-
-        layout = QGridLayout()
-        layout.addWidget(user_label, 0, 0)
-        layout.addWidget(self.user_edit, 0, 1)
-        layout.addWidget(tech_label, 1, 0)
-        layout.addWidget(self.tech_combo, 1, 1)
-        layout.addWidget(repeats_label, 4, 0)
-        layout.addWidget(self.repeats_edit, 4, 1)
-
-        self.validate_button = QPushButton("Valider")
-        self.validate_button.clicked.connect(self.verify_entry)
-
-        h_layout = QHBoxLayout()
-        h_layout.addStretch()
-        h_layout.addWidget(self.validate_button)
-        h_layout.addStretch()
-        v_layout = QVBoxLayout()
-        v_layout.addLayout(layout)
-        v_layout.addLayout(h_layout)
-
-        self.setLayout(v_layout)
-
-    def verify_entry(self):
-        self.user_number = self.user_edit.text()
-        self.technique = self.tech_combo.currentIndex()
-        self.repeats = int(self.repeats_edit.text())
-        if self.repeats <= 1:
-            print('Répétition doit être strictement supérieur à 1')
-        else:
-            self.init_ordonnance()
-            self.next_experience()
-
-    def create_experience(self, experience, density, target_size, technique_name):
-        if experience not in Experience:
-            print('Aucune expérience selectionné')
-            return None
-
-        density = str(density)
-        target_size = str(target_size)
-        file_name = "src_d_" + density + "_s_" + target_size + ".csv"
-
-        file_path = DIR_PATH + file_name
-        return experience.create_widget(file_path, self, TARGETS_PER_EXPERIENCE, technique_name)
-
-    def start_experience(self, widget):
-        if widget is not None:
-            self.window.resize(1024, 800)
-            self.window.setCentralWidget(widget)
-            self.window.show()
-
-    def init_ordonnance(self):
-        self.ordonnance = []
-        self.current_ordonnance = -1
-        experience_list = [Experience.BUBBLE, Experience.ROPE, Experience.NORMAL]
-        experience_ordered = experience_list[self.technique:] + experience_list[:self.technique]
-        density_list = [30, 60, 90]
-        size_list = [9, 12, 18]
-
-        for _ in range(self.repeats):
-            for experience in experience_ordered:
-                for density in density_list:
-                    for size in size_list:
-                        widget = self.create_experience(experience, density, size, experience.name)
-                        self.ordonnance.append((widget, experience, density, size))
-
-    def next_experience(self):
-        self.current_target_number = 1
-        self.current_ordonnance += 1
-
-        total_experiences_per_repeat = len(Experience) * len([30, 60, 90]) * len([9, 12, 18])
-
-        if self.current_ordonnance >= len(self.ordonnance):
-            self.display_data()
-            return
-
-        if self.current_ordonnance % total_experiences_per_repeat == 0 and self.current_ordonnance != 0:
-            self.current_repeat_series += 1
-
-        self.current_configuration_number = (self.current_ordonnance % 9) + 1
-        self.current_repeat_number = (self.current_ordonnance // total_experiences_per_repeat) + 1
-
-        widget, experience, density, size = self.ordonnance[self.current_ordonnance]
-        widget.set_status(self.current_repeat_series, self.current_configuration_number, self.current_repeat_number,
-                          self.repeats)
-        self.start_experience(widget)
-
-    def add_line_to_response(self, time, error):
-        line = f"{self.user_number}, {self.current_repeat_series}, {self.current_target_number}, {self.ordonnance[self.current_ordonnance][2]}, {self.ordonnance[self.current_ordonnance][3]}, {self.ordonnance[self.current_ordonnance][1].name}, {time}, {error}"
-        with open(self.file_name, "a") as file:
-            file.write(line + '\n')
-        self.current_target_number += 1
-
-    def display_data(self):
-        widget = FileDisplayWidget(self.file_name)
-        self.start_experience(widget)
diff --git a/TP1/TP1/Experience.py b/TP1/TP1/Experience.py
deleted file mode 100644
index 3f4b8e8..0000000
--- a/TP1/TP1/Experience.py
+++ /dev/null
@@ -1,22 +0,0 @@
-from enum import Enum
-
-from BubbleWidget import BubbleWidget
-from RopeWidget import RopeWidget
-from NormalWidget import NormalWidget
-
-class Experience(Enum):
-    BUBBLE = 1
-    ROPE = 2
-    NORMAL = 3
-
-    def create_widget(self, file_path, exp_setup, number_of_targets, technique_name):
-        if self.value == Experience.BUBBLE.value:
-            widget = BubbleWidget(file_path, exp_setup, number_of_targets, technique_name)
-        elif self.value == Experience.ROPE.value:
-            widget = RopeWidget(file_path, exp_setup, number_of_targets, technique_name)
-        elif self.value == Experience.NORMAL.value:
-            widget = NormalWidget(file_path, exp_setup, number_of_targets, technique_name)
-        else:
-            print('Aucune expérience selectionnée')
-            widget = None
-        return widget
\ No newline at end of file
diff --git a/TP1/TP1/FileDisplayWidget.py b/TP1/TP1/FileDisplayWidget.py
deleted file mode 100644
index c71af36..0000000
--- a/TP1/TP1/FileDisplayWidget.py
+++ /dev/null
@@ -1,15 +0,0 @@
-from PyQt5.QtWidgets import QTextEdit, QWidget, QApplication, QMainWindow
-
-
-class FileDisplayWidget(QWidget):
-    def __init__(self, filename):
-        super().__init__()
-        self.filename = filename
-        self.textEdit = QTextEdit(self)
-        self.textEdit.setReadOnly(True)
-
-        with open(self.filename, 'r') as f:
-            self.textEdit.setPlainText(f.read())
-
-    def resizeEvent(self, event):
-        self.textEdit.setGeometry(0, 0, self.width(), self.height())
diff --git a/TP1/TP1/Generate_targets.py b/TP1/TP1/Generate_targets.py
deleted file mode 100644
index 70511f8..0000000
--- a/TP1/TP1/Generate_targets.py
+++ /dev/null
@@ -1,50 +0,0 @@
-import random
-import csv
-
-SIZE_X_MAX = 1000
-SIZE_Y_MAX = 800
-DIR_NAME = 'generated_exp/'
-SPACING = 5
-all_density = (30, 60, 90)
-all_size = (9, 12, 18)
-max_density = max(all_density)
-max_size = max(all_size)
-
-def generate_targets(num_targets, max_target_size, min_spacing):
-    all_targets = []
-    for _ in range(num_targets):
-        x = random.randint(0, SIZE_X_MAX)
-        y = random.randint(0, SIZE_Y_MAX)
-        target = (x, y, max_target_size)
-        if not all_targets:
-            all_targets.append(target)
-        else:
-            min_distance = min([(((x - t[0]) ** 2 + (y - t[1]) ** 2) ** 0.5) - max_target_size/2 for t in all_targets])
-            if min_distance >= min_spacing:
-                all_targets.append(target)
-    return all_targets
-
-def save_to_csv(filename, all_targets, density, change_size):
-    with open(filename, "w", newline='\n') as f:
-        writer = csv.writer(f)
-        for target in all_targets[:density]:
-            as_list = list(target)
-            as_list[2] = change_size
-            writer.writerow(as_list)
-
-
-def create_csv(filename, all_targets, density, change_size):
-    save_to_csv(filename, all_targets, density, change_size)
-
-
-def create_all_files(min_spacing):
-    all_targets = generate_targets(max_density, max_size, min_spacing)
-
-    for density in all_density:
-        for size in all_size:
-            filename = "src_d_" + str(density) + '_s_' + str(size) + '.csv'
-            create_csv(DIR_NAME + filename, all_targets, density, size)
-
-
-if __name__ == '__main__':
-    create_all_files(SPACING)
diff --git a/TP1/TP1/MainBubble.py b/TP1/TP1/MainBubble.py
deleted file mode 100644
index bbfdcf3..0000000
--- a/TP1/TP1/MainBubble.py
+++ /dev/null
@@ -1,20 +0,0 @@
-import sys
-
-from PyQt5.QtGui import QPainter
-from PyQt5.QtWidgets import QApplication, QMainWindow
-from BubbleWidget import BubbleWidget
-
-file_name = "data/src_tp_bubble.csv"
-def main():
-    app = QApplication(sys.argv)
-    main_window = QMainWindow()
-    main_window.resize(1024, 800)
-    bubble_widget = BubbleWidget(file_name)
-    main_window.setCentralWidget(bubble_widget)
-    main_window.show()
-    sys.exit(app.exec_())
-
-if __name__ == "__main__":
-    if len(sys.argv) == 2:
-        file_name = sys.argv[1]
-    main()
diff --git a/TP1/TP1/MainExp.py b/TP1/TP1/MainExp.py
deleted file mode 100644
index 2f758e2..0000000
--- a/TP1/TP1/MainExp.py
+++ /dev/null
@@ -1,15 +0,0 @@
-from PyQt5.QtWidgets import QApplication, QMainWindow
-
-from ExpSetup import ExpSetup
-
-def main():
-    app = QApplication([])
-    window = QMainWindow()
-    exp_widget = ExpSetup(window)
-    window.setCentralWidget(exp_widget)
-    window.show()
-    app.exec_()
-
-
-if __name__ == "__main__":
-    main()
diff --git a/TP1/TP1/MainNormal.py b/TP1/TP1/MainNormal.py
deleted file mode 100644
index d932cb9..0000000
--- a/TP1/TP1/MainNormal.py
+++ /dev/null
@@ -1,19 +0,0 @@
-import sys
-
-from PyQt5.QtWidgets import QApplication, QMainWindow
-from NormalWidget import NormalWidget
-
-file_name = "data/src_tp_bubble.csv"
-def main():
-    app = QApplication([])
-    window = QMainWindow()
-    window.resize(1024, 800)
-    normalWidget = NormalWidget(file_name)
-    window.setCentralWidget(normalWidget)
-    window.show()
-    app.exec_()
-
-if __name__ == "__main__":
-    if len(sys.argv) == 2:
-        file_name = sys.argv[1]
-    main()
diff --git a/TP1/TP1/MainRope.py b/TP1/TP1/MainRope.py
deleted file mode 100644
index dd1c364..0000000
--- a/TP1/TP1/MainRope.py
+++ /dev/null
@@ -1,16 +0,0 @@
-from PyQt5.QtWidgets import QApplication, QMainWindow
-from RopeWidget import RopeWidget
-
-file_name = "data/src_tp_bubble.csv"
-def main():
-    app = QApplication([])
-    window = QMainWindow()
-    window.resize(1024, 800)
-    bubble_widget = RopeWidget(file_name)
-    window.setCentralWidget(bubble_widget)
-    window.show()
-    app.exec_()
-
-
-if __name__ == "__main__":
-    main()
diff --git a/TP1/TP1/NormalCursor.py b/TP1/TP1/NormalCursor.py
deleted file mode 100644
index bc38c2d..0000000
--- a/TP1/TP1/NormalCursor.py
+++ /dev/null
@@ -1,29 +0,0 @@
-from PyQt5.QtGui import QColor
-
-class NormalCursor:
-    defaultCol=QColor("blue")
-
-    def __init__(self, targets):
-        self.x = 0
-        self.y = 0
-        self.targets = targets
-        self.closest = None
-    def move(self, x, y):
-        self.x = x
-        self.y = y
-        closest_target = None
-        min_distance = float('inf')
-
-        for target in self.targets:
-            distance = ((self.x - target.x) ** 2 + (self.y - target.y) ** 2) ** 0.5
-            if distance < min_distance:
-                min_distance = distance
-                closest_target = target
-
-        if closest_target and min_distance < closest_target.size / 2:
-            closest_target.highlighted = True
-        else:
-            if self.closest and self.closest != closest_target:
-                self.closest.highlighted = False
-
-        self.closest = closest_target
\ No newline at end of file
diff --git a/TP1/TP1/NormalWidget.py b/TP1/TP1/NormalWidget.py
deleted file mode 100644
index ada1af0..0000000
--- a/TP1/TP1/NormalWidget.py
+++ /dev/null
@@ -1,82 +0,0 @@
-import csv
-import random
-
-import time
-from PyQt5.QtGui import QPainter, QColor
-from PyQt5.QtWidgets import QWidget
-
-from NormalCursor import NormalCursor
-from Target import Target
-
-class NormalWidget(QWidget):
-    def __init__(self, file_name, exp_setup, number_of_targets, technique_name):
-        super().__init__()
-        self.targets = []
-        self.setMouseTracking(True)
-        self.start_time = None
-        self.exp_setup = exp_setup
-        self.errors = 0
-        self.technique_name = technique_name
-
-        # Chargement du fichier csv
-        with open(file_name) as csvfile:
-            reader = csv.reader(csvfile)
-            for row in reader:
-                x = int(row[0])
-                y = int(row[1])
-                size = int(row[2])
-                target = Target(x, y, size)
-                self.targets.append(target)
-
-        self.target_to_select = self.targets[:number_of_targets]
-        self.cursor = NormalCursor(self.targets)
-        self.selectRandomTarget()
-
-    def paintEvent(self, event):
-        painter = QPainter(self)
-        for target in self.targets:
-            target.paint(painter)
-        painter.setPen(QColor("black"))
-        status_text = f"Technique: {self.technique_name}, Cible: {self.target_number}/15, Configuration: {self.config_number}/9, Répétition: {self.repeat_number}/{self.total_repeats}"
-        painter.drawText(10, 20, status_text)
-
-    def set_status(self, target_number, config_number, repeat_number, total_repeats):
-        self.target_number = target_number
-        self.config_number = config_number
-        self.repeat_number = repeat_number
-        self.total_repeats = total_repeats
-    def mouseMoveEvent(self, event):
-        self.cursor.move(event.x(), event.y())
-        self.update()
-
-    def selectRandomTarget(self):
-        if self.start_time is None:
-            self.start_time = time.time()
-
-        target = self.target_to_select.pop()
-        target.toSelect = True
-        self.update()
-
-    def printLog(self):
-        current_time = (time.time() - self.start_time)*1000
-        self.exp_setup.add_line_to_response(current_time, self.errors)
-        self.errors = 0
-        self.start_time = None
-
-    def mousePressEvent(self, event):
-        if self.cursor.closest is not None and self.cursor.closest.toSelect:
-            distance = ((event.x() - self.cursor.closest.x) ** 2 + (event.y() - self.cursor.closest.y) ** 2) ** 0.5
-            if distance <= self.cursor.closest.size / 2:
-                self.target_number += 1
-                self.printLog()
-                self.cursor.closest.toSelect = False
-                self.cursor.closest = None
-                if len(self.target_to_select) > 0:
-                    self.selectRandomTarget()
-                else:
-                    self.exp_setup.next_experience()
-            else:
-                self.errors += 1
-        self.set_status(self.target_number, self.config_number, self.repeat_number, self.total_repeats)
-        self.update()
-
diff --git a/TP1/TP1/README.md b/TP1/TP1/README.md
deleted file mode 100644
index 1087c3c..0000000
--- a/TP1/TP1/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Programmation d'une technique d'interaction : le Bubble Cursor
-
diff --git a/TP1/TP1/RopeCursor.py b/TP1/TP1/RopeCursor.py
deleted file mode 100644
index 5ed739c..0000000
--- a/TP1/TP1/RopeCursor.py
+++ /dev/null
@@ -1,7 +0,0 @@
-from BubbleCursor import BubbleCursor
-
-class RopeCursor(BubbleCursor):
-    def paint(self, painter):
-        if self.closest is not None:
-            painter.setBrush(self.defaultCol)
-            painter.drawLine(self.x, self.y, self.closest.x, self.closest.y)
diff --git a/TP1/TP1/RopeWidget.py b/TP1/TP1/RopeWidget.py
deleted file mode 100644
index de1fd4e..0000000
--- a/TP1/TP1/RopeWidget.py
+++ /dev/null
@@ -1,77 +0,0 @@
-import csv, random, time
-from PyQt5.QtGui import QPainter, QColor
-from PyQt5.QtWidgets import QWidget
-from Target import Target
-from RopeCursor import RopeCursor
-
-class RopeWidget(QWidget):
-    def __init__(self, file_name, exp_setup, number_of_targets, technique_name):
-        super().__init__()
-        self.exp_setup = exp_setup
-        self.targets = []
-        self.setMouseTracking(True)
-        self.start_time = None
-        self.errors = 0
-        self.technique_name = technique_name
-
-        # Chargement du fichier csv
-        with open(file_name) as csvfile:
-            reader = csv.reader(csvfile)
-            for row in reader:
-                x = int(row[0])
-                y = int(row[1])
-                size = int(row[2])
-                target = Target(x, y, size)
-                self.targets.append(target)
-
-        self.target_to_select = self.targets[:number_of_targets]
-        self.cursor = RopeCursor(self.targets)
-        self.selectRandomTarget()
-
-    def paintEvent(self, event):
-        painter = QPainter(self)
-        self.cursor.paint(painter)
-        for target in self.targets:
-            target.paint(painter)
-        painter.setPen(QColor("black"))
-        status_text = f"Technique: {self.technique_name}, Cible: {self.target_number}/15, Configuration: {self.config_number}/9, Répétition: {self.repeat_number}/{self.total_repeats}"
-        painter.drawText(10, 20, status_text)
-
-    def set_status(self, target_number, config_number, repeat_number, total_repeats):
-        self.target_number = target_number
-        self.config_number = config_number
-        self.repeat_number = repeat_number
-        self.total_repeats = total_repeats
-
-    def mouseMoveEvent(self, event):
-        self.cursor.move(event.x(), event.y())
-        self.update()
-
-    def selectRandomTarget(self):
-        if self.start_time == None:
-            self.start_time = time.time()
-        target = self.target_to_select.pop()
-        target.toSelect = True
-        self.update()
-
-    def printLog(self):
-        current_time = (time.time() - self.start_time)*1000
-        self.exp_setup.add_line_to_response(current_time, self.errors)
-        self.errors = 0
-        self.start_time = None
-
-    def mousePressEvent(self, event):
-        if self.cursor.closest is not None:
-            if self.cursor.closest.click_cible():
-                self.errors = 0
-                self.target_number += 1
-                self.printLog()
-                if len(self.target_to_select) > 0:
-                    self.selectRandomTarget()
-                else:
-                    self.exp_setup.next_experience()
-            else:
-                self.errors += 1
-        self.set_status(self.target_number, self.config_number, self.repeat_number,
-                        self.total_repeats)
-        self.update()
diff --git a/TP1/TP1/Target.py b/TP1/TP1/Target.py
deleted file mode 100644
index 7ebcc13..0000000
--- a/TP1/TP1/Target.py
+++ /dev/null
@@ -1,33 +0,0 @@
-from PyQt5.QtGui import QColor, QBrush, QPen
-
-
-class Target:
-    defaultCol = QColor("green")
-    highlightCol = QColor("red")
-    toSelectCol = QColor("blue")
-
-    def __init__(self, x, y, size):
-        self.x = x
-        self.y = y
-        self.size = size
-        self.toSelect = False
-        self.highlighted = False
-
-    def paint(self, painter):
-        color = self.defaultCol
-
-        if self.toSelect:
-            color = self.toSelectCol
-        elif self.highlighted:
-            color = self.highlightCol
-
-        painter.setBrush(QBrush(color))
-        painter.setPen(QPen(color))
-        painter.drawEllipse(int(self.x - self.size / 2), int(self.y - self.size / 2), int(self.size), int(self.size))
-
-    def click_cible(self):
-        if self.toSelect:
-            self.toSelect = False
-            return True
-        return False
-
diff --git a/TP1/TP1/__init__.py b/TP1/TP1/__init__.py
deleted file mode 100644
index e69de29..0000000
diff --git a/TP1/TP1/data/__init__.py b/TP1/TP1/data/__init__.py
deleted file mode 100644
index e69de29..0000000
diff --git a/TP1/TP1/data/response.csv b/TP1/TP1/data/response.csv
deleted file mode 100644
index 3a4dd03..0000000
--- a/TP1/TP1/data/response.csv
+++ /dev/null
@@ -1,547 +0,0 @@
-28, 1, 1, 30, 9, BUBBLE, 7945.250034332275, 0
-28, 1, 2, 30, 9, BUBBLE, 1452.1458148956299, 0
-28, 1, 3, 30, 9, BUBBLE, 683.5169792175293, 0
-28, 1, 4, 30, 9, BUBBLE, 981.4469814300537, 0
-28, 1, 5, 30, 9, BUBBLE, 933.089017868042, 0
-28, 1, 6, 30, 9, BUBBLE, 680.2029609680176, 0
-28, 1, 7, 30, 9, BUBBLE, 1186.110258102417, 0
-28, 1, 8, 30, 9, BUBBLE, 548.2418537139893, 0
-28, 1, 9, 30, 9, BUBBLE, 999.9475479125977, 0
-28, 1, 10, 30, 9, BUBBLE, 882.1568489074707, 0
-28, 1, 11, 30, 9, BUBBLE, 647.5389003753662, 0
-28, 1, 12, 30, 9, BUBBLE, 866.7550086975098, 0
-28, 1, 13, 30, 9, BUBBLE, 1048.5692024230957, 0
-28, 1, 14, 30, 9, BUBBLE, 1102.647066116333, 0
-28, 1, 15, 30, 9, BUBBLE, 882.3928833007812, 0
-28, 1, 1, 30, 12, BUBBLE, 21930.222988128662, 0
-28, 1, 2, 30, 12, BUBBLE, 1080.9526443481445, 0
-28, 1, 3, 30, 12, BUBBLE, 718.1029319763184, 0
-28, 1, 4, 30, 12, BUBBLE, 982.874870300293, 0
-28, 1, 5, 30, 12, BUBBLE, 952.5313377380371, 0
-28, 1, 6, 30, 12, BUBBLE, 661.5462303161621, 0
-28, 1, 7, 30, 12, BUBBLE, 1216.0780429840088, 0
-28, 1, 8, 30, 12, BUBBLE, 582.4551582336426, 0
-28, 1, 9, 30, 12, BUBBLE, 1049.5028495788574, 0
-28, 1, 10, 30, 12, BUBBLE, 665.91477394104, 0
-28, 1, 11, 30, 12, BUBBLE, 883.5151195526123, 0
-28, 1, 12, 30, 12, BUBBLE, 1447.2057819366455, 0
-28, 1, 13, 30, 12, BUBBLE, 1449.74684715271, 0
-28, 1, 14, 30, 12, BUBBLE, 1148.4801769256592, 0
-28, 1, 15, 30, 12, BUBBLE, 748.3868598937988, 0
-28, 1, 1, 30, 18, BUBBLE, 36499.24898147583, 0
-28, 1, 2, 30, 18, BUBBLE, 778.3880233764648, 0
-28, 1, 3, 30, 18, BUBBLE, 699.8651027679443, 0
-28, 1, 4, 30, 18, BUBBLE, 1366.095781326294, 0
-28, 1, 5, 30, 18, BUBBLE, 747.1311092376709, 0
-28, 1, 6, 30, 18, BUBBLE, 650.486946105957, 0
-28, 1, 7, 30, 18, BUBBLE, 1135.085105895996, 0
-28, 1, 8, 30, 18, BUBBLE, 581.6230773925781, 0
-28, 1, 9, 30, 18, BUBBLE, 898.8180160522461, 0
-28, 1, 10, 30, 18, BUBBLE, 865.8030033111572, 0
-28, 1, 11, 30, 18, BUBBLE, 599.736213684082, 0
-28, 1, 12, 30, 18, BUBBLE, 1083.1928253173828, 0
-28, 1, 13, 30, 18, BUBBLE, 882.4160099029541, 0
-28, 1, 14, 30, 18, BUBBLE, 997.3759651184082, 0
-28, 1, 15, 30, 18, BUBBLE, 901.5321731567383, 0
-28, 1, 1, 60, 9, BUBBLE, 49694.72527503967, 0
-28, 1, 2, 60, 9, BUBBLE, 1081.9370746612549, 0
-28, 1, 3, 60, 9, BUBBLE, 1033.6329936981201, 0
-28, 1, 4, 60, 9, BUBBLE, 865.7779693603516, 0
-28, 1, 5, 60, 9, BUBBLE, 1384.1321468353271, 0
-28, 1, 6, 60, 9, BUBBLE, 648.0638980865479, 0
-28, 1, 7, 60, 9, BUBBLE, 1783.9481830596924, 0
-28, 1, 8, 60, 9, BUBBLE, 530.4350852966309, 0
-28, 1, 9, 60, 9, BUBBLE, 967.3089981079102, 0
-28, 1, 10, 60, 9, BUBBLE, 1233.569860458374, 0
-28, 1, 11, 60, 9, BUBBLE, 730.6098937988281, 0
-28, 1, 12, 60, 9, BUBBLE, 1401.7741680145264, 0
-28, 1, 13, 60, 9, BUBBLE, 1064.810037612915, 0
-28, 1, 14, 60, 9, BUBBLE, 882.8568458557129, 0
-28, 1, 15, 60, 9, BUBBLE, 916.4080619812012, 0
-28, 1, 1, 60, 12, BUBBLE, 65362.241983413696, 0
-28, 1, 2, 60, 12, BUBBLE, 749.4320869445801, 0
-28, 1, 3, 60, 12, BUBBLE, 1096.9898700714111, 0
-28, 1, 4, 60, 12, BUBBLE, 1250.4048347473145, 0
-28, 1, 5, 60, 12, BUBBLE, 1430.6061267852783, 0
-28, 1, 6, 60, 12, BUBBLE, 734.8909378051758, 0
-28, 1, 7, 60, 12, BUBBLE, 1384.613275527954, 0
-28, 1, 8, 60, 12, BUBBLE, 681.3697814941406, 0
-28, 1, 9, 60, 12, BUBBLE, 1183.4869384765625, 0
-28, 1, 10, 60, 12, BUBBLE, 1281.7952632904053, 0
-28, 1, 11, 60, 12, BUBBLE, 1131.0460567474365, 0
-28, 1, 12, 60, 12, BUBBLE, 984.4789505004883, 0
-28, 1, 13, 60, 12, BUBBLE, 782.5100421905518, 0
-28, 1, 14, 60, 12, BUBBLE, 849.8048782348633, 0
-28, 1, 15, 60, 12, BUBBLE, 1080.1682472229004, 0
-28, 1, 1, 60, 18, BUBBLE, 80964.28489685059, 0
-28, 1, 2, 60, 18, BUBBLE, 846.8070030212402, 0
-28, 1, 3, 60, 18, BUBBLE, 863.8079166412354, 0
-28, 1, 4, 60, 18, BUBBLE, 967.4208164215088, 0
-28, 1, 5, 60, 18, BUBBLE, 947.3569393157959, 0
-28, 1, 6, 60, 18, BUBBLE, 1583.2722187042236, 0
-28, 1, 7, 60, 18, BUBBLE, 1052.50883102417, 0
-28, 1, 8, 60, 18, BUBBLE, 697.8650093078613, 0
-28, 1, 9, 60, 18, BUBBLE, 832.7081203460693, 0
-28, 1, 10, 60, 18, BUBBLE, 880.6881904602051, 0
-28, 1, 11, 60, 18, BUBBLE, 663.8028621673584, 0
-28, 1, 12, 60, 18, BUBBLE, 718.8119888305664, 0
-28, 1, 13, 60, 18, BUBBLE, 1001.3360977172852, 0
-28, 1, 14, 60, 18, BUBBLE, 829.1828632354736, 0
-28, 1, 15, 60, 18, BUBBLE, 816.7030811309814, 0
-28, 1, 1, 90, 9, BUBBLE, 94545.01605033875, 0
-28, 1, 2, 90, 9, BUBBLE, 1132.5831413269043, 0
-28, 1, 3, 90, 9, BUBBLE, 931.6480159759521, 0
-28, 1, 4, 90, 9, BUBBLE, 1249.1528987884521, 0
-28, 1, 5, 90, 9, BUBBLE, 1266.5939331054688, 0
-28, 1, 6, 90, 9, BUBBLE, 666.9502258300781, 0
-28, 1, 7, 90, 9, BUBBLE, 1030.493974685669, 0
-28, 1, 8, 90, 9, BUBBLE, 634.577751159668, 0
-28, 1, 9, 90, 9, BUBBLE, 1098.5758304595947, 0
-28, 1, 10, 90, 9, BUBBLE, 1064.6390914916992, 0
-28, 1, 11, 90, 9, BUBBLE, 767.0803070068359, 0
-28, 1, 12, 90, 9, BUBBLE, 916.2387847900391, 0
-28, 1, 13, 90, 9, BUBBLE, 784.2209339141846, 0
-28, 1, 14, 90, 9, BUBBLE, 1033.1072807312012, 0
-28, 1, 15, 90, 9, BUBBLE, 1099.3950366973877, 0
-28, 1, 1, 90, 12, BUBBLE, 110057.90901184082, 0
-28, 1, 2, 90, 12, BUBBLE, 801.131010055542, 0
-28, 1, 3, 90, 12, BUBBLE, 830.718994140625, 0
-28, 1, 4, 90, 12, BUBBLE, 1253.1158924102783, 0
-28, 1, 5, 90, 12, BUBBLE, 865.1001453399658, 0
-28, 1, 6, 90, 12, BUBBLE, 797.2302436828613, 0
-28, 1, 7, 90, 12, BUBBLE, 1100.9178161621094, 0
-28, 1, 8, 90, 12, BUBBLE, 597.9321002960205, 0
-28, 1, 9, 90, 12, BUBBLE, 1435.5850219726562, 0
-28, 1, 10, 90, 12, BUBBLE, 1082.1080207824707, 0
-28, 1, 11, 90, 12, BUBBLE, 666.2259101867676, 0
-28, 1, 12, 90, 12, BUBBLE, 949.2721557617188, 0
-28, 1, 13, 90, 12, BUBBLE, 1080.3449153900146, 0
-28, 1, 14, 90, 12, BUBBLE, 1552.304983139038, 0
-28, 1, 15, 90, 12, BUBBLE, 1062.7179145812988, 0
-28, 1, 1, 90, 18, BUBBLE, 125027.05597877502, 0
-28, 1, 2, 90, 18, BUBBLE, 997.406005859375, 0
-28, 1, 3, 90, 18, BUBBLE, 981.5089702606201, 0
-28, 1, 4, 90, 18, BUBBLE, 1435.575246810913, 0
-28, 1, 5, 90, 18, BUBBLE, 1914.376974105835, 0
-28, 1, 6, 90, 18, BUBBLE, 765.4998302459717, 0
-28, 1, 7, 90, 18, BUBBLE, 1248.4281063079834, 0
-28, 1, 8, 90, 18, BUBBLE, 569.9288845062256, 0
-28, 1, 9, 90, 18, BUBBLE, 848.254919052124, 0
-28, 1, 10, 90, 18, BUBBLE, 996.973991394043, 0
-28, 1, 11, 90, 18, BUBBLE, 700.1819610595703, 0
-28, 1, 12, 90, 18, BUBBLE, 1080.9688568115234, 0
-28, 1, 13, 90, 18, BUBBLE, 1191.749095916748, 0
-28, 1, 14, 90, 18, BUBBLE, 1040.5218601226807, 0
-28, 1, 15, 90, 18, BUBBLE, 1316.8129920959473, 0
-28, 1, 1, 30, 9, ROPE, 142408.09202194214, 0
-28, 1, 2, 30, 9, ROPE, 1050.839900970459, 0
-28, 1, 3, 30, 9, ROPE, 714.9109840393066, 0
-28, 1, 4, 30, 9, ROPE, 916.7807102203369, 0
-28, 1, 5, 30, 9, ROPE, 880.7570934295654, 0
-28, 1, 6, 30, 9, ROPE, 701.4591693878174, 0
-28, 1, 7, 30, 9, ROPE, 1046.9119548797607, 0
-28, 1, 8, 30, 9, ROPE, 885.767936706543, 0
-28, 1, 9, 30, 9, ROPE, 1133.3110332489014, 0
-28, 1, 10, 30, 9, ROPE, 929.8439025878906, 0
-28, 1, 11, 30, 9, ROPE, 613.8949394226074, 0
-28, 1, 12, 30, 9, ROPE, 1052.5410175323486, 0
-28, 1, 13, 30, 9, ROPE, 899.3260860443115, 0
-28, 1, 14, 30, 9, ROPE, 882.5609683990479, 0
-28, 1, 15, 30, 9, ROPE, 782.1950912475586, 0
-28, 1, 1, 30, 12, ROPE, 155690.11402130127, 0
-28, 1, 2, 30, 12, ROPE, 884.188175201416, 0
-28, 1, 3, 30, 12, ROPE, 713.6728763580322, 0
-28, 1, 4, 30, 12, ROPE, 751.6789436340332, 0
-28, 1, 5, 30, 12, ROPE, 798.5489368438721, 0
-28, 1, 6, 30, 12, ROPE, 750.0579357147217, 0
-28, 1, 7, 30, 12, ROPE, 966.4392471313477, 0
-28, 1, 8, 30, 12, ROPE, 648.0250358581543, 0
-28, 1, 9, 30, 12, ROPE, 781.4948558807373, 0
-28, 1, 10, 30, 12, ROPE, 700.6549835205078, 0
-28, 1, 11, 30, 12, ROPE, 733.5050106048584, 0
-28, 1, 12, 30, 12, ROPE, 830.146074295044, 0
-28, 1, 13, 30, 12, ROPE, 834.6619606018066, 0
-28, 1, 14, 30, 12, ROPE, 1279.9758911132812, 0
-28, 1, 15, 30, 12, ROPE, 953.9010524749756, 0
-28, 1, 1, 30, 18, ROPE, 168159.0061187744, 0
-28, 1, 2, 30, 18, ROPE, 1280.5938720703125, 0
-28, 1, 3, 30, 18, ROPE, 665.2379035949707, 0
-28, 1, 4, 30, 18, ROPE, 802.9727935791016, 0
-28, 1, 5, 30, 18, ROPE, 931.0510158538818, 0
-28, 1, 6, 30, 18, ROPE, 684.3998432159424, 0
-28, 1, 7, 30, 18, ROPE, 897.6080417633057, 0
-28, 1, 8, 30, 18, ROPE, 931.1158657073975, 0
-28, 1, 9, 30, 18, ROPE, 1018.6769962310791, 0
-28, 1, 10, 30, 18, ROPE, 882.1558952331543, 0
-28, 1, 11, 30, 18, ROPE, 699.0768909454346, 0
-28, 1, 12, 30, 18, ROPE, 964.8447036743164, 0
-28, 1, 13, 30, 18, ROPE, 766.7398452758789, 0
-28, 1, 14, 30, 18, ROPE, 863.908052444458, 0
-28, 1, 15, 30, 18, ROPE, 849.8167991638184, 0
-28, 1, 1, 60, 9, ROPE, 181440.62614440918, 0
-28, 1, 2, 60, 9, ROPE, 914.3848419189453, 0
-28, 1, 3, 60, 9, ROPE, 1034.156084060669, 0
-28, 1, 4, 60, 9, ROPE, 1873.2271194458008, 0
-28, 1, 5, 60, 9, ROPE, 2142.364740371704, 0
-28, 1, 6, 60, 9, ROPE, 832.9038619995117, 0
-28, 1, 7, 60, 9, ROPE, 947.7267265319824, 0
-28, 1, 8, 60, 9, ROPE, 565.4332637786865, 0
-28, 1, 9, 60, 9, ROPE, 952.0089626312256, 0
-28, 1, 10, 60, 9, ROPE, 831.3388824462891, 0
-28, 1, 11, 60, 9, ROPE, 668.0870056152344, 0
-28, 1, 12, 60, 9, ROPE, 998.3949661254883, 0
-28, 1, 13, 60, 9, ROPE, 832.9558372497559, 0
-28, 1, 14, 60, 9, ROPE, 1483.6130142211914, 0
-28, 1, 15, 60, 9, ROPE, 931.1909675598145, 0
-28, 1, 1, 60, 12, ROPE, 197290.59505462646, 0
-28, 1, 2, 60, 12, ROPE, 898.0460166931152, 0
-28, 1, 3, 60, 12, ROPE, 816.3988590240479, 0
-28, 1, 4, 60, 12, ROPE, 950.6380558013916, 0
-28, 1, 5, 60, 12, ROPE, 964.9899005889893, 0
-28, 1, 6, 60, 12, ROPE, 699.5241641998291, 0
-28, 1, 7, 60, 12, ROPE, 934.8728656768799, 0
-28, 1, 8, 60, 12, ROPE, 831.298828125, 0
-28, 1, 9, 60, 12, ROPE, 949.9881267547607, 0
-28, 1, 10, 60, 12, ROPE, 896.8911170959473, 0
-28, 1, 11, 60, 12, ROPE, 599.7638702392578, 0
-28, 1, 12, 60, 12, ROPE, 934.3559741973877, 0
-28, 1, 13, 60, 12, ROPE, 783.1919193267822, 0
-28, 1, 14, 60, 12, ROPE, 814.9349689483643, 0
-28, 1, 15, 60, 12, ROPE, 980.6299209594727, 0
-28, 1, 1, 60, 18, ROPE, 210121.59299850464, 0
-28, 1, 2, 60, 18, ROPE, 752.190351486206, 0
-28, 1, 3, 60, 18, ROPE, 1565.826177597046, 0
-28, 1, 4, 60, 18, ROPE, 1283.2717895507812, 0
-28, 1, 5, 60, 18, ROPE, 1481.9209575653076, 0
-28, 1, 6, 60, 18, ROPE, 783.2682132720947, 0
-28, 1, 7, 60, 18, ROPE, 849.754810333252, 0
-28, 1, 8, 60, 18, ROPE, 600.7711887359619, 0
-28, 1, 9, 60, 18, ROPE, 813.8711452484131, 0
-28, 1, 10, 60, 18, ROPE, 1066.5881633758545, 0
-28, 1, 11, 60, 18, ROPE, 697.2317695617676, 0
-28, 1, 12, 60, 18, ROPE, 801.4912605285645, 0
-28, 1, 13, 60, 18, ROPE, 1000.399112701416, 0
-28, 1, 14, 60, 18, ROPE, 916.9402122497559, 0
-28, 1, 15, 60, 18, ROPE, 930.9580326080322, 0
-28, 1, 1, 90, 9, ROPE, 224589.6761417389, 0
-28, 1, 2, 90, 9, ROPE, 814.4209384918213, 0
-28, 1, 3, 90, 9, ROPE, 933.3610534667969, 0
-28, 1, 4, 90, 9, ROPE, 1285.6671810150146, 0
-28, 1, 5, 90, 9, ROPE, 1395.5068588256836, 0
-28, 1, 6, 90, 9, ROPE, 1535.3100299835205, 0
-28, 1, 7, 90, 9, ROPE, 866.3160800933838, 0
-28, 1, 8, 90, 9, ROPE, 583.0991268157959, 0
-28, 1, 9, 90, 9, ROPE, 983.3810329437256, 0
-28, 1, 10, 90, 9, ROPE, 784.4228744506836, 0
-28, 1, 11, 90, 9, ROPE, 798.1297969818115, 0
-28, 1, 12, 90, 9, ROPE, 864.1769886016846, 0
-28, 1, 13, 90, 9, ROPE, 732.2978973388672, 0
-28, 1, 14, 90, 9, ROPE, 781.3611030578613, 0
-28, 1, 15, 90, 9, ROPE, 1019.6170806884766, 0
-28, 1, 1, 90, 12, ROPE, 238705.97100257874, 0
-28, 1, 2, 90, 12, ROPE, 1098.027229309082, 0
-28, 1, 3, 90, 12, ROPE, 932.8372478485107, 0
-28, 1, 4, 90, 12, ROPE, 2402.493953704834, 0
-28, 1, 5, 90, 12, ROPE, 1247.1117973327637, 0
-28, 1, 6, 90, 12, ROPE, 1498.8329410552979, 0
-28, 1, 7, 90, 12, ROPE, 1399.4529247283936, 0
-28, 1, 8, 90, 12, ROPE, 669.8861122131348, 0
-28, 1, 9, 90, 12, ROPE, 1362.3218536376953, 0
-28, 1, 10, 90, 12, ROPE, 916.4400100708008, 0
-28, 1, 11, 90, 12, ROPE, 748.6119270324707, 0
-28, 1, 12, 90, 12, ROPE, 950.3359794616699, 0
-28, 1, 13, 90, 12, ROPE, 1185.87064743042, 0
-28, 1, 14, 90, 12, ROPE, 1145.9600925445557, 0
-28, 1, 15, 90, 12, ROPE, 1101.2110710144043, 0
-28, 1, 1, 90, 18, ROPE, 256521.43216133118, 0
-28, 1, 2, 90, 18, ROPE, 918.6561107635498, 0
-28, 1, 3, 90, 18, ROPE, 913.7961864471436, 0
-28, 1, 4, 90, 18, ROPE, 965.3871059417725, 0
-28, 1, 5, 90, 18, ROPE, 1215.574026107788, 0
-28, 1, 6, 90, 18, ROPE, 1467.6330089569092, 0
-28, 1, 7, 90, 18, ROPE, 1816.2250518798828, 0
-28, 1, 8, 90, 18, ROPE, 685.103178024292, 0
-28, 1, 9, 90, 18, ROPE, 1196.7806816101074, 0
-28, 1, 10, 90, 18, ROPE, 932.8999519348145, 0
-28, 1, 11, 90, 18, ROPE, 649.9619483947754, 0
-28, 1, 12, 90, 18, ROPE, 816.1201477050781, 0
-28, 1, 13, 90, 18, ROPE, 729.968786239624, 0
-28, 1, 14, 90, 18, ROPE, 917.8619384765625, 0
-28, 1, 15, 90, 18, ROPE, 1047.529935836792, 0
-28, 1, 1, 30, 9, NORMAL, 272486.9430065155, 0
-28, 1, 2, 30, 9, NORMAL, 1383.5039138793945, 1
-28, 1, 3, 30, 9, NORMAL, 1400.2339839935303, 1
-28, 1, 4, 30, 9, NORMAL, 1266.7291164398193, 0
-28, 1, 5, 30, 9, NORMAL, 5163.960218429565, 6
-28, 1, 6, 30, 9, NORMAL, 1434.5228672027588, 0
-28, 1, 7, 30, 9, NORMAL, 1333.179235458374, 0
-28, 1, 8, 30, 9, NORMAL, 1564.188003540039, 1
-28, 1, 9, 30, 9, NORMAL, 1448.909044265747, 0
-28, 1, 10, 30, 9, NORMAL, 1265.058994293213, 0
-28, 1, 11, 30, 9, NORMAL, 2015.8448219299316, 2
-28, 1, 12, 30, 9, NORMAL, 1800.177812576294, 0
-28, 1, 13, 30, 9, NORMAL, 1282.9170227050781, 0
-28, 1, 14, 30, 9, NORMAL, 2267.9498195648193, 1
-28, 1, 15, 30, 9, NORMAL, 1395.3039646148682, 0
-28, 1, 1, 30, 12, NORMAL, 298688.77816200256, 0
-28, 1, 2, 30, 12, NORMAL, 1154.8559665679932, 0
-28, 1, 3, 30, 12, NORMAL, 1493.5588836669922, 1
-28, 1, 4, 30, 12, NORMAL, 1379.3082237243652, 0
-28, 1, 5, 30, 12, NORMAL, 1386.382818222046, 0
-28, 1, 6, 30, 12, NORMAL, 1680.452823638916, 0
-28, 1, 7, 30, 12, NORMAL, 1085.2060317993164, 0
-28, 1, 8, 30, 12, NORMAL, 746.3021278381348, 0
-28, 1, 9, 30, 12, NORMAL, 1750.396966934204, 1
-28, 1, 10, 30, 12, NORMAL, 1148.8807201385498, 0
-28, 1, 11, 30, 12, NORMAL, 999.2408752441406, 0
-28, 1, 12, 30, 12, NORMAL, 2167.475938796997, 2
-28, 1, 13, 30, 12, NORMAL, 1697.4289417266846, 1
-28, 1, 14, 30, 12, NORMAL, 2264.6431922912598, 1
-28, 1, 15, 30, 12, NORMAL, 1315.5179023742676, 0
-28, 1, 1, 30, 18, NORMAL, 319921.7851161957, 0
-28, 1, 2, 30, 18, NORMAL, 950.2198696136475, 0
-28, 1, 3, 30, 18, NORMAL, 999.2859363555908, 0
-28, 1, 4, 30, 18, NORMAL, 1114.670991897583, 0
-28, 1, 5, 30, 18, NORMAL, 1680.8850765228271, 1
-28, 1, 6, 30, 18, NORMAL, 1032.4718952178955, 0
-28, 1, 7, 30, 18, NORMAL, 1733.9389324188232, 0
-28, 1, 8, 30, 18, NORMAL, 1368.0331707000732, 1
-28, 1, 9, 30, 18, NORMAL, 930.2680492401123, 0
-28, 1, 10, 30, 18, NORMAL, 1000.3800392150879, 0
-28, 1, 11, 30, 18, NORMAL, 1047.4870204925537, 0
-28, 1, 12, 30, 18, NORMAL, 884.3109607696533, 0
-28, 1, 13, 30, 18, NORMAL, 1316.6861534118652, 1
-28, 1, 14, 30, 18, NORMAL, 1929.9077987670898, 1
-28, 1, 15, 30, 18, NORMAL, 933.5219860076904, 0
-28, 1, 1, 60, 9, NORMAL, 337806.68330192566, 0
-28, 1, 2, 60, 9, NORMAL, 1313.2860660552979, 0
-28, 1, 3, 60, 9, NORMAL, 2165.9560203552246, 2
-28, 1, 4, 60, 9, NORMAL, 1382.1382522583008, 0
-28, 1, 5, 60, 9, NORMAL, 1448.6052989959717, 0
-28, 1, 6, 60, 9, NORMAL, 1271.6221809387207, 0
-28, 1, 7, 60, 9, NORMAL, 2497.2519874572754, 1
-28, 1, 8, 60, 9, NORMAL, 1346.195936203003, 0
-28, 1, 9, 60, 9, NORMAL, 1847.8152751922607, 0
-28, 1, 10, 60, 9, NORMAL, 2850.726842880249, 0
-28, 1, 11, 60, 9, NORMAL, 2317.6968097686768, 2
-28, 1, 12, 60, 9, NORMAL, 2313.410997390747, 0
-28, 1, 13, 60, 9, NORMAL, 2370.2619075775146, 1
-28, 1, 14, 60, 9, NORMAL, 1863.8720512390137, 1
-28, 1, 15, 60, 9, NORMAL, 2248.810052871704, 1
-28, 1, 1, 60, 12, NORMAL, 367723.3920097351, 2
-28, 1, 2, 60, 12, NORMAL, 1345.5009460449219, 0
-28, 1, 3, 60, 12, NORMAL, 1249.032974243164, 0
-28, 1, 4, 60, 12, NORMAL, 1298.720121383667, 0
-28, 1, 5, 60, 12, NORMAL, 1750.777006149292, 1
-28, 1, 6, 60, 12, NORMAL, 2148.80108833313, 2
-28, 1, 7, 60, 12, NORMAL, 1532.7870845794678, 0
-28, 1, 8, 60, 12, NORMAL, 1150.968074798584, 0
-28, 1, 9, 60, 12, NORMAL, 1382.086992263794, 0
-28, 1, 10, 60, 12, NORMAL, 1147.4699974060059, 0
-28, 1, 11, 60, 12, NORMAL, 1198.7619400024414, 0
-28, 1, 12, 60, 12, NORMAL, 1533.4749221801758, 0
-28, 1, 13, 60, 12, NORMAL, 1034.5070362091064, 0
-28, 1, 14, 60, 12, NORMAL, 1062.520980834961, 0
-28, 1, 15, 60, 12, NORMAL, 1333.885908126831, 0
-28, 1, 1, 60, 18, NORMAL, 392303.6789894104, 0
-28, 1, 2, 60, 18, NORMAL, 1095.2348709106445, 0
-28, 1, 3, 60, 18, NORMAL, 1868.4651851654053, 0
-28, 1, 4, 60, 18, NORMAL, 2031.3479900360107, 1
-28, 1, 5, 60, 18, NORMAL, 2115.760326385498, 1
-28, 1, 6, 60, 18, NORMAL, 799.8709678649902, 0
-28, 1, 7, 60, 18, NORMAL, 1349.7049808502197, 0
-28, 1, 8, 60, 18, NORMAL, 816.9012069702148, 0
-28, 1, 9, 60, 18, NORMAL, 2480.0240993499756, 0
-28, 1, 10, 60, 18, NORMAL, 1033.750057220459, 0
-28, 1, 11, 60, 18, NORMAL, 914.2599105834961, 0
-28, 1, 12, 60, 18, NORMAL, 1768.5282230377197, 1
-28, 1, 13, 60, 18, NORMAL, 2033.2319736480713, 2
-28, 1, 14, 60, 18, NORMAL, 964.6029472351074, 0
-28, 1, 15, 60, 18, NORMAL, 2130.8469772338867, 1
-28, 1, 1, 90, 9, NORMAL, 418419.70682144165, 2
-28, 1, 2, 90, 9, NORMAL, 1130.4850578308105, 0
-28, 1, 3, 90, 9, NORMAL, 1386.064052581787, 0
-28, 1, 4, 90, 9, NORMAL, 2146.1870670318604, 1
-28, 1, 5, 90, 9, NORMAL, 900.5589485168457, 0
-28, 1, 6, 90, 9, NORMAL, 1482.893943786621, 0
-28, 1, 7, 90, 9, NORMAL, 831.8920135498047, 0
-28, 1, 8, 90, 9, NORMAL, 1630.6679248809814, 1
-28, 1, 9, 90, 9, NORMAL, 1417.4818992614746, 0
-28, 1, 10, 90, 9, NORMAL, 1183.6779117584229, 0
-28, 1, 11, 90, 9, NORMAL, 1281.548023223877, 0
-28, 1, 12, 90, 9, NORMAL, 1098.1471538543701, 0
-28, 1, 13, 90, 9, NORMAL, 1348.8187789916992, 0
-28, 1, 14, 90, 9, NORMAL, 5067.014932632446, 3
-28, 1, 15, 90, 9, NORMAL, 1685.5249404907227, 0
-28, 1, 1, 90, 12, NORMAL, 443600.84414482117, 1
-28, 1, 2, 90, 12, NORMAL, 1819.1931247711182, 0
-28, 1, 3, 90, 12, NORMAL, 1896.1601257324219, 1
-28, 1, 4, 90, 12, NORMAL, 1451.4269828796387, 1
-28, 1, 5, 90, 12, NORMAL, 2047.1930503845215, 1
-28, 1, 6, 90, 12, NORMAL, 1350.8031368255615, 0
-28, 1, 7, 90, 12, NORMAL, 1183.297872543335, 0
-28, 1, 8, 90, 12, NORMAL, 1765.0761604309082, 0
-28, 1, 9, 90, 12, NORMAL, 3716.9430255889893, 4
-28, 1, 10, 90, 12, NORMAL, 1031.4218997955322, 0
-28, 1, 11, 90, 12, NORMAL, 900.8429050445557, 0
-28, 1, 12, 90, 12, NORMAL, 4083.1139087677, 2
-28, 1, 13, 90, 12, NORMAL, 1834.0709209442139, 1
-28, 1, 14, 90, 12, NORMAL, 1081.9602012634277, 0
-28, 1, 15, 90, 12, NORMAL, 3863.7008666992188, 3
-28, 1, 1, 90, 18, NORMAL, 472900.9761810303, 0
-28, 1, 2, 90, 18, NORMAL, 1333.5819244384766, 0
-28, 1, 3, 90, 18, NORMAL, 1398.8118171691895, 0
-28, 1, 4, 90, 18, NORMAL, 1400.2487659454346, 0
-28, 1, 5, 90, 18, NORMAL, 1750.5979537963867, 1
-28, 1, 6, 90, 18, NORMAL, 929.5949935913086, 0
-28, 1, 7, 90, 18, NORMAL, 4269.292831420898, 0
-28, 1, 8, 90, 18, NORMAL, 848.12331199646, 0
-28, 1, 9, 90, 18, NORMAL, 1064.070224761963, 0
-28, 1, 10, 90, 18, NORMAL, 1701.0679244995117, 1
-28, 1, 11, 90, 18, NORMAL, 1100.9347438812256, 0
-28, 1, 12, 90, 18, NORMAL, 1200.6142139434814, 0
-28, 1, 13, 90, 18, NORMAL, 1563.7989044189453, 1
-28, 1, 14, 90, 18, NORMAL, 2133.580207824707, 0
-28, 1, 15, 90, 18, NORMAL, 1082.6630592346191, 0
-28, 0, 1, 30, 9, BUBBLE, 3580.773115158081, 0
-28, 0, 2, 30, 9, BUBBLE, 867.1648502349854, 0
-28, 0, 3, 30, 9, BUBBLE, 680.2258491516113, 0
-28, 0, 4, 30, 9, BUBBLE, 833.2700729370117, 0
-28, 0, 5, 30, 9, BUBBLE, 1081.6593170166016, 0
-28, 0, 6, 30, 9, BUBBLE, 666.874885559082, 0
-28, 0, 7, 30, 9, BUBBLE, 851.356029510498, 0
-28, 0, 8, 30, 9, BUBBLE, 1099.4458198547363, 0
-28, 0, 9, 30, 9, BUBBLE, 963.8957977294922, 0
-28, 0, 10, 30, 9, BUBBLE, 718.0821895599365, 0
-28, 0, 11, 30, 9, BUBBLE, 581.8459987640381, 0
-28, 0, 12, 30, 9, BUBBLE, 2014.2557621002197, 0
-28, 0, 13, 30, 9, BUBBLE, 2800.363063812256, 0
-28, 0, 14, 30, 9, BUBBLE, 665.0969982147217, 0
-28, 0, 15, 30, 9, BUBBLE, 1165.4770374298096, 0
-28, 0, 1, 30, 12, BUBBLE, 19785.619020462036, 0
-28, 0, 2, 30, 12, BUBBLE, 876.9299983978271, 0
-28, 0, 3, 30, 12, BUBBLE, 680.2890300750732, 0
-28, 0, 4, 30, 12, BUBBLE, 801.3932704925537, 0
-28, 0, 5, 30, 12, BUBBLE, 932.0399761199951, 0
-28, 0, 6, 30, 12, BUBBLE, 714.3139839172363, 0
-28, 0, 7, 30, 12, BUBBLE, 832.9908847808838, 0
-28, 0, 8, 30, 12, BUBBLE, 583.9848518371582, 0
-28, 0, 9, 30, 12, BUBBLE, 930.7489395141602, 0
-28, 0, 10, 30, 12, BUBBLE, 716.7069911956787, 0
-28, 0, 11, 30, 12, BUBBLE, 647.8829383850098, 0
-28, 0, 12, 30, 12, BUBBLE, 1366.5542602539062, 0
-28, 0, 13, 30, 12, BUBBLE, 665.5800342559814, 0
-28, 0, 14, 30, 12, BUBBLE, 701.3041973114014, 0
-28, 0, 15, 30, 12, BUBBLE, 934.7760677337646, 0
-28, 0, 1, 30, 18, BUBBLE, 32229.50005531311, 0
-28, 0, 2, 30, 18, BUBBLE, 747.4911212921143, 0
-28, 0, 3, 30, 18, BUBBLE, 649.0931510925293, 0
-28, 0, 4, 30, 18, BUBBLE, 1018.2359218597412, 0
-28, 0, 5, 30, 18, BUBBLE, 816.2240982055664, 0
-28, 0, 6, 30, 18, BUBBLE, 747.6890087127686, 0
-28, 0, 7, 30, 18, BUBBLE, 1000.1862049102783, 0
-28, 0, 8, 30, 18, BUBBLE, 532.2396755218506, 0
-28, 0, 9, 30, 18, BUBBLE, 846.6389179229736, 0
-28, 0, 10, 30, 18, BUBBLE, 768.8131332397461, 0
-28, 0, 11, 30, 18, BUBBLE, 598.7379550933838, 0
-28, 0, 12, 30, 18, BUBBLE, 1166.0270690917969, 0
-28, 0, 13, 30, 18, BUBBLE, 817.0208930969238, 0
-28, 0, 14, 30, 18, BUBBLE, 898.8258838653564, 0
-28, 0, 15, 30, 18, BUBBLE, 764.4739151000977, 0
-28, 0, 1, 60, 9, BUBBLE, 44744.1668510437, 0
-28, 0, 2, 60, 9, BUBBLE, 831.0918807983398, 0
-28, 0, 3, 60, 9, BUBBLE, 902.3399353027344, 0
-28, 0, 4, 60, 9, BUBBLE, 1466.324806213379, 0
-28, 0, 5, 60, 9, BUBBLE, 1083.616018295288, 0
-28, 0, 6, 60, 9, BUBBLE, 663.9139652252197, 0
-28, 0, 7, 60, 9, BUBBLE, 1081.4180374145508, 0
-28, 0, 8, 60, 9, BUBBLE, 584.968090057373, 0
-28, 0, 9, 60, 9, BUBBLE, 982.0191860198975, 0
-28, 0, 10, 60, 9, BUBBLE, 996.7198371887207, 0
-28, 0, 11, 60, 9, BUBBLE, 618.8619136810303, 0
-28, 0, 12, 60, 9, BUBBLE, 1048.8309860229492, 0
-28, 0, 13, 60, 9, BUBBLE, 883.4633827209473, 0
-28, 0, 14, 60, 9, BUBBLE, 917.0279502868652, 0
-28, 0, 15, 60, 9, BUBBLE, 880.4690837860107, 0
-28, 0, 1, 60, 12, BUBBLE, 58730.05127906799, 0
-28, 0, 2, 60, 12, BUBBLE, 861.699104309082, 0
-28, 0, 3, 60, 12, BUBBLE, 1001.4901161193848, 0
-28, 0, 4, 60, 12, BUBBLE, 1086.0662460327148, 0
-28, 0, 5, 60, 12, BUBBLE, 1334.644079208374, 0
-28, 0, 6, 60, 12, BUBBLE, 615.0367259979248, 0
-28, 0, 7, 60, 12, BUBBLE, 953.55224609375, 0
-28, 0, 8, 60, 12, BUBBLE, 930.4211139678955, 0
-28, 0, 9, 60, 12, BUBBLE, 1068.8560009002686, 0
-28, 0, 10, 60, 12, BUBBLE, 949.8779773712158, 0
-28, 0, 11, 60, 12, BUBBLE, 685.0638389587402, 0
-28, 0, 12, 60, 12, BUBBLE, 965.3239250183105, 0
-28, 0, 13, 60, 12, BUBBLE, 769.4692611694336, 0
-28, 0, 14, 60, 12, BUBBLE, 850.7659435272217, 0
-28, 0, 15, 60, 12, BUBBLE, 815.9871101379395, 0
-28, 0, 1, 60, 18, BUBBLE, 72426.71275138855, 0
-28, 0, 2, 60, 18, BUBBLE, 732.3181629180908, 0
-28, 0, 3, 60, 18, BUBBLE, 850.5027294158936, 0
-28, 0, 4, 60, 18, BUBBLE, 967.8680896759033, 0
-28, 0, 5, 60, 18, BUBBLE, 1430.7210445404053, 0
-28, 0, 6, 60, 18, BUBBLE, 1353.7049293518066, 0
-28, 0, 7, 60, 18, BUBBLE, 881.7508220672607, 0
-28, 0, 8, 60, 18, BUBBLE, 583.9927196502686, 0
-28, 0, 9, 60, 18, BUBBLE, 882.8330039978027, 0
-28, 0, 10, 60, 18, BUBBLE, 816.4262771606445, 0
-28, 0, 11, 60, 18, BUBBLE, 966.0770893096924, 0
-28, 0, 12, 60, 18, BUBBLE, 766.2825584411621, 0
-28, 0, 13, 60, 18, BUBBLE, 801.1622428894043, 0
-28, 0, 14, 60, 18, BUBBLE, 847.0520973205566, 0
-28, 0, 15, 60, 18, BUBBLE, 984.6780300140381, 0
-28, 0, 1, 90, 9, BUBBLE, 86567.6040649414, 0
-28, 0, 2, 90, 9, BUBBLE, 913.5251045227051, 0
-28, 0, 3, 90, 9, BUBBLE, 918.2591438293457, 0
-28, 0, 4, 90, 9, BUBBLE, 964.7948741912842, 0
-28, 0, 5, 90, 9, BUBBLE, 1066.023826599121, 0
-28, 0, 6, 90, 9, BUBBLE, 851.9690036773682, 0
-28, 0, 7, 90, 9, BUBBLE, 1164.5219326019287, 0
-28, 0, 8, 90, 9, BUBBLE, 666.3150787353516, 0
-28, 0, 9, 90, 9, BUBBLE, 1501.2710094451904, 0
-28, 0, 10, 90, 9, BUBBLE, 831.5019607543945, 0
-28, 0, 11, 90, 9, BUBBLE, 1049.556016921997, 0
-28, 0, 12, 90, 9, BUBBLE, 1068.6419010162354, 0
-28, 0, 13, 90, 9, BUBBLE, 866.4603233337402, 0
-28, 0, 14, 90, 9, BUBBLE, 884.7482204437256, 0
-28, 0, 15, 90, 9, BUBBLE, 1095.9999561309814, 0
-28, 0, 1, 90, 12, BUBBLE, 101602.05411911011, 0
-28, 0, 2, 90, 12, BUBBLE, 1216.0711288452148, 0
-28, 0, 3, 90, 12, BUBBLE, 1401.386022567749, 0
-28, 0, 4, 90, 12, BUBBLE, 1148.3972072601318, 0
-28, 0, 5, 90, 12, BUBBLE, 1214.8489952087402, 0
-28, 0, 6, 90, 12, BUBBLE, 881.9940090179443, 0
-28, 0, 7, 90, 12, BUBBLE, 1033.555030822754, 0
-28, 0, 8, 90, 12, BUBBLE, 666.3389205932617, 0
-28, 0, 9, 90, 12, BUBBLE, 1183.9280128479004, 0
-28, 0, 10, 90, 12, BUBBLE, 764.9011611938477, 0
-28, 0, 11, 90, 12, BUBBLE, 766.7698860168457, 0
-28, 0, 12, 90, 12, BUBBLE, 1115.1721477508545, 0
-28, 0, 13, 90, 12, BUBBLE, 1316.5030479431152, 0
-28, 0, 14, 90, 12, BUBBLE, 1017.2207355499268, 0
-28, 0, 15, 90, 12, BUBBLE, 1199.171781539917, 0
-28, 0, 1, 90, 18, BUBBLE, 117518.24307441711, 0
-28, 0, 2, 90, 18, BUBBLE, 982.5081825256348, 0
-28, 0, 3, 90, 18, BUBBLE, 869.3702220916748, 0
-28, 0, 4, 90, 18, BUBBLE, 1164.9181842803955, 0
-28, 0, 5, 90, 18, BUBBLE, 1330.8689594268799, 0
-28, 0, 6, 90, 18, BUBBLE, 734.4880104064941, 0
-28, 0, 7, 90, 18, BUBBLE, 1249.8180866241455, 0
-28, 0, 8, 90, 18, BUBBLE, 701.4310359954834, 0
-28, 0, 9, 90, 18, BUBBLE, 1064.3930435180664, 0
-28, 0, 10, 90, 18, BUBBLE, 1046.5688705444336, 0
-28, 0, 11, 90, 18, BUBBLE, 635.9269618988037, 0
-28, 0, 12, 90, 18, BUBBLE, 2148.561954498291, 0
-28, 0, 13, 90, 18, BUBBLE, 830.0459384918213, 0
-28, 0, 14, 90, 18, BUBBLE, 953.6287784576416, 0
-28, 0, 15, 90, 18, BUBBLE, 930.3343296051025, 0
-28, 0, 1, 30, 9, ROPE, 133685.87183952332, 0
-28, 0, 2, 30, 9, ROPE, 2067.125082015991, 0
-28, 0, 3, 30, 9, ROPE, 713.770866394043, 0
-28, 0, 4, 30, 9, ROPE, 1187.9382133483887, 0
-28, 0, 5, 30, 9, ROPE, 1130.2909851074219, 0
-28, 0, 6, 30, 9, ROPE, 765.1801109313965, 0
-28, 0, 7, 30, 9, ROPE, 877.8586387634277, 0
diff --git a/TP1/TP1/generated_exp/__init__.py b/TP1/TP1/generated_exp/__init__.py
deleted file mode 100644
index e69de29..0000000
diff --git a/TP1/TP1/generated_exp/src_d_30_s_12.csv b/TP1/TP1/generated_exp/src_d_30_s_12.csv
deleted file mode 100644
index 3ef62ef..0000000
--- a/TP1/TP1/generated_exp/src_d_30_s_12.csv
+++ /dev/null
@@ -1,30 +0,0 @@
-846,461,12
-269,46,12
-705,287,12
-618,790,12
-347,311,12
-403,474,12
-74,60,12
-688,678,12
-813,643,12
-45,529,12
-16,299,12
-995,619,12
-397,307,12
-187,498,12
-551,637,12
-700,346,12
-525,209,12
-280,17,12
-403,713,12
-282,244,12
-209,652,12
-96,611,12
-935,176,12
-294,585,12
-797,686,12
-213,463,12
-915,346,12
-613,488,12
-587,553,12
-999,390,12
diff --git a/TP1/TP1/generated_exp/src_d_30_s_18.csv b/TP1/TP1/generated_exp/src_d_30_s_18.csv
deleted file mode 100644
index 35d8e4a..0000000
--- a/TP1/TP1/generated_exp/src_d_30_s_18.csv
+++ /dev/null
@@ -1,30 +0,0 @@
-846,461,18
-269,46,18
-705,287,18
-618,790,18
-347,311,18
-403,474,18
-74,60,18
-688,678,18
-813,643,18
-45,529,18
-16,299,18
-995,619,18
-397,307,18
-187,498,18
-551,637,18
-700,346,18
-525,209,18
-280,17,18
-403,713,18
-282,244,18
-209,652,18
-96,611,18
-935,176,18
-294,585,18
-797,686,18
-213,463,18
-915,346,18
-613,488,18
-587,553,18
-999,390,18
diff --git a/TP1/TP1/generated_exp/src_d_30_s_9.csv b/TP1/TP1/generated_exp/src_d_30_s_9.csv
deleted file mode 100644
index abcbb09..0000000
--- a/TP1/TP1/generated_exp/src_d_30_s_9.csv
+++ /dev/null
@@ -1,30 +0,0 @@
-846,461,9
-269,46,9
-705,287,9
-618,790,9
-347,311,9
-403,474,9
-74,60,9
-688,678,9
-813,643,9
-45,529,9
-16,299,9
-995,619,9
-397,307,9
-187,498,9
-551,637,9
-700,346,9
-525,209,9
-280,17,9
-403,713,9
-282,244,9
-209,652,9
-96,611,9
-935,176,9
-294,585,9
-797,686,9
-213,463,9
-915,346,9
-613,488,9
-587,553,9
-999,390,9
diff --git a/TP1/TP1/generated_exp/src_d_60_s_12.csv b/TP1/TP1/generated_exp/src_d_60_s_12.csv
deleted file mode 100644
index 283bb34..0000000
--- a/TP1/TP1/generated_exp/src_d_60_s_12.csv
+++ /dev/null
@@ -1,60 +0,0 @@
-846,461,12
-269,46,12
-705,287,12
-618,790,12
-347,311,12
-403,474,12
-74,60,12
-688,678,12
-813,643,12
-45,529,12
-16,299,12
-995,619,12
-397,307,12
-187,498,12
-551,637,12
-700,346,12
-525,209,12
-280,17,12
-403,713,12
-282,244,12
-209,652,12
-96,611,12
-935,176,12
-294,585,12
-797,686,12
-213,463,12
-915,346,12
-613,488,12
-587,553,12
-999,390,12
-885,307,12
-267,456,12
-796,59,12
-406,93,12
-673,464,12
-365,751,12
-95,29,12
-24,10,12
-240,512,12
-731,783,12
-356,138,12
-745,493,12
-270,703,12
-344,608,12
-148,319,12
-462,347,12
-501,230,12
-541,6,12
-238,572,12
-177,784,12
-212,435,12
-278,739,12
-433,343,12
-308,717,12
-392,541,12
-802,173,12
-292,758,12
-990,753,12
-385,461,12
-989,280,12
diff --git a/TP1/TP1/generated_exp/src_d_60_s_18.csv b/TP1/TP1/generated_exp/src_d_60_s_18.csv
deleted file mode 100644
index 5901ce7..0000000
--- a/TP1/TP1/generated_exp/src_d_60_s_18.csv
+++ /dev/null
@@ -1,60 +0,0 @@
-846,461,18
-269,46,18
-705,287,18
-618,790,18
-347,311,18
-403,474,18
-74,60,18
-688,678,18
-813,643,18
-45,529,18
-16,299,18
-995,619,18
-397,307,18
-187,498,18
-551,637,18
-700,346,18
-525,209,18
-280,17,18
-403,713,18
-282,244,18
-209,652,18
-96,611,18
-935,176,18
-294,585,18
-797,686,18
-213,463,18
-915,346,18
-613,488,18
-587,553,18
-999,390,18
-885,307,18
-267,456,18
-796,59,18
-406,93,18
-673,464,18
-365,751,18
-95,29,18
-24,10,18
-240,512,18
-731,783,18
-356,138,18
-745,493,18
-270,703,18
-344,608,18
-148,319,18
-462,347,18
-501,230,18
-541,6,18
-238,572,18
-177,784,18
-212,435,18
-278,739,18
-433,343,18
-308,717,18
-392,541,18
-802,173,18
-292,758,18
-990,753,18
-385,461,18
-989,280,18
diff --git a/TP1/TP1/generated_exp/src_d_60_s_9.csv b/TP1/TP1/generated_exp/src_d_60_s_9.csv
deleted file mode 100644
index 98b1dec..0000000
--- a/TP1/TP1/generated_exp/src_d_60_s_9.csv
+++ /dev/null
@@ -1,60 +0,0 @@
-846,461,9
-269,46,9
-705,287,9
-618,790,9
-347,311,9
-403,474,9
-74,60,9
-688,678,9
-813,643,9
-45,529,9
-16,299,9
-995,619,9
-397,307,9
-187,498,9
-551,637,9
-700,346,9
-525,209,9
-280,17,9
-403,713,9
-282,244,9
-209,652,9
-96,611,9
-935,176,9
-294,585,9
-797,686,9
-213,463,9
-915,346,9
-613,488,9
-587,553,9
-999,390,9
-885,307,9
-267,456,9
-796,59,9
-406,93,9
-673,464,9
-365,751,9
-95,29,9
-24,10,9
-240,512,9
-731,783,9
-356,138,9
-745,493,9
-270,703,9
-344,608,9
-148,319,9
-462,347,9
-501,230,9
-541,6,9
-238,572,9
-177,784,9
-212,435,9
-278,739,9
-433,343,9
-308,717,9
-392,541,9
-802,173,9
-292,758,9
-990,753,9
-385,461,9
-989,280,9
diff --git a/TP1/TP1/generated_exp/src_d_90_s_12.csv b/TP1/TP1/generated_exp/src_d_90_s_12.csv
deleted file mode 100644
index ebe2550..0000000
--- a/TP1/TP1/generated_exp/src_d_90_s_12.csv
+++ /dev/null
@@ -1,88 +0,0 @@
-846,461,12
-269,46,12
-705,287,12
-618,790,12
-347,311,12
-403,474,12
-74,60,12
-688,678,12
-813,643,12
-45,529,12
-16,299,12
-995,619,12
-397,307,12
-187,498,12
-551,637,12
-700,346,12
-525,209,12
-280,17,12
-403,713,12
-282,244,12
-209,652,12
-96,611,12
-935,176,12
-294,585,12
-797,686,12
-213,463,12
-915,346,12
-613,488,12
-587,553,12
-999,390,12
-885,307,12
-267,456,12
-796,59,12
-406,93,12
-673,464,12
-365,751,12
-95,29,12
-24,10,12
-240,512,12
-731,783,12
-356,138,12
-745,493,12
-270,703,12
-344,608,12
-148,319,12
-462,347,12
-501,230,12
-541,6,12
-238,572,12
-177,784,12
-212,435,12
-278,739,12
-433,343,12
-308,717,12
-392,541,12
-802,173,12
-292,758,12
-990,753,12
-385,461,12
-989,280,12
-936,501,12
-535,634,12
-820,589,12
-274,669,12
-860,212,12
-939,261,12
-133,676,12
-639,445,12
-793,77,12
-968,238,12
-767,385,12
-502,508,12
-849,167,12
-345,259,12
-293,402,12
-654,580,12
-319,437,12
-261,89,12
-31,55,12
-282,553,12
-860,589,12
-532,572,12
-372,18,12
-84,152,12
-59,383,12
-144,536,12
-775,711,12
-218,61,12
diff --git a/TP1/TP1/generated_exp/src_d_90_s_18.csv b/TP1/TP1/generated_exp/src_d_90_s_18.csv
deleted file mode 100644
index 62290d5..0000000
--- a/TP1/TP1/generated_exp/src_d_90_s_18.csv
+++ /dev/null
@@ -1,88 +0,0 @@
-846,461,18
-269,46,18
-705,287,18
-618,790,18
-347,311,18
-403,474,18
-74,60,18
-688,678,18
-813,643,18
-45,529,18
-16,299,18
-995,619,18
-397,307,18
-187,498,18
-551,637,18
-700,346,18
-525,209,18
-280,17,18
-403,713,18
-282,244,18
-209,652,18
-96,611,18
-935,176,18
-294,585,18
-797,686,18
-213,463,18
-915,346,18
-613,488,18
-587,553,18
-999,390,18
-885,307,18
-267,456,18
-796,59,18
-406,93,18
-673,464,18
-365,751,18
-95,29,18
-24,10,18
-240,512,18
-731,783,18
-356,138,18
-745,493,18
-270,703,18
-344,608,18
-148,319,18
-462,347,18
-501,230,18
-541,6,18
-238,572,18
-177,784,18
-212,435,18
-278,739,18
-433,343,18
-308,717,18
-392,541,18
-802,173,18
-292,758,18
-990,753,18
-385,461,18
-989,280,18
-936,501,18
-535,634,18
-820,589,18
-274,669,18
-860,212,18
-939,261,18
-133,676,18
-639,445,18
-793,77,18
-968,238,18
-767,385,18
-502,508,18
-849,167,18
-345,259,18
-293,402,18
-654,580,18
-319,437,18
-261,89,18
-31,55,18
-282,553,18
-860,589,18
-532,572,18
-372,18,18
-84,152,18
-59,383,18
-144,536,18
-775,711,18
-218,61,18
diff --git a/TP1/TP1/generated_exp/src_d_90_s_9.csv b/TP1/TP1/generated_exp/src_d_90_s_9.csv
deleted file mode 100644
index b6e9bd4..0000000
--- a/TP1/TP1/generated_exp/src_d_90_s_9.csv
+++ /dev/null
@@ -1,88 +0,0 @@
-846,461,9
-269,46,9
-705,287,9
-618,790,9
-347,311,9
-403,474,9
-74,60,9
-688,678,9
-813,643,9
-45,529,9
-16,299,9
-995,619,9
-397,307,9
-187,498,9
-551,637,9
-700,346,9
-525,209,9
-280,17,9
-403,713,9
-282,244,9
-209,652,9
-96,611,9
-935,176,9
-294,585,9
-797,686,9
-213,463,9
-915,346,9
-613,488,9
-587,553,9
-999,390,9
-885,307,9
-267,456,9
-796,59,9
-406,93,9
-673,464,9
-365,751,9
-95,29,9
-24,10,9
-240,512,9
-731,783,9
-356,138,9
-745,493,9
-270,703,9
-344,608,9
-148,319,9
-462,347,9
-501,230,9
-541,6,9
-238,572,9
-177,784,9
-212,435,9
-278,739,9
-433,343,9
-308,717,9
-392,541,9
-802,173,9
-292,758,9
-990,753,9
-385,461,9
-989,280,9
-936,501,9
-535,634,9
-820,589,9
-274,669,9
-860,212,9
-939,261,9
-133,676,9
-639,445,9
-793,77,9
-968,238,9
-767,385,9
-502,508,9
-849,167,9
-345,259,9
-293,402,9
-654,580,9
-319,437,9
-261,89,9
-31,55,9
-282,553,9
-860,589,9
-532,572,9
-372,18,9
-84,152,9
-59,383,9
-144,536,9
-775,711,9
-218,61,9
diff --git a/TP1/TP1/src_tp_bubble.csv b/TP1/TP1/src_tp_bubble.csv
deleted file mode 100644
index 48c3099..0000000
--- a/TP1/TP1/src_tp_bubble.csv
+++ /dev/null
@@ -1,100 +0,0 @@
-381,453,17
-320,81,17
-71,705,14
-251,441,7
-557,644,9
-209,9,13
-185,632,13
-179,752,21
-815,368,24
-840,258,20
-978,726,22
-898,334,17
-709,671,17
-79,446,10
-320,299,14
-129,238,16
-940,10,6
-806,476,8
-626,538,7
-786,725,15
-840,639,14
-562,527,10
-1000,307,22
-197,561,19
-920,608,14
-218,322,24
-849,356,19
-13,765,23
-282,335,8
-369,151,16
-415,320,13
-443,244,9
-592,228,17
-640,58,13
-366,127,18
-57,760,19
-932,670,12
-761,297,10
-438,169,14
-588,329,23
-958,551,18
-198,217,7
-35,717,14
-955,655,8
-267,217,23
-159,558,24
-464,53,9
-264,255,15
-1013,92,15
-575,450,23
-355,683,23
-696,624,21
-469,143,17
-725,652,19
-338,765,8
-1012,46,11
-580,621,21
-673,478,18
-850,386,13
-622,167,21
-137,107,17
-396,172,7
-960,702,13
-804,105,8
-527,263,17
-692,417,15
-1014,755,14
-735,677,19
-944,126,10
-814,510,19
-33,326,18
-520,105,24
-654,141,19
-926,548,16
-809,183,9
-484,627,22
-283,405,11
-754,65,16
-313,33,19
-456,276,15
-16,166,15
-576,371,24
-664,74,20
-362,538,18
-69,295,11
-573,175,13
-650,522,14
-393,223,21
-517,571,9
-887,173,11
-914,495,22
-455,371,11
-767,203,16
-992,640,14
-682,391,11
-801,280,17
-222,109,9
-887,243,12
-910,166,21
-508,154,8
\ No newline at end of file
-- 
GitLab