%FILES%
ethoscope_data/
ethoscope_data/cache/
ethoscope_data/results/
ethoscope_data/sensors/
ethoscope_data/videos/
opt/
opt/ethoscope/
opt/ethoscope/.coveragerc
opt/ethoscope/.git/
opt/ethoscope/.git/HEAD
opt/ethoscope/.git/config
opt/ethoscope/.git/description
opt/ethoscope/.git/hooks/
opt/ethoscope/.git/hooks/applypatch-msg.sample
opt/ethoscope/.git/hooks/commit-msg.sample
opt/ethoscope/.git/hooks/fsmonitor-watchman.sample
opt/ethoscope/.git/hooks/post-update.sample
opt/ethoscope/.git/hooks/pre-applypatch.sample
opt/ethoscope/.git/hooks/pre-commit.sample
opt/ethoscope/.git/hooks/pre-merge-commit.sample
opt/ethoscope/.git/hooks/pre-push.sample
opt/ethoscope/.git/hooks/pre-rebase.sample
opt/ethoscope/.git/hooks/pre-receive.sample
opt/ethoscope/.git/hooks/prepare-commit-msg.sample
opt/ethoscope/.git/hooks/push-to-checkout.sample
opt/ethoscope/.git/hooks/sendemail-validate.sample
opt/ethoscope/.git/hooks/update.sample
opt/ethoscope/.git/index
opt/ethoscope/.git/info/
opt/ethoscope/.git/info/exclude
opt/ethoscope/.git/objects/
opt/ethoscope/.git/objects/info/
opt/ethoscope/.git/objects/pack/
opt/ethoscope/.git/objects/pack/pack-b5df2737a86ec2f150eefd7a2c3c22d4baa691b5.idx
opt/ethoscope/.git/objects/pack/pack-b5df2737a86ec2f150eefd7a2c3c22d4baa691b5.pack
opt/ethoscope/.git/objects/pack/pack-b5df2737a86ec2f150eefd7a2c3c22d4baa691b5.rev
opt/ethoscope/.git/packed-refs
opt/ethoscope/.git/refs/
opt/ethoscope/.git/refs/heads/
opt/ethoscope/.git/refs/heads/dev
opt/ethoscope/.git/refs/heads/main
opt/ethoscope/.git/refs/remotes/
opt/ethoscope/.git/refs/remotes/origin/
opt/ethoscope/.git/refs/remotes/origin/HEAD
opt/ethoscope/.git/refs/tags/
opt/ethoscope/.gitignore
opt/ethoscope/.pre-commit-config.yaml
opt/ethoscope/CLAUDE.md
opt/ethoscope/Docker/
opt/ethoscope/Docker/cloudflare-tunnel/
opt/ethoscope/Docker/cloudflare-tunnel/.env.example
opt/ethoscope/Docker/cloudflare-tunnel/README.md
opt/ethoscope/Docker/cloudflare-tunnel/docker-compose.host-network.yml
opt/ethoscope/Docker/cloudflare-tunnel/docker-compose.yml
opt/ethoscope/Docker/node/
opt/ethoscope/Docker/node/.env.example
opt/ethoscope/Docker/node/README.md
opt/ethoscope/Docker/node/docker-compose.yml
opt/ethoscope/Docker/node/git-server/
opt/ethoscope/Docker/node/git-server/entrypoint.sh
opt/ethoscope/Docker/node/git-server/git-daemon.dockerfile
opt/ethoscope/Docker/node/node.dockerfile
opt/ethoscope/Docker/resource_server/
opt/ethoscope/Docker/resource_server/Dockerfile
opt/ethoscope/Docker/resource_server/contents/
opt/ethoscope/Docker/resource_server/contents/links.json
opt/ethoscope/Docker/resource_server/contents/news.txt
opt/ethoscope/Docker/resource_server/docker-compose.yml
opt/ethoscope/Docker/resource_server/ethoscope_pa_server.service
opt/ethoscope/Docker/resource_server/index_template.html
opt/ethoscope/Docker/resource_server/pa_server.py
opt/ethoscope/Docker/virtuascope/
opt/ethoscope/Docker/virtuascope/README.md
opt/ethoscope/Docker/virtuascope/docker-compose.yml
opt/ethoscope/Docker/virtuascope/init_db_credentials.sql
opt/ethoscope/Docker/virtuascope/video-entrypoint.sh
opt/ethoscope/Docker/virtuascope/video-streamer.dockerfile
opt/ethoscope/Docker/virtuascope/virtuascope.dockerfile
opt/ethoscope/LICENSE
opt/ethoscope/README.md
opt/ethoscope/accessories/
opt/ethoscope/accessories/3D_printed_files/
opt/ethoscope/accessories/3D_printed_files/CE3PRO_GCODE/
opt/ethoscope/accessories/3D_printed_files/CE3PRO_GCODE/CE3PRO_1.1_etho_v1.8_LIGHT_BOX_1x.gcode
opt/ethoscope/accessories/3D_printed_files/CE3PRO_GCODE/CE3PRO_1_etho_v1.8_LIGHT_BOX_WITH_STRIP_2x.gcode
opt/ethoscope/accessories/3D_printed_files/CE3PRO_GCODE/CE3PRO_2.3_etho_v1.7_CASE_CAMERA_COVER_5x.gcode
opt/ethoscope/accessories/3D_printed_files/CE3PRO_GCODE/CE3PRO_2.4_etho_v1.8_CASE_LID_2X.gcode
opt/ethoscope/accessories/3D_printed_files/CE3PRO_GCODE/CE3PRO_2_etho_v1.7_PI3_CASE_FULL_1x.gcode
opt/ethoscope/accessories/3D_printed_files/CE3PRO_GCODE/CE3PRO_2_etho_v1.7_PI4_CASE_FULL_1x.gcode
opt/ethoscope/accessories/3D_printed_files/CE3PRO_GCODE/CE3PRO_3.1_etho_v1.8_Wall_Stabiliser_2x.gcode
opt/ethoscope/accessories/3D_printed_files/CE3PRO_GCODE/CE3PRO_3.2_etho_v1.8_SSD_ADAPTER_2x.gcode
opt/ethoscope/accessories/3D_printed_files/CE3PRO_GCODE/Readme.md
opt/ethoscope/accessories/3D_printed_files/ETHOSCOPE/
opt/ethoscope/accessories/3D_printed_files/ETHOSCOPE/1.1_etho_v1.8_LIGHT_BOX.stl
opt/ethoscope/accessories/3D_printed_files/ETHOSCOPE/1.2_etho_v1.8_LIGHT_BOX_STRIP.stl
opt/ethoscope/accessories/3D_printed_files/ETHOSCOPE/2.1_etho_v1.7_PI3_CASE.stl
opt/ethoscope/accessories/3D_printed_files/ETHOSCOPE/2.2_etho_v1.7_PI4_CASE.stl
opt/ethoscope/accessories/3D_printed_files/ETHOSCOPE/2.3_etho_v1.7_CASE_CAMERA_COVER.stl
opt/ethoscope/accessories/3D_printed_files/ETHOSCOPE/2.4_etho_v1.8_CASE_LID.stl
opt/ethoscope/accessories/3D_printed_files/ETHOSCOPE/3.1_etho_v1.8_Wall_Stabiliser.stl
opt/ethoscope/accessories/3D_printed_files/ETHOSCOPE/3.2_etho_v1.8_SSD_Adapter.stl
opt/ethoscope/accessories/3D_printed_files/ETHOSCOPE/4.1_etho_walls-picamera2.dxf
opt/ethoscope/accessories/3D_printed_files/ETHOSCOPE/4.2_etho_walls-printable-picamera2.stl
opt/ethoscope/accessories/3D_printed_files/REFLECTIVE_SURFACE/
opt/ethoscope/accessories/3D_printed_files/REFLECTIVE_SURFACE/ethoscope_mirror_2x.svg
opt/ethoscope/accessories/3D_printed_files/REFLECTIVE_SURFACE/ethoscope_mirror_3x.svg
opt/ethoscope/accessories/3D_printed_files/ethoscope_3D_printed_files.zip
opt/ethoscope/accessories/check_h264_md5.py
opt/ethoscope/accessories/cronie_scripts/
opt/ethoscope/accessories/cronie_scripts/h264_to_mp4
opt/ethoscope/accessories/cronie_scripts/sync
opt/ethoscope/accessories/databases/
opt/ethoscope/accessories/databases/README_cron.md
opt/ethoscope/accessories/databases/cleanup_duplicate_db_rows.py
opt/ethoscope/accessories/databases/db2video.py
opt/ethoscope/accessories/databases/find_duplicate_data.py
opt/ethoscope/accessories/databases/locate_ethoscope_db.py
opt/ethoscope/accessories/databases/refresh_cache.py
opt/ethoscope/accessories/databases/retire_inactive_devices.py
opt/ethoscope/accessories/databases/sql2sqlite.sh
opt/ethoscope/accessories/databases/video_from_ethoscope_db.py
opt/ethoscope/accessories/etho_sensor/
opt/ethoscope/accessories/etho_sensor/README.md
opt/ethoscope/accessories/etho_sensor/config.h
opt/ethoscope/accessories/etho_sensor/etho_sensor.ino
opt/ethoscope/accessories/etho_sensor/network.cpp
opt/ethoscope/accessories/etho_sensor/network.h
opt/ethoscope/accessories/etho_sensor/platform.cpp
opt/ethoscope/accessories/etho_sensor/platform.h
opt/ethoscope/accessories/etho_sensor/sensors.cpp
opt/ethoscope/accessories/etho_sensor/sensors.h
opt/ethoscope/accessories/etho_sensor/storage.cpp
opt/ethoscope/accessories/etho_sensor/storage.h
opt/ethoscope/accessories/etho_sensor/structs.h
opt/ethoscope/accessories/etho_sensor/virtual_sensor.py
opt/ethoscope/accessories/get_network_range.py
opt/ethoscope/accessories/h264_to_mp4.py
opt/ethoscope/accessories/hardware/
opt/ethoscope/accessories/hardware/mAGO/
opt/ethoscope/accessories/hardware/mAGO/mAGO.ino
opt/ethoscope/accessories/install_ethoscope_debian.sh
opt/ethoscope/accessories/migrate_user_pins.py
opt/ethoscope/accessories/reset_to_000.sh
opt/ethoscope/accessories/update-node-cli.sh
opt/ethoscope/accessories/upgrade_scripts/
opt/ethoscope/accessories/upgrade_scripts/README.md
opt/ethoscope/accessories/upgrade_scripts/install_services.sh
opt/ethoscope/accessories/upgrade_scripts/migrate_to_unified_structure.sh
opt/ethoscope/docs/
opt/ethoscope/docs/BACKUP_STATUS_API.md
opt/ethoscope/docs/FRONTEND_MULTI_STIMULATOR_IMPLEMENTATION.md
opt/ethoscope/docs/HARDWARE_STIMULATOR_INTERACTION_DOCUMENTATION.md
opt/ethoscope/docs/MULTI_STIMULATOR_FEATURE.md
opt/ethoscope/docs/SLEEP_RESTRICTION_USAGE_GUIDE.md
opt/ethoscope/docs/TESTING.md
opt/ethoscope/prototypes/
opt/ethoscope/prototypes/cupido/
opt/ethoscope/prototypes/cupido/2025_07_15_metadata.csv
opt/ethoscope/prototypes/cupido/README.md
opt/ethoscope/prototypes/cupido/cupido_tracker.py
opt/ethoscope/prototypes/cupido/mask_creator.py
opt/ethoscope/prototypes/cupido/multi_fly_tracker_offline.py
opt/ethoscope/prototypes/cupido/results/
opt/ethoscope/prototypes/cupido/results/progress.json
opt/ethoscope/prototypes/cupido/results_manager.py
opt/ethoscope/prototypes/cupido/roi_manager.py
opt/ethoscope/prototypes/cupido/tracking_config.py
opt/ethoscope/prototypes/cupido/video_finder.py
opt/ethoscope/prototypes/device_status.json
opt/ethoscope/prototypes/ethoscope_camera_test.py
opt/ethoscope/prototypes/mysql_data_structure.sql
opt/ethoscope/prototypes/obsolete/
opt/ethoscope/prototypes/obsolete/angle_computation.py
opt/ethoscope/prototypes/obsolete/arduino_api/
opt/ethoscope/prototypes/obsolete/arduino_api/rotate_all.py
opt/ethoscope/prototypes/obsolete/arduino_api/sleep_dep_off_line.py
opt/ethoscope/prototypes/obsolete/backup_no_data_bug.py
opt/ethoscope/prototypes/obsolete/better_target_detector/
opt/ethoscope/prototypes/obsolete/better_target_detector/target_detector.py
opt/ethoscope/prototypes/obsolete/date_range.py
opt/ethoscope/prototypes/obsolete/device_scanner/
opt/ethoscope/prototypes/obsolete/device_scanner/__init__.py
opt/ethoscope/prototypes/obsolete/device_scanner/device_scanner.py
opt/ethoscope/prototypes/obsolete/dods/
opt/ethoscope/prototypes/obsolete/dods/odor_deliverer.py
opt/ethoscope/prototypes/obsolete/esteban_tracker.py
opt/ethoscope/prototypes/obsolete/faster_picam/
opt/ethoscope/prototypes/obsolete/faster_picam/faster_camera.py
opt/ethoscope/prototypes/obsolete/formalised_tracking.py
opt/ethoscope/prototypes/obsolete/haar_trainer/
opt/ethoscope/prototypes/obsolete/haar_trainer/haar_gt_creator.py
opt/ethoscope/prototypes/obsolete/iter_video.py
opt/ethoscope/prototypes/obsolete/jpg_img_queue.py
opt/ethoscope/prototypes/obsolete/json_config/
opt/ethoscope/prototypes/obsolete/json_config/config.json
opt/ethoscope/prototypes/obsolete/json_config/test_config.sh
opt/ethoscope/prototypes/obsolete/json_config/test_fake_sleep_dep.json
opt/ethoscope/prototypes/obsolete/json_config/test_generic_config.json
opt/ethoscope/prototypes/obsolete/lynx_servo/
opt/ethoscope/prototypes/obsolete/lynx_servo/lynx_basics.py
opt/ethoscope/prototypes/obsolete/lynx_servo/quality_control.py
opt/ethoscope/prototypes/obsolete/lynx_servo/valve_api.py
opt/ethoscope/prototypes/obsolete/lynx_servo/zero_servo.py
opt/ethoscope/prototypes/obsolete/medianABS_racking.py
opt/ethoscope/prototypes/obsolete/monitoring_test.py
opt/ethoscope/prototypes/obsolete/multi_fly_tracking/
opt/ethoscope/prototypes/obsolete/multi_fly_tracking/multi_tracker.py
opt/ethoscope/prototypes/obsolete/multi_fly_tracking/negative_maker.py
opt/ethoscope/prototypes/obsolete/multi_fly_tracking/static_fg_model_builder.py
opt/ethoscope/prototypes/obsolete/mysql/
opt/ethoscope/prototypes/obsolete/mysql/get_video_from_mysql.py
opt/ethoscope/prototypes/obsolete/mysql/img_from_sqlite.jpg
opt/ethoscope/prototypes/obsolete/mysql/mysql2sqlite_img_snapshots.py
opt/ethoscope/prototypes/obsolete/mysql/mysql_output.jpg
opt/ethoscope/prototypes/obsolete/mysql/mysql_test.py
opt/ethoscope/prototypes/obsolete/mysql/mysql_to_sqlite_jpeg.py
opt/ethoscope/prototypes/obsolete/mysql/out.jpg
opt/ethoscope/prototypes/obsolete/mysql/output_sqlite.db
opt/ethoscope/prototypes/obsolete/mysql/saveJpeg2SQLite.py
opt/ethoscope/prototypes/obsolete/mysql/save_jpeg_mysql
opt/ethoscope/prototypes/obsolete/mysql/sqlite_mysql_mirror.py
opt/ethoscope/prototypes/obsolete/mysql/test.jpg
opt/ethoscope/prototypes/obsolete/mysql/write_benchmark.py
opt/ethoscope/prototypes/obsolete/offline_tracking_sample.py
opt/ethoscope/prototypes/obsolete/parrallel_url_fetch/
opt/ethoscope/prototypes/obsolete/parrallel_url_fetch/prototype.py
opt/ethoscope/prototypes/obsolete/pi_recording_and_snapshots.py
opt/ethoscope/prototypes/obsolete/picamera_multiprocess/
opt/ethoscope/prototypes/obsolete/picamera_multiprocess/server_side_back.py
opt/ethoscope/prototypes/obsolete/picamera_multiprocess/test.py
opt/ethoscope/prototypes/obsolete/picamera_multiprocess/video_sequence.py
opt/ethoscope/prototypes/obsolete/picamera_socket/
opt/ethoscope/prototypes/obsolete/picamera_socket/client.py
opt/ethoscope/prototypes/obsolete/picamera_socket/server.py
opt/ethoscope/prototypes/obsolete/picamera_socket/sub_process.py
opt/ethoscope/prototypes/obsolete/rois_from_img.py
opt/ethoscope/prototypes/obsolete/rois_from_img_sd.py
opt/ethoscope/prototypes/obsolete/sleep_dep_api.py
opt/ethoscope/prototypes/obsolete/sleep_dep_off_line.py
opt/ethoscope/prototypes/obsolete/to_sparse_mat.py
opt/ethoscope/prototypes/obsolete/tracking_mog.py
opt/ethoscope/prototypes/obsolete/validation/
opt/ethoscope/prototypes/obsolete/validation/analysis.R
opt/ethoscope/prototypes/obsolete/validation/annotate_chunks.py
opt/ethoscope/prototypes/obsolete/validation/make_roi_time_chunks.py
opt/ethoscope/prototypes/offline_track_using_mask.py
opt/ethoscope/prototypes/remove_spotlights.py
opt/ethoscope/prototypes/rois_from_images/
opt/ethoscope/prototypes/rois_from_images/all_frames /
opt/ethoscope/prototypes/rois_from_images/all_frames /12squares_1.jpg
opt/ethoscope/prototypes/rois_from_images/all_frames /12squares_2.jpg
opt/ethoscope/prototypes/rois_from_images/all_frames /6squares.jpg
opt/ethoscope/prototypes/rois_from_images/all_frames /6squares_2.jpg
opt/ethoscope/prototypes/rois_from_images/all_frames /frame1.jpg
opt/ethoscope/prototypes/rois_from_images/all_frames /rings.jpg
opt/ethoscope/prototypes/rois_from_images/area_mask_rois.py
opt/ethoscope/prototypes/rois_from_images/build_rois_from_mask.py
opt/ethoscope/prototypes/rois_from_images/frames/
opt/ethoscope/prototypes/rois_from_images/frames/6squares.jpg
opt/ethoscope/prototypes/test.db
opt/ethoscope/pyproject.toml
opt/ethoscope/run_tests.py
opt/ethoscope/services/
opt/ethoscope/services/clean_mysql.service
opt/ethoscope/services/ethoscope_GPIO_listener.service
opt/ethoscope/services/ethoscope_backup_mysql.service
opt/ethoscope/services/ethoscope_backup_sqlite.service
opt/ethoscope/services/ethoscope_backup_unified.service
opt/ethoscope/services/ethoscope_backup_video.service
opt/ethoscope/services/ethoscope_device.service
opt/ethoscope/services/ethoscope_listener.service
opt/ethoscope/services/ethoscope_node.service
opt/ethoscope/services/ethoscope_sensor_virtual.service
opt/ethoscope/services/ethoscope_tunnel.service
opt/ethoscope/services/ethoscope_update.service
opt/ethoscope/services/ethoscope_update_node.service
opt/ethoscope/services/ethoscope_virtuascope.service
opt/ethoscope/src/
opt/ethoscope/src/ethoscope/
opt/ethoscope/src/ethoscope/.coveragerc
opt/ethoscope/src/ethoscope/Makefile
opt/ethoscope/src/ethoscope/README
opt/ethoscope/src/ethoscope/README.md
opt/ethoscope/src/ethoscope/__init__.py
opt/ethoscope/src/ethoscope/docs/
opt/ethoscope/src/ethoscope/docs/.gitignore
opt/ethoscope/src/ethoscope/docs/Makefile
opt/ethoscope/src/ethoscope/docs/conf.py
opt/ethoscope/src/ethoscope/docs/ethoscope.core.rst
opt/ethoscope/src/ethoscope/docs/ethoscope.drawers.rst
opt/ethoscope/src/ethoscope/docs/ethoscope.hardware.input.rst
opt/ethoscope/src/ethoscope/docs/ethoscope.hardware.interfaces.rst
opt/ethoscope/src/ethoscope/docs/ethoscope.hardware.rst
opt/ethoscope/src/ethoscope/docs/ethoscope.roi_builders.rst
opt/ethoscope/src/ethoscope/docs/ethoscope.rst
opt/ethoscope/src/ethoscope/docs/ethoscope.stimulators.rst
opt/ethoscope/src/ethoscope/docs/ethoscope.trackers.rst
opt/ethoscope/src/ethoscope/docs/ethoscope.utils.rst
opt/ethoscope/src/ethoscope/docs/ethoscope.web_utils.rst
opt/ethoscope/src/ethoscope/docs/img/
opt/ethoscope/src/ethoscope/docs/img/device.jpg
opt/ethoscope/src/ethoscope/docs/img/platform.svg
opt/ethoscope/src/ethoscope/docs/img/roi_builder_targets.svg
opt/ethoscope/src/ethoscope/docs/img/uml_diagram.svg
opt/ethoscope/src/ethoscope/docs/img/uml_diagram.xmi
opt/ethoscope/src/ethoscope/docs/index.rst
opt/ethoscope/src/ethoscope/docs/index.rst-bak
opt/ethoscope/src/ethoscope/ethoscope/
opt/ethoscope/src/ethoscope/ethoscope/__init__.py
opt/ethoscope/src/ethoscope/ethoscope/control/
opt/ethoscope/src/ethoscope/ethoscope/control/__init__.py
opt/ethoscope/src/ethoscope/ethoscope/control/record.py
opt/ethoscope/src/ethoscope/ethoscope/control/tracking.py
opt/ethoscope/src/ethoscope/ethoscope/core/
opt/ethoscope/src/ethoscope/ethoscope/core/__init__.py
opt/ethoscope/src/ethoscope/ethoscope/core/data_point.py
opt/ethoscope/src/ethoscope/ethoscope/core/monitor.py
opt/ethoscope/src/ethoscope/ethoscope/core/roi.py
opt/ethoscope/src/ethoscope/ethoscope/core/tracking_unit.py
opt/ethoscope/src/ethoscope/ethoscope/core/variables.py
opt/ethoscope/src/ethoscope/ethoscope/drawers/
opt/ethoscope/src/ethoscope/ethoscope/drawers/__init__.py
opt/ethoscope/src/ethoscope/ethoscope/drawers/drawers.py
opt/ethoscope/src/ethoscope/ethoscope/hardware/
opt/ethoscope/src/ethoscope/ethoscope/hardware/__init__.py
opt/ethoscope/src/ethoscope/ethoscope/hardware/input/
opt/ethoscope/src/ethoscope/ethoscope/hardware/input/__init__.py
opt/ethoscope/src/ethoscope/ethoscope/hardware/input/cameras.py
opt/ethoscope/src/ethoscope/ethoscope/hardware/interfaces/
opt/ethoscope/src/ethoscope/ethoscope/hardware/interfaces/GPIO.py
opt/ethoscope/src/ethoscope/ethoscope/hardware/interfaces/__init__.py
opt/ethoscope/src/ethoscope/ethoscope/hardware/interfaces/interfaces.py
opt/ethoscope/src/ethoscope/ethoscope/hardware/interfaces/lynx_motion.py
opt/ethoscope/src/ethoscope/ethoscope/hardware/interfaces/odour_delivery_device.py
opt/ethoscope/src/ethoscope/ethoscope/hardware/interfaces/optomotor.py
opt/ethoscope/src/ethoscope/ethoscope/hardware/interfaces/serial_wrapper.py
opt/ethoscope/src/ethoscope/ethoscope/hardware/interfaces/sleep_depriver_interface.py
opt/ethoscope/src/ethoscope/ethoscope/io/
opt/ethoscope/src/ethoscope/ethoscope/io/__init__.py
opt/ethoscope/src/ethoscope/ethoscope/io/base.py
opt/ethoscope/src/ethoscope/ethoscope/io/cache.py
opt/ethoscope/src/ethoscope/ethoscope/io/helpers.py
opt/ethoscope/src/ethoscope/ethoscope/io/mysql.py
opt/ethoscope/src/ethoscope/ethoscope/io/sqlite.py
opt/ethoscope/src/ethoscope/ethoscope/roi_builders/
opt/ethoscope/src/ethoscope/ethoscope/roi_builders/__init__.py
opt/ethoscope/src/ethoscope/ethoscope/roi_builders/arena_mask_roi_builder.py
opt/ethoscope/src/ethoscope/ethoscope/roi_builders/file_based_roi_builder.py
opt/ethoscope/src/ethoscope/ethoscope/roi_builders/img_roi_builder.py
opt/ethoscope/src/ethoscope/ethoscope/roi_builders/roi_builders.py
opt/ethoscope/src/ethoscope/ethoscope/roi_builders/roi_templates/
opt/ethoscope/src/ethoscope/ethoscope/roi_builders/roi_templates/builtin/
opt/ethoscope/src/ethoscope/ethoscope/roi_builders/roi_templates/builtin/HD_12_tubes.json
opt/ethoscope/src/ethoscope/ethoscope/roi_builders/roi_templates/builtin/HD_Mating_Arena_6_ROIS.json
opt/ethoscope/src/ethoscope/ethoscope/roi_builders/roi_templates/builtin/default_full_image.json
opt/ethoscope/src/ethoscope/ethoscope/roi_builders/roi_templates/builtin/electric_shock_5tube.json
opt/ethoscope/src/ethoscope/ethoscope/roi_builders/roi_templates/builtin/olfaction_assay_10tube.json
opt/ethoscope/src/ethoscope/ethoscope/roi_builders/roi_templates/builtin/sleep_monitor_20tube.json
opt/ethoscope/src/ethoscope/ethoscope/roi_builders/roi_templates/builtin/sleep_monitor_30tube.json
opt/ethoscope/src/ethoscope/ethoscope/roi_builders/target_detection_diagnostics.py
opt/ethoscope/src/ethoscope/ethoscope/roi_builders/target_roi_builder.py
opt/ethoscope/src/ethoscope/ethoscope/roi_builders/template.py
opt/ethoscope/src/ethoscope/ethoscope/stimulators/
opt/ethoscope/src/ethoscope/ethoscope/stimulators/__init__.py
opt/ethoscope/src/ethoscope/ethoscope/stimulators/multi_stimulator.py
opt/ethoscope/src/ethoscope/ethoscope/stimulators/odour_stimulators.py
opt/ethoscope/src/ethoscope/ethoscope/stimulators/optomotor_stimulators.py
opt/ethoscope/src/ethoscope/ethoscope/stimulators/sleep_depriver_stimulators.py
opt/ethoscope/src/ethoscope/ethoscope/stimulators/sleep_restriction_stimulators.py
opt/ethoscope/src/ethoscope/ethoscope/stimulators/stimulators.py
opt/ethoscope/src/ethoscope/ethoscope/tests/
opt/ethoscope/src/ethoscope/ethoscope/tests/README.md
opt/ethoscope/src/ethoscope/ethoscope/tests/__init__.py
opt/ethoscope/src/ethoscope/ethoscope/tests/conftest.py
opt/ethoscope/src/ethoscope/ethoscope/tests/fixtures/
opt/ethoscope/src/ethoscope/ethoscope/tests/fixtures/__init__.py
opt/ethoscope/src/ethoscope/ethoscope/tests/fixtures/mock_hardware.py
opt/ethoscope/src/ethoscope/ethoscope/tests/integration_api_tests/
opt/ethoscope/src/ethoscope/ethoscope/tests/integration_api_tests/_constants.py
opt/ethoscope/src/ethoscope/ethoscope/tests/integration_api_tests/old/
opt/ethoscope/src/ethoscope/ethoscope/tests/integration_api_tests/old/mock_lynx_motion.py
opt/ethoscope/src/ethoscope/ethoscope/tests/integration_api_tests/old/mock_odour_sd_simulator.py
opt/ethoscope/src/ethoscope/ethoscope/tests/integration_api_tests/old/mock_sd_simulator.py
opt/ethoscope/src/ethoscope/ethoscope/tests/integration_api_tests/old/mock_sd_simulator_scheduled.py
opt/ethoscope/src/ethoscope/ethoscope/tests/integration_api_tests/old/utils.py
opt/ethoscope/src/ethoscope/ethoscope/tests/integration_api_tests/test_sleep_restriction_demo.py
opt/ethoscope/src/ethoscope/ethoscope/tests/integration_api_tests/test_whole_api.py
opt/ethoscope/src/ethoscope/ethoscope/tests/integration_server_tests/
opt/ethoscope/src/ethoscope/ethoscope/tests/integration_server_tests/check_field.py
opt/ethoscope/src/ethoscope/ethoscope/tests/integration_server_tests/test_config.sh
opt/ethoscope/src/ethoscope/ethoscope/tests/integration_server_tests/test_dummy_picam.json
opt/ethoscope/src/ethoscope/ethoscope/tests/integration_server_tests/test_experimental_info.json
opt/ethoscope/src/ethoscope/ethoscope/tests/integration_server_tests/test_experimental_sleep_dep.json
opt/ethoscope/src/ethoscope/ethoscope/tests/integration_server_tests/test_fake_sleep_dep.json
opt/ethoscope/src/ethoscope/ethoscope/tests/integration_server_tests/test_fake_sleep_dep_static.json
opt/ethoscope/src/ethoscope/ethoscope/tests/integration_server_tests/test_generic_config.json
opt/ethoscope/src/ethoscope/ethoscope/tests/integration_server_tests/test_opto_config.json
opt/ethoscope/src/ethoscope/ethoscope/tests/integration_server_tests/test_post.sh
opt/ethoscope/src/ethoscope/ethoscope/tests/integration_server_tests/test_sleep_monit_arena.json
opt/ethoscope/src/ethoscope/ethoscope/tests/integration_server_tests/test_video_recording.json
opt/ethoscope/src/ethoscope/ethoscope/tests/run_all_tests.sh
opt/ethoscope/src/ethoscope/ethoscope/tests/run_append_tests.sh
opt/ethoscope/src/ethoscope/ethoscope/tests/static_files/
opt/ethoscope/src/ethoscope/ethoscope/tests/static_files/.gitignore
opt/ethoscope/src/ethoscope/ethoscope/tests/static_files/img/
opt/ethoscope/src/ethoscope/ethoscope/tests/static_files/img/bright_targets.png
opt/ethoscope/src/ethoscope/ethoscope/tests/static_files/img/dark_targets.png
opt/ethoscope/src/ethoscope/ethoscope/tests/static_files/videos/
opt/ethoscope/src/ethoscope/ethoscope/tests/static_files/videos/arena_10x2_sortTubes.mp4
opt/ethoscope/src/ethoscope/ethoscope/tests/test_roi_templates.py
opt/ethoscope/src/ethoscope/ethoscope/tests/unit/
opt/ethoscope/src/ethoscope/ethoscope/tests/unit/README_camera_timeout.md
opt/ethoscope/src/ethoscope/ethoscope/tests/unit/test_adaptive_bg_tracker.py
opt/ethoscope/src/ethoscope/ethoscope/tests/unit/test_append_functionality.py
opt/ethoscope/src/ethoscope/ethoscope/tests/unit/test_camera_timeout.py
opt/ethoscope/src/ethoscope/ethoscope/tests/unit/test_database_cache.py
opt/ethoscope/src/ethoscope/ethoscope/tests/unit/test_dbappender.py
opt/ethoscope/src/ethoscope/ethoscope/tests/unit/test_monitor.py
opt/ethoscope/src/ethoscope/ethoscope/tests/unit/test_sleep_restriction.py
opt/ethoscope/src/ethoscope/ethoscope/tests/unit/test_trackers.py
opt/ethoscope/src/ethoscope/ethoscope/tests/unittests/
opt/ethoscope/src/ethoscope/ethoscope/tests/unittests/test_multi_stimulator.py
opt/ethoscope/src/ethoscope/ethoscope/tests/unittests/test_scheduler_timing.py
opt/ethoscope/src/ethoscope/ethoscope/tests/unittests/test_target_roi_builder.py
opt/ethoscope/src/ethoscope/ethoscope/tests/unittests/test_utils.py
opt/ethoscope/src/ethoscope/ethoscope/trackers/
opt/ethoscope/src/ethoscope/ethoscope/trackers/__init__.py
opt/ethoscope/src/ethoscope/ethoscope/trackers/adaptive_bg_tracker.py
opt/ethoscope/src/ethoscope/ethoscope/trackers/multi_fly_tracker.py
opt/ethoscope/src/ethoscope/ethoscope/trackers/single_roi_tracker.py
opt/ethoscope/src/ethoscope/ethoscope/trackers/trackers.py
opt/ethoscope/src/ethoscope/ethoscope/utils/
opt/ethoscope/src/ethoscope/ethoscope/utils/__init__.py
opt/ethoscope/src/ethoscope/ethoscope/utils/debug.py
opt/ethoscope/src/ethoscope/ethoscope/utils/description.py
opt/ethoscope/src/ethoscope/ethoscope/utils/img_proc.py
opt/ethoscope/src/ethoscope/ethoscope/utils/pi.py
opt/ethoscope/src/ethoscope/ethoscope/utils/roi_template_manager.py
opt/ethoscope/src/ethoscope/ethoscope/utils/rpi_bad_power.py
opt/ethoscope/src/ethoscope/ethoscope/utils/scheduler.py
opt/ethoscope/src/ethoscope/ethoscope/utils/video.py
opt/ethoscope/src/ethoscope/pyproject.toml
opt/ethoscope/src/ethoscope/scripts/
opt/ethoscope/src/ethoscope/scripts/__init__.py
opt/ethoscope/src/ethoscope/scripts/device_listener.py
opt/ethoscope/src/ethoscope/scripts/device_server.py
opt/ethoscope/src/ethoscope/scripts/ethoclient.py
opt/ethoscope/src/ethoscope/setup.py
opt/ethoscope/src/node/
opt/ethoscope/src/node/.coveragerc
opt/ethoscope/src/node/Makefile
opt/ethoscope/src/node/README.md
opt/ethoscope/src/node/RSYNC_BACKUP_README.md
opt/ethoscope/src/node/TESTING_SUMMARY.md
opt/ethoscope/src/node/ethoscope_node/
opt/ethoscope/src/node/ethoscope_node/__init__.py
opt/ethoscope/src/node/ethoscope_node/api/
opt/ethoscope/src/node/ethoscope_node/api/__init__.py
opt/ethoscope/src/node/ethoscope_node/api/auth_api.py
opt/ethoscope/src/node/ethoscope_node/api/backup_api.py
opt/ethoscope/src/node/ethoscope_node/api/base.py
opt/ethoscope/src/node/ethoscope_node/api/database_api.py
opt/ethoscope/src/node/ethoscope_node/api/device_api.py
opt/ethoscope/src/node/ethoscope_node/api/file_api.py
opt/ethoscope/src/node/ethoscope_node/api/node_api.py
opt/ethoscope/src/node/ethoscope_node/api/roi_template_api.py
opt/ethoscope/src/node/ethoscope_node/api/sensor_api.py
opt/ethoscope/src/node/ethoscope_node/api/setup_api.py
opt/ethoscope/src/node/ethoscope_node/api/tunnel_utils.py
opt/ethoscope/src/node/ethoscope_node/auth/
opt/ethoscope/src/node/ethoscope_node/auth/__init__.py
opt/ethoscope/src/node/ethoscope_node/auth/middleware.py
opt/ethoscope/src/node/ethoscope_node/auth/session.py
opt/ethoscope/src/node/ethoscope_node/backup/
opt/ethoscope/src/node/ethoscope_node/backup/__init__.py
opt/ethoscope/src/node/ethoscope_node/backup/helpers.py
opt/ethoscope/src/node/ethoscope_node/backup/mysql.py
opt/ethoscope/src/node/ethoscope_node/notifications/
opt/ethoscope/src/node/ethoscope_node/notifications/__init__.py
opt/ethoscope/src/node/ethoscope_node/notifications/base.py
opt/ethoscope/src/node/ethoscope_node/notifications/email.py
opt/ethoscope/src/node/ethoscope_node/notifications/manager.py
opt/ethoscope/src/node/ethoscope_node/notifications/mattermost.py
opt/ethoscope/src/node/ethoscope_node/notifications/slack.py
opt/ethoscope/src/node/ethoscope_node/scanner/
opt/ethoscope/src/node/ethoscope_node/scanner/__init__.py
opt/ethoscope/src/node/ethoscope_node/scanner/base_scanner.py
opt/ethoscope/src/node/ethoscope_node/scanner/ethoscope_scanner.py
opt/ethoscope/src/node/ethoscope_node/scanner/ethoscope_streaming.py
opt/ethoscope/src/node/ethoscope_node/scanner/sensor_scanner.py
opt/ethoscope/src/node/ethoscope_node/utils/
opt/ethoscope/src/node/ethoscope_node/utils/__init__.py
opt/ethoscope/src/node/ethoscope_node/utils/configuration.py
opt/ethoscope/src/node/ethoscope_node/utils/etho_db.py
opt/ethoscope/src/node/ethoscope_node/utils/network.py
opt/ethoscope/src/node/ethoscope_node/utils/target_detection_analysis.py
opt/ethoscope/src/node/package.json
opt/ethoscope/src/node/pyproject.toml
opt/ethoscope/src/node/run_notification_tests.py
opt/ethoscope/src/node/run_tests.sh
opt/ethoscope/src/node/scripts/
opt/ethoscope/src/node/scripts/backup_tool.py
opt/ethoscope/src/node/scripts/make_index.py
opt/ethoscope/src/node/scripts/rsync_backup_tool.py
opt/ethoscope/src/node/scripts/server.py
opt/ethoscope/src/node/setup.py
opt/ethoscope/src/node/static/
opt/ethoscope/src/node/static/css/
opt/ethoscope/src/node/static/css/bootstrap.min.css
opt/ethoscope/src/node/static/css/bootstrap.min.css.backup-v3
opt/ethoscope/src/node/static/css/bootstrap.no-icons.min.css
opt/ethoscope/src/node/static/css/daterangepicker.css
opt/ethoscope/src/node/static/css/fontawesome-all.css
opt/ethoscope/src/node/static/css/main.css
opt/ethoscope/src/node/static/css/toggle_switch.css
opt/ethoscope/src/node/static/fonts/
opt/ethoscope/src/node/static/fonts/FontAwesome.otf
opt/ethoscope/src/node/static/fonts/fontawesome-webfont.eot
opt/ethoscope/src/node/static/fonts/fontawesome-webfont.svg
opt/ethoscope/src/node/static/fonts/fontawesome-webfont.ttf
opt/ethoscope/src/node/static/fonts/fontawesome-webfont.woff
opt/ethoscope/src/node/static/fonts/fontawesome-webfont.woff2
opt/ethoscope/src/node/static/fonts/glyphicons-halflings-regular.eot
opt/ethoscope/src/node/static/fonts/glyphicons-halflings-regular.svg
opt/ethoscope/src/node/static/fonts/glyphicons-halflings-regular.ttf
opt/ethoscope/src/node/static/fonts/glyphicons-halflings-regular.woff
opt/ethoscope/src/node/static/fonts/glyphicons-halflings-regular.woff2
opt/ethoscope/src/node/static/img/
opt/ethoscope/src/node/static/img/000_ethoscope_2025.png
opt/ethoscope/src/node/static/img/favicon.ico
opt/ethoscope/src/node/static/img/rotating_spin.gif
opt/ethoscope/src/node/static/index.html
opt/ethoscope/src/node/static/js/
opt/ethoscope/src/node/static/js/controllers/
opt/ethoscope/src/node/static/js/controllers/authController.js
opt/ethoscope/src/node/static/js/controllers/authService.js
opt/ethoscope/src/node/static/js/controllers/ethoscopeBackupService.js
opt/ethoscope/src/node/static/js/controllers/ethoscopeController.js
opt/ethoscope/src/node/static/js/controllers/ethoscopeDirectives.js
opt/ethoscope/src/node/static/js/controllers/ethoscopeFormService.js
opt/ethoscope/src/node/static/js/controllers/experimentsController.js
opt/ethoscope/src/node/static/js/controllers/footerController.js
opt/ethoscope/src/node/static/js/controllers/installationWizardController.js
opt/ethoscope/src/node/static/js/controllers/moreController.js
opt/ethoscope/src/node/static/js/controllers/resourcesController.js
opt/ethoscope/src/node/static/js/controllers/sensorsController.js
opt/ethoscope/src/node/static/js/controllers/usersController.js
opt/ethoscope/src/node/static/js/directives/
opt/ethoscope/src/node/static/js/directives/checkboxes.js
opt/ethoscope/src/node/static/js/directives/pagination/
opt/ethoscope/src/node/static/js/directives/pagination/dirPagination.js
opt/ethoscope/src/node/static/js/directives/pagination/dirPagination.tpl.html
opt/ethoscope/src/node/static/js/script.js
opt/ethoscope/src/node/static/js/vendor/
opt/ethoscope/src/node/static/js/vendor/angular-daterangepicker.js
opt/ethoscope/src/node/static/js/vendor/angular-messages.js
opt/ethoscope/src/node/static/js/vendor/angular-route.js
opt/ethoscope/src/node/static/js/vendor/angular-route.min.js
opt/ethoscope/src/node/static/js/vendor/angular-route.min.js.backup-1.7.8
opt/ethoscope/src/node/static/js/vendor/angular-route.min.js.map
opt/ethoscope/src/node/static/js/vendor/angular.js
opt/ethoscope/src/node/static/js/vendor/angular.js.backup-1.7.8
opt/ethoscope/src/node/static/js/vendor/angular.min.js
opt/ethoscope/src/node/static/js/vendor/angular.min.js.backup-1.7.8
opt/ethoscope/src/node/static/js/vendor/angular.min.js.map
opt/ethoscope/src/node/static/js/vendor/bootstrap.min.js
opt/ethoscope/src/node/static/js/vendor/bootstrap.min.js.backup-v3
opt/ethoscope/src/node/static/js/vendor/dataTables/
opt/ethoscope/src/node/static/js/vendor/dataTables/dataTables.bootstrap.js
opt/ethoscope/src/node/static/js/vendor/dataTables/jquery.dataTables.js
opt/ethoscope/src/node/static/js/vendor/daterangepicker.js
opt/ethoscope/src/node/static/js/vendor/jquery.min.js
opt/ethoscope/src/node/static/js/vendor/labels-in-boxes.js
opt/ethoscope/src/node/static/js/vendor/modernizr-2.6.2-respond-1.1.0.min.js
opt/ethoscope/src/node/static/js/vendor/moment.js
opt/ethoscope/src/node/static/js/vendor/plotly-latest.min.js
opt/ethoscope/src/node/static/js/vendor/spinner.js
opt/ethoscope/src/node/static/js/vendor/ui-bootstrap-tpls-1.3.3.min.js
opt/ethoscope/src/node/static/pages/
opt/ethoscope/src/node/static/pages/ethoscope.html
opt/ethoscope/src/node/static/pages/experiments.html
opt/ethoscope/src/node/static/pages/home.html
opt/ethoscope/src/node/static/pages/login.html
opt/ethoscope/src/node/static/pages/more.html
opt/ethoscope/src/node/static/pages/resources.html
opt/ethoscope/src/node/static/pages/sensors_data.html
opt/ethoscope/src/node/static/pages/users.html
opt/ethoscope/src/node/static/pages/wizard/
opt/ethoscope/src/node/static/pages/wizard/installation-wizard.html
opt/ethoscope/src/node/static/pages/wizard/modals/
opt/ethoscope/src/node/static/pages/wizard/modals/add-incubator-modal.html
opt/ethoscope/src/node/static/pages/wizard/modals/add-user-modal.html
opt/ethoscope/src/node/static/pages/wizard/modals/edit-incubator-modal.html
opt/ethoscope/src/node/static/pages/wizard/modals/edit-user-modal.html
opt/ethoscope/src/node/static/pages/wizard/steps/
opt/ethoscope/src/node/static/pages/wizard/steps/step-1-welcome.html
opt/ethoscope/src/node/static/pages/wizard/steps/step-2-basic-setup.html
opt/ethoscope/src/node/static/pages/wizard/steps/step-3-admin-user.html
opt/ethoscope/src/node/static/pages/wizard/steps/step-4-additional-users.html
opt/ethoscope/src/node/static/pages/wizard/steps/step-5-incubators.html
opt/ethoscope/src/node/static/pages/wizard/steps/step-6-virtual-sensor.html
opt/ethoscope/src/node/static/pages/wizard/steps/step-7-remote-access.html
opt/ethoscope/src/node/static/pages/wizard/steps/step-8-notifications.html
opt/ethoscope/src/node/static/pages/wizard/steps/step-9-completion.html
opt/ethoscope/src/node/static/pages/wizard/wizard.css
opt/ethoscope/src/node/static/webfonts/
opt/ethoscope/src/node/static/webfonts/fa-brands-400.eot
opt/ethoscope/src/node/static/webfonts/fa-brands-400.svg
opt/ethoscope/src/node/static/webfonts/fa-brands-400.ttf
opt/ethoscope/src/node/static/webfonts/fa-brands-400.woff
opt/ethoscope/src/node/static/webfonts/fa-brands-400.woff2
opt/ethoscope/src/node/static/webfonts/fa-regular-400.eot
opt/ethoscope/src/node/static/webfonts/fa-regular-400.svg
opt/ethoscope/src/node/static/webfonts/fa-regular-400.ttf
opt/ethoscope/src/node/static/webfonts/fa-regular-400.woff
opt/ethoscope/src/node/static/webfonts/fa-regular-400.woff2
opt/ethoscope/src/node/static/webfonts/fa-solid-900.eot
opt/ethoscope/src/node/static/webfonts/fa-solid-900.svg
opt/ethoscope/src/node/static/webfonts/fa-solid-900.ttf
opt/ethoscope/src/node/static/webfonts/fa-solid-900.woff
opt/ethoscope/src/node/static/webfonts/fa-solid-900.woff2
opt/ethoscope/src/node/test_notifications.py
opt/ethoscope/src/node/tests/
opt/ethoscope/src/node/tests/README.md
opt/ethoscope/src/node/tests/__init__.py
opt/ethoscope/src/node/tests/conftest.py
opt/ethoscope/src/node/tests/fixtures/
opt/ethoscope/src/node/tests/fixtures/__init__.py
opt/ethoscope/src/node/tests/fixtures/mock_database.py
opt/ethoscope/src/node/tests/fixtures/mock_devices.py
opt/ethoscope/src/node/tests/fixtures/notification_fixtures.py
opt/ethoscope/src/node/tests/functional/
opt/ethoscope/src/node/tests/functional/__init__.py
opt/ethoscope/src/node/tests/functional/test_frontend_auth.py
opt/ethoscope/src/node/tests/integration/
opt/ethoscope/src/node/tests/integration/__init__.py
opt/ethoscope/src/node/tests/integration/backup_system/
opt/ethoscope/src/node/tests/integration/backup_system/README.md
opt/ethoscope/src/node/tests/integration/backup_system/README_BACKUP_TESTS.md
opt/ethoscope/src/node/tests/integration/backup_system/__init__.py
opt/ethoscope/src/node/tests/integration/backup_system/run_backup_tests.py
opt/ethoscope/src/node/tests/integration/backup_system/test_backup_format.py
opt/ethoscope/src/node/tests/integration/backup_system/test_backup_integration.html
opt/ethoscope/src/node/tests/integration/backup_system/test_backup_status.py
opt/ethoscope/src/node/tests/integration/backup_system/test_primary_key_backup.py
opt/ethoscope/src/node/tests/integration/device_scanner/
opt/ethoscope/src/node/tests/integration/device_scanner/README.md
opt/ethoscope/src/node/tests/integration/device_scanner/__init__.py
opt/ethoscope/src/node/tests/integration/device_scanner/test_complete_logger_fix.py
opt/ethoscope/src/node/tests/integration/device_scanner/test_device_scanner_fix.py
opt/ethoscope/src/node/tests/integration/device_scanner/test_logger_name_fix.py
opt/ethoscope/src/node/tests/integration/notifications/
opt/ethoscope/src/node/tests/integration/notifications/__init__.py
opt/ethoscope/src/node/tests/integration/notifications/test_notification_integration.py
opt/ethoscope/src/node/tests/integration/test_auth_api_integration.py
opt/ethoscope/src/node/tests/integration/test_backup_api_integration.py
opt/ethoscope/src/node/tests/integration/test_backup_cache_performance.py
opt/ethoscope/src/node/tests/integration/test_backup_system.py
opt/ethoscope/src/node/tests/run_auth_tests.py
opt/ethoscope/src/node/tests/unit/
opt/ethoscope/src/node/tests/unit/__init__.py
opt/ethoscope/src/node/tests/unit/notifications/
opt/ethoscope/src/node/tests/unit/notifications/__init__.py
opt/ethoscope/src/node/tests/unit/notifications/test_base.py
opt/ethoscope/src/node/tests/unit/notifications/test_email.py
opt/ethoscope/src/node/tests/unit/notifications/test_manager.py
opt/ethoscope/src/node/tests/unit/notifications/test_mattermost.py
opt/ethoscope/src/node/tests/unit/notifications/test_slack.py
opt/ethoscope/src/node/tests/unit/test_auth_system.py
opt/ethoscope/src/node/tests/unit/test_auth_system_simple.py
opt/ethoscope/src/node/tests/unit/test_backup_helpers.py
opt/ethoscope/src/node/tests/unit/test_device_renaming.py
opt/ethoscope/src/node/tests/unit/test_device_scanner.py
opt/ethoscope/src/node/tests/unit/test_invalid_device_filtering.py
opt/ethoscope/src/node/tests/unit/test_network_utils.py
opt/ethoscope/src/node/tests/unit/test_ssh_configuration.py
opt/ethoscope/src/updater/
opt/ethoscope/src/updater/helpers.py
opt/ethoscope/src/updater/static/
opt/ethoscope/src/updater/static/css/
opt/ethoscope/src/updater/static/css/bootstrap.min.css
opt/ethoscope/src/updater/static/css/font-awesome.min.css
opt/ethoscope/src/updater/static/css/main.css
opt/ethoscope/src/updater/static/css/toggle_switch.css
opt/ethoscope/src/updater/static/fonts/
opt/ethoscope/src/updater/static/fonts/FontAwesome.otf
opt/ethoscope/src/updater/static/fonts/fontawesome-webfont.eot
opt/ethoscope/src/updater/static/fonts/fontawesome-webfont.svg
opt/ethoscope/src/updater/static/fonts/fontawesome-webfont.ttf
opt/ethoscope/src/updater/static/fonts/fontawesome-webfont.woff
opt/ethoscope/src/updater/static/fonts/fontawesome-webfont.woff2
opt/ethoscope/src/updater/static/fonts/glyphicons-halflings-regular.eot
opt/ethoscope/src/updater/static/fonts/glyphicons-halflings-regular.svg
opt/ethoscope/src/updater/static/fonts/glyphicons-halflings-regular.ttf
opt/ethoscope/src/updater/static/fonts/glyphicons-halflings-regular.woff
opt/ethoscope/src/updater/static/img/
opt/ethoscope/src/updater/static/img/favicon.ico
opt/ethoscope/src/updater/static/index.html
opt/ethoscope/src/updater/static/js/
opt/ethoscope/src/updater/static/js/directives/
opt/ethoscope/src/updater/static/js/directives/checkboxes.js
opt/ethoscope/src/updater/static/js/script.js
opt/ethoscope/src/updater/static/js/vendor/
opt/ethoscope/src/updater/static/js/vendor/angular-route.min.js
opt/ethoscope/src/updater/static/js/vendor/angular.min.js
opt/ethoscope/src/updater/static/js/vendor/bootstrap.min.js
opt/ethoscope/src/updater/static/js/vendor/dataTables/
opt/ethoscope/src/updater/static/js/vendor/dataTables/dataTables.bootstrap.js
opt/ethoscope/src/updater/static/js/vendor/dataTables/jquery.dataTables.js
opt/ethoscope/src/updater/static/js/vendor/jquery.min.js
opt/ethoscope/src/updater/static/js/vendor/modernizr-2.6.2-respond-1.1.0.min.js
opt/ethoscope/src/updater/static/js/vendor/spinner.js
opt/ethoscope/src/updater/update_server.py
opt/ethoscope/src/updater/updater.py
srv/
srv/git/
srv/git/ethoscope.git/
srv/git/ethoscope.git/FETCH_HEAD
srv/git/ethoscope.git/HEAD
srv/git/ethoscope.git/config
srv/git/ethoscope.git/description
srv/git/ethoscope.git/hooks/
srv/git/ethoscope.git/hooks/applypatch-msg.sample
srv/git/ethoscope.git/hooks/commit-msg.sample
srv/git/ethoscope.git/hooks/fsmonitor-watchman.sample
srv/git/ethoscope.git/hooks/post-update.sample
srv/git/ethoscope.git/hooks/pre-applypatch.sample
srv/git/ethoscope.git/hooks/pre-commit.sample
srv/git/ethoscope.git/hooks/pre-merge-commit.sample
srv/git/ethoscope.git/hooks/pre-push.sample
srv/git/ethoscope.git/hooks/pre-rebase.sample
srv/git/ethoscope.git/hooks/pre-receive.sample
srv/git/ethoscope.git/hooks/prepare-commit-msg.sample
srv/git/ethoscope.git/hooks/push-to-checkout.sample
srv/git/ethoscope.git/hooks/sendemail-validate.sample
srv/git/ethoscope.git/hooks/update.sample
srv/git/ethoscope.git/info/
srv/git/ethoscope.git/info/exclude
srv/git/ethoscope.git/objects/
srv/git/ethoscope.git/objects/info/
srv/git/ethoscope.git/objects/pack/
srv/git/ethoscope.git/objects/pack/pack-b5df2737a86ec2f150eefd7a2c3c22d4baa691b5.idx
srv/git/ethoscope.git/objects/pack/pack-b5df2737a86ec2f150eefd7a2c3c22d4baa691b5.pack
srv/git/ethoscope.git/objects/pack/pack-b5df2737a86ec2f150eefd7a2c3c22d4baa691b5.rev
srv/git/ethoscope.git/packed-refs
srv/git/ethoscope.git/refs/
srv/git/ethoscope.git/refs/heads/
srv/git/ethoscope.git/refs/remotes/
srv/git/ethoscope.git/refs/remotes/origin/
srv/git/ethoscope.git/refs/remotes/origin/dev
srv/git/ethoscope.git/refs/remotes/origin/feature/
srv/git/ethoscope.git/refs/remotes/origin/feature/external-roi-templates
srv/git/ethoscope.git/refs/remotes/origin/feature/mask_editor
srv/git/ethoscope.git/refs/remotes/origin/feature/roi_from_mask
srv/git/ethoscope.git/refs/remotes/origin/gray_rois_mask
srv/git/ethoscope.git/refs/remotes/origin/holes_tracking
srv/git/ethoscope.git/refs/remotes/origin/main
srv/git/ethoscope.git/refs/remotes/origin/qgeissmann-patch-1
srv/git/ethoscope.git/refs/remotes/origin/qgeissmann-patch-2
srv/git/ethoscope.git/refs/tags/
usr/
usr/lib/
usr/lib/systemd/
usr/lib/systemd/system/
usr/lib/systemd/system/ethoscope_backup_mysql.service
usr/lib/systemd/system/ethoscope_backup_sqlite.service
usr/lib/systemd/system/ethoscope_backup_unified.service
usr/lib/systemd/system/ethoscope_backup_video.service
usr/lib/systemd/system/ethoscope_node.service
usr/lib/systemd/system/ethoscope_sensor_virtual.service
usr/lib/systemd/system/ethoscope_tunnel.service
usr/lib/systemd/system/ethoscope_update_node.service
usr/lib/systemd/system/virtuascope.service
