From b0d97f0c50622819ef15e021bbfc4ced05efe4f5 Mon Sep 17 00:00:00 2001 From: Tschan Date: Wed, 1 Jul 2026 13:51:01 +0200 Subject: [PATCH] Sorted out some difficulties with respect to relative imports and PYTHONPATH --- .env | 2 +- .vscode/launch.json | 4 ++-- .vscode/settings.json | 4 +++- defs/debug_scrapyard.py | 10 ++++++++-- defs/defs.py | 1 + playground.py | 12 +++++++++++- vis/__init__.py | 0 vis/debug_scrapyard.py | 17 +++++++++++++++++ vis/defs.py | 4 ++++ vis/playground.ipynb | 31 ++++++------------------------- 10 files changed, 53 insertions(+), 32 deletions(-) create mode 100644 vis/__init__.py create mode 100644 vis/debug_scrapyard.py create mode 100644 vis/defs.py diff --git a/.env b/.env index 3c3fe61..e37f283 100644 --- a/.env +++ b/.env @@ -1 +1 @@ -PYTHONPATH: "${workspaceFolder}" \ No newline at end of file +PYTHONPATH=${workspaceFolder}/ \ No newline at end of file diff --git a/.vscode/launch.json b/.vscode/launch.json index ed80dd9..b79e7ae 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -8,7 +8,7 @@ "request": "launch", "program": "${file}", "console": "integratedTerminal", - "env": {"PYTHONPATH": "${workspaceFolder}/defs"} + "env": {"PYTHONPATH": "${workspaceFolder}/"} }, { "name": "Python Debugger: debug_scrapyard.py", @@ -16,7 +16,7 @@ "request": "launch", "program": "${workspaceFolder}/defs/debug_scrapyard.py", "console": "integratedTerminal", - "env": {"PYTHONPATH": "${workspaceFolder}/defs"} + "env": {"PYTHONPATH": "${workspaceFolder}/"} } ] } \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json index cd6cda6..451c27f 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -4,6 +4,7 @@ "chat.commandCenter.enabled": false, "inlineChat.accessibleDiffView": "off", "terminal.integrated.initialHint": false, + "terminal.integrated.env.windows": {"PYTHONPATH": "${workspaceFolder}/"}, "chat.checkpoints.enabled": false, "chat.undoRequests.restoreInput": false, "chat.agent.sandbox.allowAutoApprove": false, @@ -53,5 +54,6 @@ "editor.wordWrap": "on", "editor.rulers": [140], "notebook.editorOptionsCustomizations": {"editor.rulers":[]}, - "editor.fontSize": 16 + "editor.fontSize": 16, + "jupiter.notebookFileRoot": "${workspaceFolder}/" } \ No newline at end of file diff --git a/defs/debug_scrapyard.py b/defs/debug_scrapyard.py index 5718a60..4d9335d 100644 --- a/defs/debug_scrapyard.py +++ b/defs/debug_scrapyard.py @@ -4,7 +4,12 @@ #%% import pandas as pd import numpy as np -from defs import OFRAnalyser, OFRSample +from defs.defs import OFRAnalyser, OFRSample +from vis.defs import HelloWorld +#%% + +hw = HelloWorld(word='q') +print(hw.word) #%% @@ -16,4 +21,5 @@ analyser.GetTotalMass(samples=[33], plot=True) #%% -print(analyser.total_mass) \ No newline at end of file +print(analyser.total_mass) +# %% diff --git a/defs/defs.py b/defs/defs.py index 14f7de0..c6bb731 100644 --- a/defs/defs.py +++ b/defs/defs.py @@ -101,6 +101,7 @@ class OFRAnalyser: fig = plt.figure() ax = fig.add_subplot(111) ax.plot(local_sample.diameters, local_sample.counts) + ax.set_xscale('log') plt.show() local_volume = local_sample.volume_integrator() diff --git a/playground.py b/playground.py index 5a8dddc..799bf23 100644 --- a/playground.py +++ b/playground.py @@ -1,2 +1,12 @@ from defs.defs import OFRAnalyser -analyser = OFRAnalyser(sourcefile="/Volumes/5505/People/David_Tschan/data/OFR_SMPS/2026/processed/06_June/20260612/20260612_SET02_EXP01_full.csv") +from vis.defs import HelloWorld +import numpy as np + + +analyser = OFRAnalyser(sourcefile="Z:/People/David_Tschan/data/OFR_SMPS/2026/processed/06_June/20260612/20260612_SET02_EXP01_full.csv", + lower_bound=22.87, upper_bound=1000, density=102, scan_up=160, scan_down=20) + +samplelist = np.linspace(start=1, stop=analyser.max_samples, num=analyser.max_samples, dtype=int).tolist() + +analyser.GetTotalMass(samples=[33], plot=True) +print(analyser.total_mass) diff --git a/vis/__init__.py b/vis/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/vis/debug_scrapyard.py b/vis/debug_scrapyard.py new file mode 100644 index 0000000..2e2aea0 --- /dev/null +++ b/vis/debug_scrapyard.py @@ -0,0 +1,17 @@ +#%% + +import pandas as pd +import numpy as np +from defs.defs import OFRAnalyser, OFRSample + +#%% + +analyser = OFRAnalyser(sourcefile="Z:/People/David_Tschan/data/OFR_SMPS/2026/processed/06_June/20260612/20260612_SET02_EXP01_full.csv", + lower_bound=22.87, upper_bound=1000, density=102, scan_up=160, scan_down=20) +samplelist = np.linspace(start=1, stop=analyser.max_samples, num=analyser.max_samples, dtype=int).tolist() + +analyser.GetTotalMass(samples=[33], plot=True) + +#%% + +print(analyser.total_mass) \ No newline at end of file diff --git a/vis/defs.py b/vis/defs.py new file mode 100644 index 0000000..4e246ed --- /dev/null +++ b/vis/defs.py @@ -0,0 +1,4 @@ +class HelloWorld: + + def __init__(self, word): + self.word = word \ No newline at end of file diff --git a/vis/playground.ipynb b/vis/playground.ipynb index 024c1ff..3026593 100644 --- a/vis/playground.ipynb +++ b/vis/playground.ipynb @@ -17,12 +17,12 @@ "source": [ "import pandas as pd\n", "import numpy as np\n", - "from defs.defs import OFRAnalyser, OFRSample" + "from defs.defs import OFRAnalyser" ] }, { "cell_type": "code", - "execution_count": 8, + "execution_count": null, "id": "83604ca62804491c", "metadata": { "ExecuteTime": { @@ -37,7 +37,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": null, "id": "fc69589de06ec7c3", "metadata": { "ExecuteTime": { @@ -45,18 +45,7 @@ "start_time": "2026-06-15T14:00:19.820656Z" } }, - "outputs": [ - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjEAAAGdCAYAAADjWSL8AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjksIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvJkbTWQAAAAlwSFlzAAAPYQAAD2EBqD+naQAASfNJREFUeJzt3Qd8VFX68PEnvZGEFJIAoYPUgPSqoBRRENuKirIWFlRUZJVF0d0VXQXEd2H/rg0riiCuK6hrQbChSBVEeg8lkEZJ78m8n3NgJjNJQJJMcmfm/r5+xrn3zklycmaYeXLKc7wsFotFAAAA3Iy30RUAAACoCYIYAADglghiAACAWyKIAQAAbokgBgAAuCWCGAAA4JYIYgAAgFsiiAEAAG7JVzxUWVmZnDhxQkJDQ8XLy8vo6gAAgIugcvBmZ2dLkyZNxNvb25xBjApgmjVrZnQ1AABADRw7dkzi4+PNGcSoHhhrI4SFhRldHQAAcBGysrJ0J4T1c9xpQczMmTPl6aefdrgWGxsrKSkpti4g9fjrr78uZ86ckb59+8rLL78snTt3tpUvLCyUadOmyQcffCD5+fkydOhQeeWVVxyiLfW1U6ZMkc8++0yfjxkzRv79739Lw4YNL7qu1iEkFcAQxAAA4F4uZipItSf2qoAkOTnZdtu+fbvtsblz58q8efPkpZdekk2bNklcXJwMHz5cj21ZTZ06VZYvXy5Lly6VNWvWSE5OjowePVpKS0ttZcaNGydbt26VFStW6Js6Hj9+fHWrCgAAPJmlGp566ilLt27dqnysrKzMEhcXZ5kzZ47tWkFBgSU8PNzy2muv6fOMjAyLn5+fZenSpbYyx48ft3h7e1tWrFihz3ft2qV21basX7/eVmbdunX62p49ey66rpmZmfpr1D0AAHAP1fn8rnZPzP79+/WM4VatWsmtt94qhw4d0tcTExP1sNKIESNsZQMCAmTw4MGydu1afb5582YpLi52KKO+V5cuXWxl1q1bJ+Hh4Xooyqpfv376mrVMVdQwlRpHs78BAADPVa0gRgUW7733nnz99dfyxhtv6KBlwIABcurUKdu8GDVH5nxzZtS9v7+/REREXLBMTExMpZ+trlnLVGX27Nk60LHeWJkEAIBnq1YQc/XVV8tNN90kCQkJMmzYMPniiy/09Xffffe8E3HUZN/fm5xTsUxV5X/v+8yYMUMyMzNtN7UqCQAAeK5aZewNCQnRAY0aYlKTeJWKvSVpaWm23hlVpqioSK8+ulCZ1NTUSj8rPT29Ui+PPTV0ZV2JxIokAAA8X62CGDUPZffu3dK4cWM9R0YFIKtWrbI9rgKW1atX6yEnpWfPnuLn5+dQRq1w2rFjh61M//79dU/Kxo0bbWU2bNigr1nLAAAAVCtPjMrvcu2110rz5s1178mzzz6rJ9DeeeedeqhHLZ+eNWuWtGvXTt/UcXBwsF4yrai5KhMmTJBHH31UoqKiJDIyUn9P6/CU0rFjRxk5cqRMnDhRFixYoK9NmjRJL8Nu3749zxgAAKh+EJOUlCS33XabnDx5Uho1aqRXDa1fv15atGihH58+fbpOYDd58mRbsruVK1c6ZN2bP3+++Pr6ytixY23J7hYuXCg+Pj62MosXL9bJ7qyrmFSyO5V7BgAAwMpLrbMWD6R6iFTPjxqGImMvAACe9/ldqzkxAAAARiGIAQAAbokgBk6z7uApWbrxKC0KAHC9ib3Ahdz2xnp9f0lcqPRo7piVGQAAZ6MnBk6XdCafVgUA1DmCGDjdyexCSTyZS8sCAOoUQQyc7pnPd8kV/+8HOZlTSOsCAOoMQQxqbF9qtuxPzT7v44fpjQEA1CGCGNRIXlGJjJj/owyf/6MUlZRVWcbPx1t+2p8uyZnMkQEAOB+rk1AjZ/KKbcd//WS7XNauUaUyaw+ekudX7BFfby85MOsaWhoA4FT0xKBGysrKd6v4zy9J8tAHv1YqowIYpaTMImdyi+T7vWlSavd1AADUBkEMaqSotOohpPO59fX1cvc7m2TRusO0OADAKQhicFHUPqGqZ+WBxVvk650pUlBcWq2W23tuAvCyX4/T4gAAp2BODH53K4HpH/8mt/ZuLq/+cFBf+2J7ssRHBNWo5bYlZdLiAACnIIjBRW0l8MLXex2uk5UXAGA0hpNgyNAUAAC1RRCDevfHtzfKy98fkPRsMvoCAGqOIAb17qf9J/Xw1ANLttD6AIAaI4iBYTYmnqb1AQA1RhADAADcEkEMDEVvDACgpghicOEXiFfV1xuHBzql5b7dk8ozAACoEYIYXND5tjoa1DZa/jqqY6Xrjw6/pFot+smvx+W219dLalYBzwQAoFoIYnBeaouB8/nrqE4yskucwzV/X295aGi7arVoalahrDt0Sh75z1aeCQBAtRDE4LzU9gLnEx7sJ77eji+fzk3CKpW7oXvTi2rhvSk5PBMAgGohiIFT5stc1TlWXh7Xw+HxK9o3kr+N7nRR3ysjr4hnAgBQLQQxqDE/n/KXz/M3dZUmDc9uCmndHHJU1yYSGeIvnRpX7qGpqOR8k28AADgPghhUW9uYBvo+IsRf7ujXXN8aBvvbHv/8oUGyZGJfuanH2aGkCYNa6fvfC2b+/OFW9lUCAFw0drFGtU2xm7z77PUJlR5XAc2ANtG28xt7NJWu8eES5O8jg57//rzfd/mvx+XOAS3l0mYN5VROod6eQE0eDvTz4VkCAFRCTwyqdKElzwG+1XvZeHl5SbvY0IsKRia994scz8iXcW9skKkfbtV7LAEAUBWCGFTp2n+vOW/LhAf51ajVfLzOkznPTlp2oQx54XvZm5qtz7+8wAopAIC5MZwEB2XnJtiqYOJ8+raKrFGr+fj8fhCjFJeWT/K9uK8AAJgRQQxsLBaL3PDKz2K5iOGhGr3Y7NZkT7yslbzxU+Lvfk1NfxYAwPMxnASb07lF8ltSpmxLyqyTVvGy61f5Y/+WtDwAoFYIYmBTeoFcLR3PLY9uHhlc4xYL9POWpg2DJCrE/6I3kKQjBgBwPgwnwabUUnUQ0ywySN67p4+8t+6w3NK7WY1bTA0N/fCXIaJ+jK+Pt9w/pI38d3OSjOwcJ4vWHznP1/AEAQCqRk8MbErsJtTamzaivTQKDZBHR7SX+Iia98RYs/yqjSKVx0Z2kI1PDLVl+v29ISgAAOwRxOB3U//brxZyNtU7o3p6zufo6bw6+9kAAPdGEAOb4tKyKlsjxL9uM+Ze06XxRS37BgDAHkEMbIpKqg5iujePqNNW8rbfDrsKRecJrgAA5kYQAy23sERGnydLb9xFriSqKwQxAICqEMRA+2Kb66b3LyymJwYAUBlBDFxeYUmp0VUAALggghi4vMLzzNUBAJgbQQy0nSfqZqsBZ2A4CQBQFYIYaO+uqzpj7nWXNqmXFpp/SzfpEBcqdw+svKfSmz8dqpc6AADcC9sO4Lx+mn6FxEecPxGdM93QPV7fFLUtwcK1h22PLfv1uMy75dJ6qQcAwH3QEwOxnGfPpAYBvjqjbn2bOaazjOvb3OFaZn7xeesJADAnghjI5MVbKrXCxMtaSUSIv2Gt85cR7R3Ouz29UqZ+uNWw+gAAXA/DSZCvdqQ4tMLPj18pTS+wKWN9qCqA+nTrCWkRFSKPDL/EkDoBAFwLPTEmpoZnHlhSuRcmyK9u90qqjRe/3W90FQAALoIgxsTSswurzNQbaeAwEgAAF4sgxsRKq5go++/buourO56RLx9uOkomXwAwOebEwEFUA9fvhRkxb7XkFpXKyZwieeCKtkZXBwBgEHpiTKyqFcu+3q7/klABjLL24EmjqwIAMJDrf2KhXvn61H9emJpy5QnIAIC6RxBjYlWljvNzoZ6Y31vmHUAQAwCm5jqfWKh3ZWUWl+6Jefee3nJZu2i5on0j+eSBgRIXFujweIAvL18AMLNafQrMnj1bp6WfOnWqQ+6RmTNnSpMmTSQoKEiGDBkiO3fudPi6wsJCeeihhyQ6OlpCQkJkzJgxkpSU5FDmzJkzMn78eAkPD9c3dZyRkVGb6qKC0qqCGG/XCWLaxoTKogl95Z27+8ilzRpKw2A/h8eXbTnOVgQAYGI1DmI2bdokr7/+unTt2tXh+ty5c2XevHny0ksv6TJxcXEyfPhwyc7OtpVRQc/y5ctl6dKlsmbNGsnJyZHRo0dLaenZCZvKuHHjZOvWrbJixQp9U8cqkIHz/HLkTKVrPi4UxFSUkVdc6VpyZoEhdQEAuGkQo4KO22+/Xd544w2JiIhw6IX517/+JU8++aTceOON0qVLF3n33XclLy9PlixZostkZmbKW2+9Jf/85z9l2LBh0r17d3n//fdl+/bt8s033+gyu3fv1oHLm2++Kf3799c39bM+//xz2bt3r7N+d9Ob9tFvbtUGJWVlla7tTc2W/KJSyS6oHOAAADxbjYKYBx54QEaNGqWDEHuJiYmSkpIiI0aMsF0LCAiQwYMHy9q1a/X55s2bpbi42KGMGnpSAY+1zLp16/QQUt++fW1l+vXrp69Zy1SkhqiysrIcbqi+KkaYXEZJFZVLyyqQPrO+kd7PfUPyOwAwmWoHMWoIaMuWLXo+TEUqgFFiY2Mdrqtz62Pq3t/f36EHp6oyMTExlb6/umYtU5Gqj3X+jLo1a9asur8aXHw4qaS0chCzPzVHsgtKpKC4TNKyCg2pFwDADYKYY8eOycMPP6yHfwIDHVeK2FOTfe2pYaaK1yqqWKaq8hf6PjNmzNBDVdabqiuqp2+rSGkZFexWw0lvrkm0HReXVn4cAOC5qhXEqKGgtLQ06dmzp/j6+urb6tWr5cUXX9TH1h6Yir0l6musj6mJvkVFRXr10YXKpKamVvr56enplXp57IetwsLCHG6ong/v7f+7waaRGoUGXPDxvHOZfAEA5lCtIGbo0KF6Aq5aKWS99erVS0/yVcetW7fWAciqVatsX6MCFhXoDBgwQJ+rAMjPz8+hTHJysuzYscNWRk3kVb0pGzdutJXZsGGDvmYtA+f62+hOLt+kC+7oJT2aN5S5f+gqTcIr9wQSxACAuVRrA8jQ0FA9AdeeyvMSFRVlu66WT8+aNUvatWunb+o4ODhYL5lW1HyVCRMmyKOPPqq/LjIyUqZNmyYJCQm2icIdO3aUkSNHysSJE2XBggX62qRJk/Qy7Pbt2zvrd4edaDfY+LFTkzBZNnmgPr6qc5x0e3qlw+O5RSUG1QwA4BG7WE+fPl3y8/Nl8uTJeshIrTBauXKlDoCs5s+fr4efxo4dq8uqHp6FCxeKj0/5XjiLFy+WKVOm2FYxqYR4KvcM6sY1CY3dqmkbBFR+6eYVMpwEAGbiZVGzZT2QWmKten3UEBTzYyp7fsUeefWHg7bzw3NGibtp+fgXDucv/KGr3NyLVWkAYJbPbzafMSG1isc+gPEUzIkBAHMhiDGhohLHpch/uco95xk9cU0HvTnkmG5N9DlBDACYC0GMCVXMfNs80nVzw1zIpMvb6M0hrRtD5jGxFwBMhSDGhCruXu3CqWEuSrC/r60nRk3x+vunO+T99UeMrhYAwN1WJ8H1lXhYZttg/7Or2valZsvPB07Je+vOBjB39GthcM0AAHWJIMaEKg4nBfiWL21359/np/0nJaFpuNHVAQDUE4aTTKjiRoqtot1zToxVqd2eSq944KorAEDVCGJMKCO/yOG8bUx5IkJ3NPGy1kZXAQBgAIIYE1q49rB4kobB/tIupkGl62UVhs0AAJ6FIMaE3HVJ9YVEBFfe+6nYbpgJAOB5CGJMqEWU5wUxz97guDFpVXN/AACehSDGhJ5cvkM8zSWxofLK7T0crhHEAIBnI4gxIU9Nzx/g6/hy/mTrccPqAgCoewQxJpNVUOxw3raKCbHuysfbMfXwU5/tNKwuAIC6RxBjIimZBdJ15kqHa58/NMiw+gAAUBsEMSby1Y7kStcC/dw7W+/vmf7f32R/arbR1QAA1AGCGBMxY9qU//ySJDe9utboagAA6gBBjImoHZ49WfdmEVVezyooqfe6AADqHkGMicWGBYgnCQ/2k61/H250NQAA9YQgxkTKKvTE/Pe+AeJp1BYEAABzIIgxkYqjSc08cPsBAIB5EMSYiFkm9lbM3AsA8EwEMSZiEXNEMdckNJYuTcOMrgYAoI4RxJiIhy9OcvDSbY69MXtSsqTULF1RAGASBDEm4ulLrO21jA5xOB/5r5/kb5963saXAGBmBDEmYraOiA8m9nM4X7LhqGF1AQA4H0GMiZdYe7r+baIkLNDX6GoAAOoIQYyJBPiW75M0+8YEMYOQAIIYAPBUBDEm8vyKPfq+U+Mwua1PczEDghgA8FwEMSaRXVBsO/byEtOICnHM4PvqDwclt5C9lADAExDEmERRSZkpg5iYsMBKvVF//nCrYfUBADgPQYxJ2OdI8TZRFBPsVz4PyOqHvemG1AUA4FwEMSbxze4023FQFR/snrxCqardrgEA7o8gxgQKikvlieXbbefB/uYJYq67tIksvLu3wzWWXQOAZyCIMYG31iQ6nAebaNmxl5eXDGkfI2/d2ct27WB6rhSWlBpaLwBA7RHEmMCJjHyH865Nw8VshnaMlQXje9rOH/+4vGcKAOCeCGJMwM/H8Wm+Z1ArMaOOceU7Wy//9bihdQEA1B5BjAn4entdMKgxiyATzQUCADMw56eZyfiaNGipyEwTmgHADPh0M4H31x+xHb80rruhdTE6iFFbLliPAQDujSDGBHLs0uxHVkjDbyZqpdK79/TRx3lFpfLit/uNrhIAoBYIYkzGUp6415RCAsp7YOat2ifp2YWG1gcAUHMEMSZTVFq+h5IZVcxWfPR0nmF1AQDUDkGMyRTbbQRp1iEle+xoDQDuiyDGZIpLTT6eJCLTRlxiO/5xH5tBAoC7IogxmWKTDycpD1zRVvx8zvbIvLkmUYpM3jsFAO6KIMZk2MH57JBSoN3cmM+3nTD0OQEA1AxBjMkMuaSR0VVwCflF5RtArtyZamhdAAA1QxBj8omtZlVSVj436HRukaF1AQDUDEEMTOnewa1txydzyRUDAO6IIMbDfb83zegquKRpI9rLs9d30cf0xACAeyKI8XB3v7PJ6Cq4JLWT9zUJjfVxRl6xXPn/fpDfjmUYXS0AQDUQxMC0IoL9JDTQVx8fOpkrL3y91+gqAQCqgSAGpp7k3Do6xHYe4Ms/BwBwJ7xrw9RCAs72xChRDcy7wzcAuCOCGA9WareMWBnZOc6wurjy3BirgmIy9wKAOyGI8WAV0+nPvbmrYXVxVY/a7aN0IC1H0rIKDK0PAODiEcSYJIjZNnOEhAX6GVofV9Q1vqH8fXQnfbwrOUuGz/+RvZQAwE0QxHiwwtKzqfVVkt5Qu7kfcNQiKth2nJlfLJsOn6aJAMDTgphXX31VunbtKmFhYfrWv39/+eqrr2yPWywWmTlzpjRp0kSCgoJkyJAhsnPnTofvUVhYKA899JBER0dLSEiIjBkzRpKSkhzKnDlzRsaPHy/h4eH6po4zMsjhUV2F5+Z4+Pt4s93ABQT7OwZ4B9Nzqt3WAAAXD2Li4+Nlzpw58ssvv+jblVdeKdddd50tUJk7d67MmzdPXnrpJdm0aZPExcXJ8OHDJTs72/Y9pk6dKsuXL5elS5fKmjVrJCcnR0aPHi2l53oNlHHjxsnWrVtlxYoV+qaOVSCD6nnwg1/1PdslXVijUMdVSenZbEMAAO7Ay6K6T2ohMjJSXnjhBbnnnnt0D4wKUh577DFbr0tsbKw8//zzcu+990pmZqY0atRIFi1aJLfccosuc+LECWnWrJl8+eWXctVVV8nu3bulU6dOsn79eunbt68uo45Vr8+ePXukffv2F1WvrKws3YujfqbqNTKjlo9/YTs+PGeUoXVx9VVcbZ740nZ+a+9mMucmJkEDgBGq8/ld4zkxqudE9abk5ubqACMxMVFSUlJkxIgRtjIBAQEyePBgWbt2rT7fvHmzFBcXO5RRgU+XLl1sZdatW6crbw1glH79+ulr1jJVUQGT+sXtb2ZWy9jUVHy8vWTS5eUbQqbREwMAbqHaQcz27dulQYMGOkC577779NCQ6jlRAYyiel7sqXPrY+re399fIiIiLlgmJiam0s9V16xlqjJ79mzbHBp1U707ZlZUSs6T6njimo7y3j199PF3e9Lk063HCQQBwNOCGDWco+aoqCGe+++/X+68807ZtWuXQyr3ij0CFa9VVLFMVeV/7/vMmDFDdz1Zb8eOHRMzs19eHeTnY2hd3EVC03Db8cNLt8p7644YWh8AgJODGNWT0rZtW+nVq5fu/ejWrZv83//9n57Eq1TsLUlLS7P1zqgyRUVFevXRhcqkpqZW+rnp6emVennsqZ4h66op683M7IOYzx4caGhd3EVEiL/ERwTZzt9de9jQ+gAA6jhPjOohUfNRWrVqpQOQVatW2R5TAcvq1atlwIAB+rxnz57i5+fnUCY5OVl27NhhK6Pm16ielI0bN9rKbNiwQV+zlsHFDyf5entJu9hQmqwGvTFqZ+sPNh6l7QDARVUrA9oTTzwhV199tZ5vopZNq4m9P/zwg14GrYZ61MqkWbNmSbt27fRNHQcHB+sl04qaqzJhwgR59NFHJSoqSq9smjZtmiQkJMiwYcN0mY4dO8rIkSNl4sSJsmDBAn1t0qRJehn2xa5MQnlPjD87M1dLK7tdrZUZy7bLbX2a85ICAHcPYtQwj8rXonpPVECiEt+pAEblglGmT58u+fn5MnnyZD1kpFYYrVy5UkJDy3sC5s+fL76+vjJ27FhddujQobJw4ULx8Smft7F48WKZMmWKbRWTSoincs/g4hHE1H5XawCAh+eJcVVmzxPz4aaj8tjH2/UxOWIu3ttrEuWZz8snqitLJ/WT3i0j9VJsAIAH5ImBa/vfb8lGV8EtdbGbE2N16+vrZdE6JvkCgKshiPFQaw6cNLoKbqlPq0j5y1WV514t3WTuJfsA4IoIYoAK7ujXgjYBADdAEOPhRndtbHQV3E5YoK/0bx3lcM0zZ44BgHsjiPFQPZo31PfXdmtidFXcjkoXsGRiX7km4WwCRwCAayKI8VAlZWe7Dvx8WFFT00DGfpKvReiKAQBXQxDjgUpKy2RbUqY+9vHmKa6pxuGBTnxWAADOxiecB3rlh4O24z3JWYbWxZ01alAexJzJKza0LgCAyghiPNDbPyfajn9nA3FcQMNgP9txenah7DxxtncLAOAaCGI8kH3cwr4/NRcTFuBwvvBnEt4BgCshiPFA9kMfoYHlvQmonpjQQPnnzd0kusHZYGYXQ3MA4FIIYoALuKlnvPz3vv76eH9ajpSdW/UFADAeQQzwOxo3DLTtDJ6RXywH0rLFQ/dNBQC3QhDjYXadYDWSswX4+kiwv48+nvjeLzJs3o+yeMNRp/8cAED1EMR4mLUH2fixLhSWlOn7zUfO6PuXvz9QJz8HAHDxCGI8MNOs1QcT+xlaF09SWmEuTIAv/3QAwGi8E3vw8urQQF8Da+LZ/AliAMBwBDEeLNCPp9dZbu4ZX2meDADAWHzKefCwBx+0zvPcDQnyzHWdbef0xACA8QhiPMwHm8pXzUSE+BtaF0+igpaBbaNt52qC76L1RwytEwCYHUGMhykuPbuKRmkQwJwYZ4oIdgwK//bJDjl8MtepPwMAcPEIYjzMsdP5+j4+IsjoqnicyBB/CfJznAtzOq/IsPoAgNkRxHiopDNngxk419N282KUTLt9qgAA9YsgBqiGivlh/vrJDtoPAAxCEAPUIog5npHPppAAYBCCGA9yJpf5GXWtqqXVo/69RgqKS+v8ZwMAHBHEeJC/f7bT6Cp4vPyi8tVfVruTs+SHvemG1AcAzIwgxoP877cTRlfB42UXlE/kjQj2sx2zlxIA1D+CGA/Fh2rdGNklTi+1HtOtiQzrGGu7znASANQ/sqF5KIvjpstwkobB/rLhiaHi6+0lWQUlsuzX43qrh7wi5sQAQH2jJ8ZDlRLF1Bk/H2/x8vKS8CA/GX6uNyaPib0AUO8IYjxUGUFMvQj2P5vBN6+wpH5+IADAhiDGQ93Zv6XRVTCFoHNBzOyv9sg9CzcxNwYA6hFBjIeacU0Ho6tgurwx3+1Jk293pxlaHwAwE4IYDxXg67hRIerG8Qp7VJ3KLaSpAaCeEMQATpx79PdPdzKkBAD1hCDGQxxMzzG6CqY0fWQH6dg4TGLDAmzXlmw4amidAMAsCGI8xAsr9hpdBVO6JDZUvnr4MvlDz3jbtWNn8gytEwCYBUGMh/DyKj++Z2ArI6tiSv4+5XOQ3vn5MDtbA0A9IIjxECprrNXAtlGG1sWMSsocN4b87+Ykw+oCAGZBEOMhikrLP0RzSYFvaPsr245n1H8lAMBkCGI8RFFJ+Yeo3cgS6kmZXU+YklNABl8AqGsEMR4YxDQM9jO0LmZ098BWEhboa9s9PKewVEoq9M4AAJyLIMZDhAWVBy6D2kYbWhczatIwSLb8bbi8cHM3fb4nJUt6/GOVzPpyt9FVAwCPRRDjIVTKeyu1wzLqn6+Pt4QG+OrjpDP5klVQIq//eIinAgDqCEEM4EQNAs8GMQCAukcQAzhRiD9BDADUF4IYD2Cx27+nW3y4oXUxu9AqemLsnx8AgPMQxHiAzPxi2/G/bu1uaF3MrlFogPj5OM5JKrRbOQYAcB6CGA/wj8/LV8DEhQUaWhezC/TzkZ8fu9LhWk4hOWMAoC4QxHiAj7eUp7iv2AsAY3pj7GXlF8uh9ByGlQDAyQhiPID9ho9qmS+MVXGJ+4NLfpUr/7laFq0/YlidAMAT8YnnAaIa+Ov7W3s3M7oqqMKu5Cx9/9RnO2kfAHAighgP8MHGo/p+97kPS7imcLusygCA2iOI8QAqO6wSw6Rel0YQAwDORRDjATo2DtP3oxIaG10VXMDp3CLaBwCciCDGA1iTqUU3cFwVA+NMGdqu0rXsghJZsSPZkPoAgCciiHFz2QXFsiclWx/7+/J0uopHhl8ie/4xstL1xRvOzl8CANRetT71Zs+eLb1795bQ0FCJiYmR66+/Xvbu3VupV2DmzJnSpEkTCQoKkiFDhsjOnY6rMgoLC+Whhx6S6OhoCQkJkTFjxkhSUnmuE+XMmTMyfvx4CQ8P1zd1nJGRUZvf1SPd//4W27EvOWJcLvGd1dw/dNX3Px84KWnZBQbWCgBMGsSsXr1aHnjgAVm/fr2sWrVKSkpKZMSIEZKbm2srM3fuXJk3b5689NJLsmnTJomLi5Phw4dLdvbZ3gJl6tSpsnz5clm6dKmsWbNGcnJyZPTo0VJaWmorM27cONm6dausWLFC39SxCmTgaM2BkzSJC1s+eYC88cdeMrZXM+kaHy5lFpG1B04ZXS0A8AyWWkhLS1OTMSyrV6/W52VlZZa4uDjLnDlzbGUKCgos4eHhltdee02fZ2RkWPz8/CxLly61lTl+/LjF29vbsmLFCn2+a9cu/X3Xr19vK7Nu3Tp9bc+ePRdVt8zMTF1e3XuyFo99brv9cvi00dXBBUx+f7N+nhb+nEg7AYATPr9rNYkiMzNT30dGRur7xMRESUlJ0b0zVgEBATJ48GBZu3atPt+8ebMUFxc7lFFDT126dLGVWbdunR5C6tu3r61Mv3799DVrmYrUEFVWVpbDzWzCgyrvoAzX0SDA1zaPCQBQezUOYtTcl0ceeUQGDRqkAxBFBTBKbGysQ1l1bn1M3fv7+0tERMQFy6g5NxWpa9YyVc3Xsc6fUbdmzcyXvbZtTKjRVcAFhAaeDWJO5xLEAIChQcyDDz4o27Ztkw8++OB3945RAU/FaxVVLFNV+Qt9nxkzZuieIevt2LFj1fhtgLrX4FwQ8/bPiTLpvV+kpLSMZgeA+g5i1Mqizz77TL7//nuJj4+3XVeTeJWKvSVpaWm23hlVpqioSK8+ulCZ1NTUSj83PT29Ui+P/bBVWFiYw83TncopNLoKqMFwkrJyV6rMWLZd1h48KV9sI3cMANR5EKN6QlQPzLJly+S7776TVq3Kd09W1LkKQNTKJSsVsKhVTQMGDNDnPXv2FD8/P4cyycnJsmPHDluZ/v37696UjRs32sps2LBBX7OWgUhhCX/Ju5OwQMe9kz7anCTj3tggDyzZIkdP5RlWLwBwV9WaCaqWVy9ZskQ+/fRTnSvG2uOi5qConDBqqEctn541a5a0a9dO39RxcHCwXjJtLTthwgR59NFHJSoqSk8KnjZtmiQkJMiwYcN0mY4dO8rIkSNl4sSJsmDBAn1t0qRJehl2+/btnd8KbqrILoi5qUd5jxhc04VGVFXumOZRwfVZHQAwVxDz6quv6nuVwM7eO++8I3fddZc+nj59uuTn58vkyZP1kJFaYbRy5Uod9FjNnz9ffH19ZezYsbrs0KFDZeHCheLjU54cbPHixTJlyhTbKiaVEE/lnkG5Irs5FWXnth6A67rQU/Q7U8YAAFXwUuusxQOpJdaq10cNQXnq/JgdxzNl9L/X6OMx3ZrIi7d1N7pKuIC8ohJ5cMmv8t2etEqPLf5TXxnYNpr2A2B6WdX4/GazHQ+ZE0NPjOsL9veVt+/qLYfnjJIm4YEOj+UWlhhWLwBwVwQxbqywpHybBs/sT/NcfVqdTRBplVdU/lwCAC4OQYwbe3vNYdvxn4e3M7QuqJ5+raMcznOL6IkBgOoiiHFj3+wuz6VDtl730rpRA4fzvEJ6YgCgughiAAO0qLCcOp3EhQBQbQQxgAFiQgMczl//8ZC8+dMhngsAqAaCGDeVz0RQt6YSQ865McHh2rNf7JaCYoaVAOBiEcS4cc4Rq+0zzyYEhHu5tU9z+eaRwXJZu/L8MIkncw2tEwC4E4IYN1VcenZNtY+3l4RW2JMH7qNtTANZNKGvdGvWUJ/vSclyCFABAOdHEOPm+yb5+/AUeoKW5yb6/vnD32T4vB+l2G5LCQBA1fgEdFNFpWfnTvh6s+mOJ4iPCLIdH8/IlxnLthtaHwBwBwQxbmrlrrM5YrJJV+8RGgQ4Dgn+d3OSnM4tMqw+AOAOCGLc1PxV+4yuApwoJKB8B3f7Sb5fbEuWrIJi2hoAquBb1UW4z8ReeM7mkBU9sHiLpGQVyFWdY2XB+F6G1AsAXBk9MYALCPGv3BOjAhjl653l20sAAMoRxLi5Md2aGF0FOEFwQHlPjL8v/ywB4GLwbumGzthN+LT+tQ7P6Ynp1SLC4TE/H1agAUBVCGLc0FOf7bQd8wHneXNirk5o7PBYRLC/ATUCANdHEOOGdp7ItB37evMUetrqpG7x4XJTj3jbecNgMjIDQFX4BHRDmfnlaenJded5PTFqG4l/ju0myycP0Oe5hWwKCQBVIYhxQydzCm3HkSEBhtYFzhFsNycm0O/sP8uQc5N92UsJAKpGnhgP2EAQ7k8FLHf2byGFJWXSODzIIbDJyC+WL7cnS7/WURIZwvwYALAiiHFzdw9saXQV4CRPX9fF4bzBuZ4Yi0Vk8uIt+viDif2kf5so2hwAGE5yf4F+lZOkwXOz+P7x7Q2G1AUAXBFzYtxQ04blOx7Dc6mkd41CAyptN1FYwkRfAFAIYtxQ+7hQff+P6zobXRXUsYeHtqt07cElv9LuAEAQ457yi87+JR5OEjSPZ58vxmrVrlR6YwCAIMY9rTt0St8HMR/G4wX5+8jCu3vLfYPbOFz/7Vh5wkMAMCuGk9zM4ZO5lfKJwLMNaR9TaRXa2AXr5Mip8tcCAJgRn4JuJt0u0Z1aegtzsC63tjdv1T5D6gIAroIgxs38c+Ve23F+MatUzJjR1yorv9iQugCAqyCIcTPrD522HQ9sG21oXVB/vLy8aG4AqIAgxsOGGGAeajsCADAzghjATdx7eWuH870p2WwOCcDUCGLciIWZvKY245qOcnjOKFk0oY9emZZXVCpf70yxPV5axkxvAOZCEONG1A7HVqMSGhtaFxjnsnaNZMKgVvr4q+0psmjdYbn//c3Sd9Y3cspu9RoAeDqCGDdi3xFj3XoA5jSobSN9v3JXqvzt053y1Y4UOZlTJP/5JcnoqgFAvSGIcSM/7U+3HQf48tSZWdf48CqvlzHkCMBE+CR0I//37X6HHY5hXiEBvmw7AcD0+CR0I0V2c2ICfCsnP4O5VJXsMKuAZdcAzIMgxo3sT8uxHfv5kPzM7CKC/SpdW7LhqGxLyjCkPgBQ3whi3JQvQYzpvXlnL+nTMtKhHbILSmTMSz+z3BqAKRDEuCkfb546s+vZIlL+c19/uX9Im0qPbT1GbwwAz8cnoZvq0byh0VWAi3h4aDuZNuISh2s3vbpW73JNgkQAnowgxk2U2WVjvW9wG4mPCDa0PnAdgX4+8uCV7WTJn/qKv0/5P+kXv90vB+zmUQGApyGIcRMH0ss/jPjrGlUZ0DZa1jx2hcO15MwCGguAxyKIcRMlpeU9Mb8eZb4DqhYTFijv3dNHfLzPrl5Ly2YbAgCeiyDGTdhnYrUIG/3h/C6/pJFcd2kTfZyWTU8MAM9FEOMm7Hco7tQ4zNC6wPXFhAbq+7QsemIAeC6CGDexel/5vklPjupkaF3g+mJCA6rsiSksqZzlFwDcFUGMm1DLZa3YNwm/p1WjEH3/5fYU+ctHv+njuSv2SNeZK2V3chYNCMAjEMQAHmhgm2jb8Uebk/Rw5Cs/HJTCkjKHgBgA3BlBDOCBVG/dy+N62M4TT+bajs8tXAIAt0cQA3ioUV0bS0LTcH08bN5q23Vfu4R4AODOeDdzM+1iGhhdBbiR3hU2iFT86IoB4CEIYtzMjT3ija4C3MgjFfZUUvKLS3XW5+yCYkPqBADOQhDjBrYnZdqOb+rZ1NC6wL00CPCVG3s4vmYy8oplxrLt0uMfq2R/arZhdQOA2iKIcQP3vb/Z6CrAjc26IUF6tYiwnWfmF8vSTcekuNQib61JNLRuAFCvQcyPP/4o1157rTRp0kS8vLzkk08+cXhcdVPPnDlTPx4UFCRDhgyRnTt3OpQpLCyUhx56SKKjoyUkJETGjBkjSUlJDmXOnDkj48ePl/DwcH1TxxkZ5twz6HhGvu04Itjf0LrAPXe5/ui+/jJlaDt9vielvPdFBTMnc8jqC8AkQUxubq5069ZNXnrppSofnzt3rsybN08/vmnTJomLi5Phw4dLdnb5G+fUqVNl+fLlsnTpUlmzZo3k5OTI6NGjpbS0PJvouHHjZOvWrbJixQp9U8cqkDE7P1aWoAbUHxwTBrWSYH+fSo/d8eYG2hSAW/KyqK6Tmn6xl5cORq6//np9rr6V6oFRQcpjjz1m63WJjY2V559/Xu69917JzMyURo0ayaJFi+SWW27RZU6cOCHNmjWTL7/8Uq666irZvXu3dOrUSdavXy99+/bVZdRx//79Zc+ePdK+ffvfrVtWVpbuwVE/LyzMvfcaavn4F7bjw3NGGVoXuLe1B0/KuDcqBy2Js6/R/54BwGjV+fx26pyYxMRESUlJkREjRtiuBQQEyODBg2Xt2rX6fPPmzVJcXOxQRgU+Xbp0sZVZt26d/gWsAYzSr18/fc1apiIVLKlf3P4GwNGANtEy4+oOlZplF1sRAHBDTg1iVACjqJ4Xe+rc+pi69/f3l4iIiAuWiYmJqfT91TVrmYpmz55tmz+jbqpnB0Blky5vLX/o6bhUf8mGo/LE8u1y5FR5Zl8AMOXqpIrd0mqY6fe6qiuWqar8hb7PjBkzdNeT9Xbs2DHxBMWlZUZXAR5G/Rsa1tHxj4TFG47qQGbauc0iAcB0QYyaxKtU7C1JS0uz9c6oMkVFRXr10YXKpKamVvr+6enplXp57Iet1NiZ/c0TqJweVvZ74QC1cWkzx55Qqx3HGYYFYNIgplWrVjoAWbVqle2aClhWr14tAwYM0Oc9e/YUPz8/hzLJycmyY8cOWxk1gVf1pmzcuNFWZsOGDfqatYxZpGUX6PvIEH+9Fw7gDHHhgfLjX66QLX8b7nC9eWQwDQzAbfhW9wvUcugDBw44TOZVy58jIyOlefPmemXSrFmzpF27dvqmjoODg/WSaUXNV5kwYYI8+uijEhUVpb9u2rRpkpCQIMOGDdNlOnbsKCNHjpSJEyfKggUL9LVJkybpZdgXszLJk3y5PVnfRwT7GV0VeJjmUWcDlivaN5Lv96br45SsArnp1bXi5+MlS/7UT7zZZwmAJwUxv/zyi1xxxRW280ceeUTf33nnnbJw4UKZPn265Ofny+TJk/WQkVphtHLlSgkNDbV9zfz588XX11fGjh2ryw4dOlR/rY9PeQ6LxYsXy5QpU2yrmFRCvPPlpvFkL39/UN8fTGfCJerGnJu6yup96TL9v9t0Nt/NR84O9R49nScto0NodgCemSfGlXlKnhhyxKA+qLeBtk9+JaVljm8HX0wZJJ2bhPMkAPD8PDEA3HfFUp+WkZWuT1261ZD6AMDFIIgBoL19V2+Zf0s3PYnc6tDJXJb5A3BZBDEuzH6kr6fdLsRAXQjy95EbusfLP2/uZrumhpeOnMqjwQG4JIIYF6YmW1r1rqKrH6gLV3SIkW8fHSwd4s5Oxj+YnkNDA3BJBDEu7K53NtmOq9p9GKgrbRo1sAUxH29OksKSUtmTkiUFxeU7zQOA2y2xhnEfKkB9uvySRvLJ1hOycleqtP/rCtuw5mMjO0iXpmES7M/bBwBj0RPjJq7ucnZLB6C+3NC9qUwe0sbhmsohM3bBOnmYVUsAXABBjJsgcyqMWHZ97+WOQYzVql2V9zYDgPpGEAPgvMIvsN3FqBd/kiv/+YMcz8inBQEYgiDGRXloImW4IevGoyM6Oe4gv/NElhxKz5WvdzjuWg8A9YUgxkUt+PGQ7XjCoFaG1gXm9sIfusrbd/WSF+zyx9jbm5Jd73UCAIUgxkW9t/aw7fjugS0NrQvMTa1CurJDrIQH+cnL43rYll5bfbM7VQ6k5ejew18On5YNh04ZVlcA5sIaSRfOnmoV3SDA0LoA9kNL6nbsdJ4kncmX295YL6dyi2TYvNVybbcm8r/fTuhyvz01Qgc9AFCX6IlxUQfTc23HgX4kuoNraRYZLH1aRepcMlbWAEbZn8oQE4C6RxADoEZ8vL3kvXv6yOE5o6RtjGMyxr0EMQDqAUEMgFqrOE9mfyr7LQGoewQxLq5fazZ+hOvr28rxdbpw7WH5dOtxKSsjVQCAukMQ44KKSspsx2qvGsDV/aFnM5lyZVv5YGI/2zW1NcF972/Wm0cCQF0giHFBz6/YYzu+tXdzQ+sCXOxqukdGtJf+baLkkeGX2K6rzSP/uXIfjQigTrDE2gW9tSaxyqXWgDuYMrSdTLq8tazely73Ltosb69JlNFdG8uuE1n68bTsQpl4WWte2wBqjSDGxQX40lkG96PSAlzVOU4vwf5xX7qMeelnh8ezC4rlyVGdDKsfAM/AJ6SL8yeIgRt7eGhb8fKqfP27PWlGVAeAh6EnxsUF+DKcBPfVs0WkfHz/APHz9pZ31ibKsi3H9fXM/GKjqwbAA9AT48LG92thdBWAWuvRPEIS4sPl8as76Cy/ysmcInlgyRa9Ek8twz56Ko+d2wFUGz0xLkbtSWPFfBh4kpjQQPnPvf1l5mc7dR6ZL7Yli7+Pt7SPC5U5X51dkXdbn2Yy+8auRlcVgJugJ8bFrNqVajuOCPE3tC5AXZg5prO8c3dvvW3B8l+P2wIY5YONx6SgmLwyAC4OQYyLeebzXbbjuwa0NLQuQF25on2MjO0VX+VjyZkFNDyAi0IQ48JCAhjtg+cafElMldeTM/LrvS4A3BNBjAspZZ8ZmMiAtlHSIMBXfL29pE2jEIeemA2HTsnNr62VpRuPGlpHAK6NP/VdSF5Rie2YoSR4urBAP1k2eYA+bhUdIlOXbpUvtifLox/9Ziuz6fAZaRPTQHq3ZCNUAJXRE+NC1CRHK7UcFfB0l8SG6pufj7fERwRVWebm19bJw0t/ZQk2gEoIYlzI3z/d6ZC2HTCTRqEBtuMXb+su308bYjv/dOsJuf7lnx1SEAAAQQwAlzCub3O5o19z+e99/WVMtyZ6iOmP/csTPv6WlClzv95raB0BuBaCGBdhsViMrgJgqGB/X3n2+gTpZTf/5Znrusibf+xlO//fbyfkyeXbbfPHikvLZNH6I7I3JduQOgMwFkGMi1i9L912zHwYoNywTrGy5E99JebccNPiDUfl/ve36ON5q/bJ3z7ZoefMADAfghgX8cPe8iDm6i5xhtYFcDUD2kbLh/f2l/sGt9G7Yqugv++sb+TVHw7qx/ekZEvSGebLAGZDEOMi1F4y9t3qABypOTKql/KG7k31eWpWocPjX21PockAk+HT0gWpBGAAqvb4yA46QZ76LzTQV+LCA+XZL3bL/327X4Z2jJGvd6bKyZxCub1vc2ndqAHNCHgwPi1dMFNvkD/Lq4HziQkLlLl/6GY7Lyktk8+3JcvWYxly5T9X266/tSZRejRvKG/f1VsaBrOZKuCJGE5yAe/8nGh0FQC35evjLTf1dNxMMsD37FvblqMZ8sq5eTMAPA9BjAvYl1q+PPTW3s0MrQvgji5vF207vqlHvOx6ZqT8edgl+vz1Hw/J/e9vlt3JWTqVgZoMvGD1QdIaAB6A4SQX8J9fkmzH/7i+i6F1AdxRi6gQPXR0IC1Hpg5rJz7eXjJlaFs5kZEvH/5yTL7akaJvCU3DZfvxTFtWbDWf5uudKXrCcExooNG/BoBqIogxWEFxqcO52kMGQPUtmdhPCovLJDzYT597eXnJ83/oKtd3byqP/Ger3h3bGsAoT31Wvs1HfMMgeWREe5odcDMEMQab9eVuo6sAeATVs1LVnmP920TJ4j/11cNKKsdMdIMAycwvlvfWHbGVWXfolL7fcTxT7l20Wcb2aiY39mgqP+5Pl1t6NdPzbgC4Hi+Lh+a7z8rKkvDwcMnMzJSwsDBxVS0f/8Lh/PCcUYbVBTAL9ba3Ozlbb1tw3cs/62sPXtFWlm46ppdn2/vb6E4yYVArg2oKmE9WNT6/+fPChYzoFGt0FQBTUENNnZqESdf4cImPCNLXXvr+QKUARnl7TaKUVUiDAMA1EMRUk3ozU/NY8osc57I4w6t39HT69wRw4WDmuRsS5MoOMeLv6y2NQgPkldt7yGXtouWS2LOJ8o5n5EvrJ76U215fL4UlpaxqAlwIc2KqafX+dLn7nU3SuUmYfDHlslo1/oodjmnS1YoKAPVr8CWN9C23sES8vbx0sslrEhrrx17+/oC88PVe27yZ4fN+lKyCYmkcHiQ9WzSU2/o0l/iGwVJQUippWYWSEB/O0wfUI4KYavJRMwOryLJbE/e9v7nW3wOAc4RUsd3H/YPb6J6YJRuO6vOjp89uMpmRV6zzzry//ux1Rb01zB97qbSLbSAd48LE+9wfJUUlZfLR5mMysE20tIwO4ekCnIggproNdu6NSe2a60yfPjDQqd8PQO2pQGTWDQnyj+u6yPxV++TT346Lv4+3RDUIkINpOXIqt8hWVi2RmPrhVn3culGI3Ht5a+nTKko+2HhUr4zq1Fj13g7SQ1gAnIMgppp2JWfZjtW8GGftc9StWUOnfB8AzqeGeqdd1V7f7KVnF8rkxZtl0+EzDtcPpefKYx9vr/Te0WrGlzJlaDsZ1jFG2seFSoAv+6QBtUEQU00qx4TV7W+ul2WTa9aDot78ALg3NRF48Z/6SUZ+keQWlsqpnEKJCPHX8+asQ08Vvfjtfn1rF9NAbuwRL2MubSKfbT0h/918TP5+bWdJzsiXDYmnZfrI9nruDYDzI09MDfJLqL+mapvXxT4/zKo/Xy7tYkNr9H0AuKZD6TkyadFm6do0XKaP7CD/9+1+2XLkjOxPy5aLmVKnku3NG3tpfVQVcNs8MfTEVJMzxrPP2I2jKwQwgOdp3aiBfPPIYNv57BsT9L1KsKcmBv/nl2Oyem+6bDx8WtRUO2tg0yDAV3IKS+STX4/L0A6xsnJXivy0/6Q8PaazJGfmy69HM+SBK9pKl6bh+o+qY6fzpWlEEKsbYUr0xNSyF+Xnx6+Upg2DatyTo5ClFzAvtQVCoJ+3nmP33Z40nbPmzrc3ym9J5fs8VRQTGiAf3z9A9+78d3OSnmMTGeKvN8Jcf+iUtIoOkaeu7VxlYJNXVCLB/vz9CtdFT0w9zIuxZvYcOOe7agUh6i8qezOv7eT0+gFwH+FBZzesVJN81RwZRW1c+fjH2/Uy7gFtouT7vekOX5OWXSiXzf3edv7N7rRK7zNqtdQNPZqKCmO6N4/QiTof+3ibLP/1uDx7fRe5tU/zevn9gLpET0wNqBwxbZ6o2bwY9koCUF17UrL09gd3DWglwf4+cuc7G+XIqTxpGOwnTcKDHFZNhgb6SnZBicPXT7q8tZ6P88uR8lVUfVpGyp8uayV+Pt66x0b1CP24L13fd2gcJln5xbItKUMmDGoto7qeTf4HuFpPDEFMDdkHIyr3Q+cmv5+pc9Ph03Lza+ts5x9M7Kd32AWA6sjMK5b/bTuhh57yikrl7oUb5cbu8XJFhxi9F9Tag6fkyWXbJbvQMZhRwUpNEnUOahutAya1y3dyZoHujW4cHig39YyXYR1jZfGGI7onaWSXON3zY03qp+bwqJ+nhtzJjwNTBjGvvPKKvPDCC5KcnCydO3eWf/3rX3LZZZcZvov1jGXbdRIrq0OzrrFl6KyK6spV+6/YYy4MgLqielTU+46aN7P1WIZc1TlOru3WWKJCAmTFzmT5ekeqrNiZooez1E318Kg9o9Sy8cSTeeLn4yUH03Pk5wOnqv2zVWDj4y2ycleqHtaKDQvQ33dfao50b9ZQxvVtLqMSGouvj7dsOHRKnvl8lyQ0Ddc9RqpnaM2Bk9IiKlj3Fn27J022HD0jvVpE6u+hlqZbsyurfeysPUnqd1XD/CrAutB7cUlpmf65cF0eE8R8+OGHMn78eB3IDBw4UBYsWCBvvvmm7Nq1S5o3b25oEFPV0NCFApmKZdc8doXERwTXSb0A4Peot/6dJ7KkWWSwbV5OVdS8HDWspPLgNGkYJB0bh8rp3CLZfOSMLFp/RA9rqZ6WAD9vOXoqT8osFocl5Ofr/VFByhXtY2TppqNSUFymr6nASQUlqnfJmvk48WSuDoSsVJl2MaH651gzp6tsyOq6mgzdJDxQ72GVmlUo+1KzdY+RCmyaRwbr+r+1JlFPfB7dtbHeUkL1XqktIaz7X6VlF+hJ0u1jQyUrv0QOncyRrIISOZ1bKAvXHpHoEH+ZdWOCxIYF6pVmqm5q89C1B07qn9c+LkyaRwVLbGjABYMlFYCp7M8XCrgqUoFaqcWi2+hCz6uXm2eF9pggpm/fvtKjRw959dVXbdc6duwo119/vcyePdvwIOax/26TD385Vum6yvuiXmTqrx9rGvKK6IUB4O7Ux4eaZKw+9NV7ngpW1PydZVuO66XiIzrHSuvoBvJbUoYu16ZRiHy7O03e+TlRzuQV276P6gFSwc4P5yYwqx3E1bCVdW5Pn1aReo6O2uahvhKFBvn5SH7x2WCqItVrpQI/9Tup4GlAm2i9ssye+n0igv31zucBvt4SFugnoUF+Ehboe3a+0fFMiQrxl47n5h+pJIkq9Nh+PEsvuVfDdw2D/CUuPFDPc1LJE7clZeqNSsf2bqbbft3BU7rd1fCd2pRYJU1U5aIa+MvAttHSv3WU7E/L0b+LCuKyC4olOMBXusaHS2ign2TkFcmBtBwd9DQI8NFtrr6/Kq+GItWKOZVwsaikVPal5cj+1Gzdw6eej5ZRIfr5aBEZ7PRJ4h4RxBQVFUlwcLB89NFHcsMNN9iuP/zww7J161ZZvXq1Q/nCwkJ9s2+EZs2a1WkQU9Vy6YuROPsat4+UAaCm1DLv/2w6JodO5kr35g1ldNcm+sN49b50Sc0qkJt6xOtgZe6KPXqOz9Rhl9h6LI6cytXDXGpjTbXqSn2Cfb7thM6to75ub0q2JGcVSIi/j86lo76fCpg2Jp7Sw1nXdmsih0/m6psanvp8W7L+WiU0wFdfO5GZb+sdigsL1AGG6gUZ1ilGB1qqB6sqKmhQvTtqLlBxqUt+tDqdCkAXTejr1O/pEUHMiRMnpGnTpvLzzz/LgAEDbNdnzZol7777ruzdu9eh/MyZM+Xpp5+u9H3qMog531DR+ai4RQ05EcAAgGtQwZDqcVBDQta98NR50pk8PfxUcXdzNadmb2q27nWKCQ2U7cczdeLCG7s3lasTzq7iUo+pIEzN0Qn085GSsjI9NKV6MVSvi6+Pl/RsEaF7TZLO5EvDID/dq6HqonpJVECnyp3OK5LjZ/J1j5QK5jo1CdPDegvXJkqIv6/eskKV/eXwGdlxIlMHFGqITn3P5b8m6T28VE+P6g1SwZXqPTqVU6RXs6mfpXqU2sY00L1G6meoITLVU6QCOPV7q/xFqndGPa7mIl0SG6p/n58PnNS/i+qBU8OLt/SmJ+a8QczatWulf//+tuvPPfecLFq0SPbs2WN4T0xFX25PlsmLtzhc+8d1nSUmLPDcRDd6XwAA8Phkd9HR0eLj4yMpKSkO19PS0iQ2NrZS+YCAAH0z0jUJjZnrAgBAPXHZdWb+/v7Ss2dPWbVqlcN1dW4/vAQAAMzJZXtilEceeUQvse7Vq5ceUnr99dfl6NGjct999xldNQAAYDCXDmJuueUWOXXqlDzzzDM62V2XLl3kyy+/lBYtWhhdNQAAYDCXXZ1UW/WRJwYAABj3+e2yc2IAAAAuhCAGAAC4JYIYAADglghiAACAWyKIAQAAbokgBgAAuCWCGAAA4JYIYgAAgFsiiAEAAG7JpbcdqA1rImKV+Q8AALgH6+f2xWwo4LFBTHZ2tr5v1qyZ0VUBAAA1+BxX2w+Ycu+ksrIyOXHihISGhoqXl9dFRX4q4Dl27Bh7LdUT2rx+0d60t6fjNe4Z7a3CEhXANGnSRLy9vc3ZE6N+8fj4+Gp/nXoi2DCyftHmtLcn4/VNm3u6sDr43Py9HhgrJvYCAAC3RBADAADcEkHMOQEBAfLUU0/pe9QP2rx+0d60t6fjNW6+9vbYib0AAMCz0RMDAADcEkEMAABwSwQxAADALRHEAAAAt0QQc84rr7wirVq1ksDAQOnZs6f89NNPxj4zbmj27NnSu3dvnSU5JiZGrr/+etm7d69DGTWPfObMmToTY1BQkAwZMkR27tzpUKawsFAeeughiY6OlpCQEBkzZowkJSXV82/jnu2vslNPnTrVdo32dr7jx4/LHXfcIVFRURIcHCyXXnqpbN68mTavAyUlJfLXv/5Vvzer94vWrVvLM888ozOyW/Ear50ff/xRrr32Wv2erN4/PvnkE4fHndW+Z86ckfHjx+skduqmjjMyMmpZ+7MVNL2lS5da/Pz8LG+88YZl165dlocfftgSEhJiOXLkiOnbpjquuuoqyzvvvGPZsWOHZevWrZZRo0ZZmjdvbsnJybGVmTNnjiU0NNTy8ccfW7Zv32655ZZbLI0bN7ZkZWXZytx3332Wpk2bWlatWmXZsmWL5YorrrB069bNUlJSwvNxHhs3brS0bNnS0rVrV/36pb3rxunTpy0tWrSw3HXXXZYNGzZYEhMTLd98843lwIEDtHkdePbZZy1RUVGWzz//XLf1Rx99ZGnQoIHlX//6F+3tJF9++aXlySef1O/JKiRYvny5w+POes8eOXKkpUuXLpa1a9fqmzoePXp0retPEGOxWPr06aOfBHsdOnSwPP7447VuYDNLS0vT/yhWr16tz8vKyixxcXH6H4VVQUGBJTw83PLaa6/p84yMDB1QqsDS6vjx4xZvb2/LihUrDPgtXF92dralXbt2+g1k8ODBtiCG9na+xx57zDJo0KDzPk6bO5f6Q+iee+5xuHbjjTda7rjjDtq7DkiFIMZZr2fVOaC+9/r1621l1q1bp6/t2bOnVnU2/XBSUVGR7goeMWKEQw+VOl+7dm3tu7pMLDMzU99HRkbq+8TERElJSXFoa5UkafDgwba2Vs9FcXGxQxnVjdmlSxeej/N44IEHZNSoUTJs2DCH67S383322WfSq1cvufnmm/WQaffu3eWNN96gzevIoEGD5Ntvv5V9+/bp899++03WrFkj11xzjT7nNV63nNW+69at00NIffv2tZXp16+fvlbbz1mP3QDyYp08eVJKS0slNjbW4bo6V08eakYF9Y888oh+E1IvZsXanlW19ZEjR2xl/P39JSIigufjIixdulS2bNkimzZtqvQY7e18hw4dkldffVW/tp944gnZuHGjTJkyRb+x//GPf6TNneyxxx7Tfwx16NBBfHx89Hv1c889J7fddpt+nNd43XJW+6p7FfRXpK7V9nPW9EGMlZrQVPFDuOI1XLwHH3xQtm3bpv9qckZb83xUduzYMXn44Ydl5cqVekL6+dDezqMmlKqemFmzZulz1ROjJjmqwEYFMbS5c3344Yfy/vvvy5IlS6Rz586ydetWPXFd/aV/55130t71xBnvIVWVd8b7uumHk9RsahXhV4wG09LSKkWfuDhqlrrqdv/+++8lPj7edj0uLk7fX6itVRk1xKdmsvN8XJjqxlVtp1bT+fr66tvq1avlxRdf1MfWNqW9nadx48bSqVMnh2sdO3aUo0eP2l6/tLnz/OUvf5HHH39cbr31VklISNArWv785z/rlXi0d91z1utZlUlNTa30/dPT02v9OWv6IEZ1g6kPgVWrVjk0jDofMGBArRrXbFRUrXpgli1bJt99951eFmlPnasXs31bqxe/+uC1trV6Lvz8/BzKJCcny44dO3g+Khg6dKhs375d/3Vqvalegttvv10fq+WotLdzDRw4sFLaADVfo0WLFrzG60BeXp54ezt+TKk/Oq1LrHlPqVvOat/+/fvrYUE1/Gq1YcMGfa3Wn7O1mhbsYUus33rrLT2LeurUqXqJ9eHDh42umlu5//779az1H374wZKcnGy75eXl2cqoWe6qzLJly/Ryvdtuu63K5Xrx8fF66aparnfllVeyxPoi2a9Oor3rZim7r6+v5bnnnrPs37/fsnjxYktwcLDl/fffp83rwJ133qmX7lqXWKv3jejoaMv06dNpbyeubvz111/1TYUE8+bN08fWFCPOes9WS6xVCgi1KkndEhISWGLtTC+//LLO/+Dv72/p0aOHbVkwLp76B1DVTeWOsV+y99RTT+llewEBAZbLL79c/8Owl5+fb3nwwQctkZGRlqCgIP1CP3r0KE9FDYIY2tv5/ve//+kcF+r1q1IxvP766w6P0+bOoz4o1etZ5ZsKDAy0tG7dWuc0KSwspL2d5Pvvv6/yfVsFkM58PZ86dcpy++2365wz6qaOz5w5U+v6e6n/1a4vBwAAoP6Zfk4MAABwTwQxAADALRHEAAAAt0QQAwAA3BJBDAAAcEsEMQAAwC0RxAAAALdEEAMAANwSQQwAAHBLBDEAAMAtEcQAAAC3RBADAADEHf1/c2uQbCBUTYkAAAAASUVORK5CYII=", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "samplelist = np.linspace(start=1, stop=analyser.max_samples, num=analyser.max_samples, dtype=int).tolist()\n", "analyser.GetTotalMass(samples=[33], plot=True)" @@ -64,18 +53,10 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": null, "id": "a9eadad8", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "1.7670695718029623e-08\n" - ] - } - ], + "outputs": [], "source": [ "print(analyser.total_mass)" ]